can I teach myself programming

well enough to do programming for a job?

(I am not even sure I would be good at it obv I am just having a morning flurry of desperation)

Yes. Actually being a tax lawyer there is a lot you could transfer into with that and even relatively basic software development skills. There are so many financial jobs for software developers

thanks, mugen, I appreciate this can-do answer!

what do you think would make most sense to start with? I am assuming my kindle book on Python is not fully the answer.

Yes absolutely possible although for it to be considered a ‘skill’ for the CV and given you have no working experience with it I would advise you to get a couple of certificates.

Start with something easy like Visual Basic - it’s included with every Microsoft application like word or excel.  It’s an object orientated programming language which is event driven and will give you a good grounding in the logic behind how code needs to work.

After that, the world is your mollusc, once you get the logic every other language is just a question of learning how to translate from English into ‘whatever’.  I’ve coded in quite a few languages I know virtually nothing about just using a reference manual (like you would use a dictionary when on holiday).

Well it really depends what kind of thing you want to do...

Python is easier from a syntax/memory management perspective but realistically you are not going to use it in finance unless you are also very good at statistics and so can work as a quant.

There is a nice course on coursera called 'interactive programming in python' where you make games like asteroids and stuff. Pong etc. If you like games that's a good way to start. (I like games personally).

What do you want to do?

You don’t really mean programming though do you Clergs so much as IT? As in you presumably don’t have any burning desire to write code for the sake of it. 
 

Why not look at information security type stuff rather than straight coding?  Demand is only going up and as a qualified lawyer you can pimp out the GDPR type angle as well. DPOs are fairly well paid and the job is a piece of piss (politics aside). 

As Mugen says it does depend what you want to do.  

Visual Basic is a good introduction to using variables and flow control.  And has a huge immediate benefit that you can add useful macros to your existing Excel spreadsheets.

I would also suggest that you develop a website using Wordpress.  Professional programmers may be dismissive but it is a good way to understand what is going on behind websites (although uses Drupal) and you can steadily develop an understanding of HTML, CSS, and PHP which are essential.  And have fun putting up a website for your currently underserved hobby (or fantasy).  It is really, really easy to get started.

 

 

 

 

And if you would like to start messing around with the more complex stuff behind websites just find a m7 who you know, happens to own his own co-located server cluster and like, trusts you enough to give you administrator access to an area of it.  You might even find someone on Rof like that if you look really hard!

I actually disagree that VB is a good start. Yes it is a programming language that has lots of the features of many others but it's not very popular anymore - at all.

Look at the Microsoft qualifications and it's not even part of the 'developer' qualifications. C#, javascript, HTML, CSS and SQL, however, are.

Most universities teach java for general programming and algorithmics (I studied java).

You would probably be very easily employed with even only a bit of SQL knowledge. SQL is all over financial stuff but it's more database admin/business analyst type stuff (it's interacting with databases and doing ETL).

I started with Visual Basic, as someone said.

I still use it, as my data sets aren't massive, but I'm moving the calculations and routines into R at the moment, for four reasons:

1. It's easier to maintain/ update

2. For the LOLZ. And coz I enjoy it.

3. Teaching myself R as I go

4. It's massively quicker. Like, 30 seconds vs 20 minutes (there were a lot of VBA macros...)

Next up, I hope to learn SQL

R

I think I need to know more about the work in order to answer the question of what I want to do. I feel hugely ignorant about the tech economy.

I like forensic stuff but that's probably a bit niche.

Probably but I would consider this

 

1. Programming/coding etc is currently well paid ----- yes

2. This is because 20 years ago this was a niche skillset so being at the top if the coding world now you are one of a small number of people (in relative terms) and therefore your value is high

3. Perception of this being a high value career path drives education in this area and people changing career to get into this space etc

4. Therefore number and volume of people with this skill-set - especially at a mediocre level - increases dramatically

5. Therefore value of this skillset is reduced

6. Hiring coders etc starts to become cheaper. 

 

So unless you plan to learn at a ridiculous rate - have a natural talent - and overtake people with many years headstart...I would manage your expectations about earning potential

 

 

 

The money isn’t in being a raw coding genius, and 99% of even the most successful developers aren’t great raw talents. The money is in being able to deliver a product on spec and on time as part of a team - the same thing the money’s in in  any area of engineering, or indeed law.

@Archibald - she would already have very relevant experience for programming in the financial industry/anything related to finance, where a knowledge of tax would be an advantage and some random CS grad wouldn't know.

It really depends what you'd want to do.

BTW Shooty you can write queries in R you don't need SQL. I used R quite a lot in another life, fitting linear mixed effects models for something in the renewables industry.

Gaming is famously extremely exploitative as an industry though (google 'crunch in gaming').

AI is cool as a concept but 'working in AI' is not really a thing unless you are at a research group at Microsoft or at Deep Mind or in academia. That's probably < 2000 people in the UK.

My current line manager is also a qualified accountant btw

I actually like it. Lots of people quite like it.

I have developed games before for fun and while at uni and I actually really enjoyed that. If money was no object I'd quite like to start a small indie games company. That would be a really fun job

Thanks Mugen, will look into that.

clergs: I can't describe it too much, as the walls have ears, but basically I get a data dump from our system, then first use R to cleanse it (remove some lines (files), populate some values), then look for logical errors (if field x is 3 then if field y is not 4, flag as error), then some calculations for stats and trends and that.

It's very, very basic R use, but it works really, really well for populating/ cleansing/ fixing data. for Excel, getting a spreadsheet to look at another list of values was difficult and time consuming. For R, it's really simple.

Also Tableau is good for data analysis, and pretty fun to use.

Oooh!  I have just thought of something else.

You need to be aware of the internet of things.

Try this as a starter kit

https://www.robotshop.com/eu/en/arduino-starter-kit.html?gclid=CjwKCAjw…

Lots of fun little projects.

You learn a little bit about programming and lots about how computers interface with the real world rather than just the keyboards and screens which you have enough of in the day job.

An early project is a Love-meter, so it even has practical uses!!

Question for Mugen - if there are only 2000 or so people working in AI in the UK, then what are all the people who go round claiming they're in AI (or "deep learning") actually doing? Or alternatively are there loads of people working in AI, but somewhere else?

There are more people working in the states on AI - there's more funding at the universities and more money in the companies.

What I mean is 'most' people 'doing AI work' in a general sense are just applying AI models to existing problems. That is something I (or you with a bit of training (and not much)) could do quite easily. There is actually an 'applied' part of Deep Mind where they do just that - work on applied problems in fields like The Smart Grid and medicine.

What most computer science people mean when they talk about 'sexy AI' and I suspect what you mean (stuff like starcraft beating human intelligence and new algorithms) is theoretical AI. There are very few people in the UK working at that level.

The comparison to legal stuff would probably be - a junior lawyer could apply some legislation or case law without having much insight into the reasoning behind it - but there would be a huge amount of literature and several arguments into why that legislation or piece of case law was/wasn't relevant in that instance - and they wouldn't necessarily be writing that just by applying the principles.

thanks m88

I'm interested in the application of AI / machine learning techniques to sports tactics. Specifically, by having a machine "watch" enough videos of football matches and track the actions of the players and their interaction with one another and the ball (the technology to do this "watching" and extract data from it now exists) can we develop a model for optimum play, or optimum positioning of a player in a specific position for any given position of the other players and ball. Or to predict how a given team, or an optimum team, would respond to a given pattern of play, or to work out the best response. There's some academic work being done on this. Not sure where it fits in your model.

I don't work in AI although I have some understanding of the techniques from friends/MOOCs/doing a small amount of applied AI type work.

I think though that what you're talking about would be at the cusp of The State of The Art. The closest you'd get to that would be online gambling companies offering odds on previous performance I'd imagine.

There was some good work done on this for cricket. Recognising that a high batting score may reflect poor bowling and vice versa. The maths to bootstrap rankings take this into account is straightforward. 

The tricky part is deciding what characteristics to include. And deciding how they can be defined let alone measured. For example you might think that a good strategy for playing against Arsenal is to attack down the right wing (FAOD I don’t have a clue). And appreciate that the success of that type approach depends on the competence of both attack and defense.  But how would you define success?  That’s where sporting knowledge is needed:  not just crunching numbers.

Incidentally my mate , a lecturer in statistics, did very well out of his analyses of greyhounds. 

Elffi my understanding is that he's talking about an AI that can play football from analysing a game in real time. That's state of the art and what google deepmind are attempting with starcraft 2

Doing the analysis in real time is only a question of enough sensors and smart cameras. And presumably earphones to each player ‘Oi Ronnie move two steps to your left’.   I wouldn’t have thought processing power or bandwidth would be much of a problem. 

But that still leaves the algorithms. Development of those is the challenge. Just dumping loads of data into a machine and ‘boiling the ocean’ will never be as effective as testing strong hypotheses from an expert follower of sport. That’s where Laz comes in!

Ok. 'Blink' is now working.  It seems that on the NodeMCU board that comes with the weather station kit a) LED_BUILTIN is non-standard, b) I'm not even sure its got a built-in LED (other than the one showing flash) c) digital pins have to be called D7 etc not just 7.

All useful learning.

Anyway onwards and upwards

Hmmm.  The instructions for the weather station explain how to use ESP8266Flasher for the next step.  But that only runs in Windows.

I'm using my MacBook. So apparently I have to use ESPtool instead, which is a python script. I hope I can find some step-by-step instructions for this ...

Hold my beer this might take a while