I saw the following on slashdot this morning:
https://ask.slashdot.org/story/17/06/12/0136253/ask-slashdot-will-python-become-the-dominant-programming-language
In the PYPL index, which is based on Google searches and is supposed to be forward looking, the trend is unmistakable. Python is rising fast and Java and others are declining. Combine this with the fact that Python is now the most widely taught language in the universities. In fields such as data science and machine learning, Python is already dominating. "Python where you can, C++ where you must" enterprises are following suit too, especially in data science but for everything else from web development to general purpose computing...
People who complain that you can't build large scale systems without a compiler likely over-rely on the latter and are slaves to IDEs. If you write good unit tests and enforce Test Driven Development, the compiler becomes un-necessary and gets in the way. You are forced to provide too much information to it (also known as boilerplate) and can't quickly refactor code, which is necessary for quick iterations.
The original submission ends with a question: "Is Python going to dominate in the future?" Slashdot readers should have some interesting opinions on this. So leave your own thoughts in the comments. Will Python become the dominant programming language?
Language popularity index:
https://pypl.github.io/PYPL.html. Note the constant
exponential rise of Python for over a decade now.
Link about how Python is now the most taught language at universities:
https://cacm.acm.org/blogs/blog-cacm/176450-python-is-now-the-most-popular-introductory-teaching-language-at-top-u-s-universities/fulltext
Putting my "rant hat" on temporarily, I find mixed feelings regarding this development. On the positive side, Python is far more valuable than Java ever was, Java in my opinion only ever excelled at one thing: it wasn't a truly awful choice of language for most problems, though it was almost never the best choice either, but as throughout the 2000s so few programmers were competent at any other language, you ended up with a lot of square Java pegs being hammered into round holes. Another positive is that Python is much, much more useful as a bridge between systems, mobile and web programming, and web programming is where an overwhelming majority of especially Irish graduates are nowadays trained at - for better or for worse (I being older would say for worse, but I recognise that despite my personal opinions on it, you don't
really need to be able to program in assembler to be a competent engineer. Though I still think there a strong correlation between engineers competent at writing in assembler and competency in writing fast Javascript etc).
On the negative side, unlike Java, Python is a deep, deep, deep well of complexity and power. It approaches C++ in terms of just how complex and powerful it is, but does a far better job at hiding it than C++. That means that inexperienced Python programmers
very frequently write lousy quality Python, and unlike C++ programmers,
don't realise how awful their Python code is. The proliferation of graduates who can "program" in Python is going to very significantly worsen this problem as time progresses, indeed it may begin to threaten the Python ecosystem as the C++ ecosystem eventually was by mediocre code trashing good code through uncontrollable memory corruption, thus leading to disenchantment with the whole language.
Finally the other negative is that Ireland, as a nation, is still very much a Java major and .NET minor shop, and if the tech world is shifting over to Python as the next big thing, then Ireland is going to experience a major skills gap between what employers need and what's available in the talent pool. Having been out of contract for a while, I recently out of curiosity did a search for onsite roles around Ireland and I continue to be surprised at how early 2000s the roles advertised are here. So very different from the contracts I compete for on the global market. So for now I guess it's not a problem, but markets shift quickly, and before you know it we as a nation could be really struggling (again) with a large pool of unemployable graduates whilst employers have to import heavily from abroad to fill a skills gap. Not good.
Anyway, "rant hat" off. I'd be interested in what people think.
Niall