We posted a post on top programming languages in 2017, six months ago. It’s 2018, it’s a New Year, yes it is! So we are going to do the same thing again.
Last year, we found our top programming languages based on following criteria:
- popularity – how popular the language is
- ease of learning – how much time and effort do we need to learn the language
- ease of use – how easy is it to use the language for various tasks
And we use the chart of PopularitY of Programming Language Index (PYPL) as our reference also.
Right now, we can compare the Top 5 PYPL then and now:
Rank (2017 Rank) | Language | Share (2017 Share) | Change |
---|---|---|---|
1 (1) | Java | 21.2% (22.7%) | -1.5% |
2 (2) | Python | 19.3% (15.7%) | +3.6% |
3 (3) | PHP | 8.0% (9.3%) | -1.3% |
4 (5) | Javascript | 7.9% (7.9%) | 0% |
5 (4) | C# | 7.5% (8.3%) | -0.7% |
We find that the rankings do not change a lot. And our pick from last year, Python, still stands strong and even gains 3.6% more share on this year. Everything looks good for Python and Python should rule the land of programming in the near future! If you don’t learn Python, your children and grandchildren will blame you for not spending time on Python!!
Reality Check
Is Python really the chosen one? From our Data Science training project we have encountered, we know there is “no free lunch” in search and optimization. We should discover our answer in different perspectives. Other than Python, there is another language standing strong without a drop in last six months — JavaScript. Nowadays, JavaScript is no longer a simply frontend scripting language, we can use it as a backend language as well, i.e. Node.js.
JavaScript is the top 4 language in the PYPL (as of Jan 2018), and it can suit our code selection criteria well also. Then, other than the developer’s perspective, let’s take a look on the US job market perspective:
Java | Python | JavaScript | |
---|---|---|---|
Jobs on Glassdoor.com | 63,832 | 49,439 | 46,473 |
Jobs on Indeed.com | 58,008 | 45,442 | 35,302 |
Java is everywhere, so if you are looking for job security, just go for Java. From the above table, Python can provide better job opportunities than JavaScript. But, if you are looking for web development career, it is another story.
The frontend framework market is dominated by ReactJS, AngularJS and Vue.js currently. You may notice from their names, they are all JavaScript based. Then how about backend framework? Like I said before, Node.js is a backend language based on JavaScript. And there is a robust Node.js web application framework, Express, which is used by high profile companies, like Twitter, IBM and Uber. So for web development, there is a full-stack JavaScript solution. That means all frontend and backend tasks can be developed using just JavaScript.
On the Python’ side, there are web application frameworks like Django and the minimalist Flask. So is there a full-stack Python web development solution? Technically, yes. Because Python can be written as client-side program run by your browser using Brython also. But you probably won’t do that, as there are plenty of easier and maturer JavaScript frontend framework choices.
Conclusion
Like last time in 2017, I still recommend Python among other top programming languages in 2018 for Data Science and general purpose projects. If you are focusing on web development, JavaScript, especially ReactJS and Node.js, should be your code to code in 2018.