Programming languages serve as the connective tissue of applications and operating systems, and as such, they ultimately make or break the functionality of an organization's overall IT infrastructure in numerous ways. If these codes are open source, they are open to use by all developers and can be incredibly flexible in terms of what can be created with them and how they can proliferate. At the same time, various security concerns surround apps constructed with these codes due to their very openness – especially with Java, which has been the No. 1 open-source language for much of its existence.
However, there have recently been some indications that Python, the open-source code first developed 30 years ago but truly surging in popularity during the mid-to-late 2010s, may actually be on track to surpass Java in 2020 and beyond, according to TechRepublic. This development could be majorly important for those who want the versatility of new open-source code for legacy application modernization and other development purposes but are worried about the security implications of Java.
Climbing the RedMonk and TIOBE rankings
The movement of Python on the RedMonk rankings is significant because the code had been in something of a holding pattern during the final years of the 2010s – always growing in its use but never at a high enough rate to move anywhere beyond third or fourth place. (It reached the third-place spot in early 2017 and stayed there until the most recent rankings.)
Ease of use stands out as one of the key reasons behind Python's popularity – both in the most recent years of its surge among developers, and over its long history – along with its versatility and accessibility. As such, its acclaim extends beyond one organization's ranking system: On the index of programming languages maintained by software quality firm TIOBE, Python has generally been somewhere in the top five spots for much of the last several years, rising from fourth to third place year-over-year between April 2019 and 2020. (Currently, only Java and C hold the spots ahead of Python on TIOBE's index, in that order.)
The new gateway for development?
In an interview with TechRepublic, Stephen O'Grady, an analyst with RedMonk, summarized the key drivers of Python's latest popularity surge.
"Python isn't necessarily the best language in a given area – say, data science – but it's good at a lot of things," O'Grady said to the news provider. "Combine that with a syntax that's easy to learn, and it's not hard to understand why the language is growing."
Kelly Fitzpatrick, one of O'Grady's fellow analysts, expressed similar sentiments: "If Python is where a critical mass of early-career programmers are comfortable, that will shape how they look for other types of learning resources, how they interact with public projects, the types of questions they are asking in forums, [et cetera]."
Java was once the first code learned by engineers and developers, and its own relative ease of use is what helped drive popularity during its heyday in the 2000s. But the fact that Python is even easier for novices to use while serving many of the same purposes at about the same level of efficacy makes the slow but steady encroachment on Java all but inevitable.
The security factor
Proponents of Java have argued – both recently and in the past – that the reason for the open-source language's plethora of vulnerabilities is its near-ubiquitous usage in so many types of application development. UpGuard noted in a Feb. 20 blog post that this did not equate to a full-on lack of security, because the majority of those common vulnerabilities and exposures were quickly patched. This is true to some extent – but on the other hand, the Equifax breach, based around a Java-based vulnerability in Apache Struts, isn't far in the past. Major Java vulnerabilities still exist in frameworks including JUnit, Jenkins, Maven, Tomcat and Spring.