Is a teacher always necessary? It depends on the discipline. You'd be hard-pressed to teach yourself martial arts without a sensei, while three of the greatest guitarists who ever lived – Jimi Hendrix, Eddie Van Halen, and Stevie Ray Vaughn – were all self-taught.
You would think a seriously complex discipline like programming would also require formal training, but a new survey from Stack Overflow, which surveyed 50,000 programmers, found that very few have a lot of formal training.
On the subject of training, Stack Overflow found 69.1% of programmers were self-taught. The second-largest group – and there is a lot of overlap, so the numbers come out to well over 100% -- is on the job training, at 43.9%. A bachelor's degree in computer science was third, at 34.8%. There were other categories, such as night classes, boot camps and industry certification.
Interestingly, those with a PhD accounted for just 2.1% of the survey, but they were the best paid. Programmers with a doctorate and five years of experience earned an average of $122,219, and those with a master's degree were right behind them at an average of $118,803. The self-taught earned a slave's wage of $103,801 (yes, that was sarcasm).
This is not surprising, as people with advanced degrees are often sought out for the most in-demand job out there, a data scientist. If you can speak the arcane languages of Big Data analytics, you will never be hurting for work and you will be paid well.
Also interesting is where the emphasis is. Far and away, full-stack web developer led the pack with 28%, and back-end Web developer was second at 12.2%. Mobile apps were 8.3% and desktop apps were 6.9%, showing that while the hype is around mobile it's not that far ahead of the old desktop. And DevOps, which I hear about constantly, measured in at just 2.2%.
Mac OS X was the single most popular OS platform used by developers at 26.2%, but Windows 7, 8, and 10 combined had 51.7% share while Linux had 21.7%. With so much Web development, it's easy to see why the Mac is popular, since the development platform doesn't matter when you write in Java, PHP, or Python.
Some of the personal disclosures are interesting. Developers under the age of 30 accounted for 59% of all programmers and the median age is 27. And it's definitely a man's world, the field of programming. 92.8% of respondents were male, just 5.8% were female. Definitely need to work on that.
There's also an odd dip. The largest group of female developers was ages 20 to 24, at 7.2%. It then drops to the 35 to 39 year old group at 4.2%, then it climbs again and the age 60+ group is the second-largest, at 7.1%. So it seems like there was some good momentum 30 to 40 years ago and then it just died out 15 to 20 years back and is now recovering. The one plus side to it all is that female developers make as much as their male counterparts.