Time and time again, the question of “what programming language should I learn?” seems to surface in various internet locales. There are a lot of ways to answer this question, depending on factors like existing skill set, desired end result, and personal preference.
Here’s another approach to consider–one that looks at career utility as opposed to didactic value: which programming languages currently have the most attractive supply and demand ratio in the job marketplace? That is, which languages are associated with the most open jobs and the fewest candidates to fill them?
To get at this answer, we looked at a couple of data sources, both of which are Twitter-based.
First, we used PeopleBrowsr to analyze 4,956 Twitter mentions from Ron Evans’ #code2011 initiative, which asked people to tweet which languages they used last year. Then, we compared these results to two months’ worth of data from Robin Warren’s Jobs Tractor, a web app that crawls Twitter for developer job listings and parses the results by various parameters including skill sets needed. This dataset included 5,794 tweeted job postings from late 2011, when Robin first launched the project.
Both the #code2011 tweets and the JobsTractor job listings could, and often do, contain more than one language. Naturally, most programmers reported that they used more than one skill set last year. Similarly, employers frequently look for candidates with proficiencies in more than one area–e.g. a Python developer who is familiar with SQL.
If we were to reduce the results to one instruction, it might look something like this:
But that wouldn’t be any fun! And, of course, it wouldn’t take into account the points made by Ron and others about the versatility of other languages like Java.
Here’s the survey of results in more depth:
And here’s a chart that shows a simple ratio of job postings mentioning each language to programmers mentioning that language:
This data is obviously to be taken as a survey, not the gospel. But it’s food for thought. A few observations to consider:
-If the goal is to be employable and you can choose between Ruby and PHP, PHP appears to have a better openings:potential applicants ratio.
-SQL’s ratio is attractive as well, but according to Robin of JobsTractor and Ron of #code2011, that could be because SQL is often specified alongside other languages as a “nice to have” skillset.
-But what about Ruby? You guys just
posted that Ruby was the best thing to learn! Robin suggested that although a lot of new products are built using Ruby/Rails, Java and PHP are still prevalent among previously built code bases. Ron echoed that Ruby can be a great first language to learn–in fact, on Christmas 2011 he launched the 1.0 version of KidsRuby to, well, teach kids Ruby–but that it may seem more well-represented among those involved with startups due to its popularity with those building minimum viable products.
-It’s interesting to take into account how selection bias plays into these results. For example, Ron brought up a question: are large corporations underrepresented here because they don’t use social media to recruit as much, or because their employees may not be as likely to be avid users of social media?
Now, to you: do these results match up with what the hiring managers and developers out there are seeing? Anything surprising?