Every year, like so many other organizations and analyst firms, IEEE Spectrum produces a list of the “top” programming languages, leveraging 11 metrics from no less than eight sources (including Twitter, Stack Overflow, and more). It’s a unique list in that it breaks down languages by use-case, allowing you to see which languages are most popular for web, mobile, and embedded development.
A word about IEEE’s methodology: The organization pulls 300 programming languages from GitHub, then turns to Google to see which of those languages draw the most search results. That generates a list of 52 languages. From there, the languages’ respective popularity is gauged using 11 metrics, including IEEE’s own job site and Xplore Digital Library, as well as data from Twitter, GitHub, and Stack Overflow.
Can you take issue with that methodology? Sure; every programming-language ranking has its quirks and vulnerabilities. For example, critics of the TIOBE Index (updated monthly) like to argue that it’s a better reflection of a language’s “buzz” than its actual usage, since it relies in part on sources such as YouTube and Wikipedia.
Nonetheless, lists like these are useful for confirming which programming languages are drawing the bulk of developers’ time and attention—which means they’ll likely remain in use for quite some time to come (at least the super-popular ones such as Python and Java; there’s not much to say about CoffeeScript’s dismal IEEE rating). If you want to become a web developer, that’s really crucial to know.
Another interesting thing to note here: Kotlin has ranked above longtime web-centric programming languages such as Perl (the infamous “Swiss Army chainsaw” of web development). Although you might think of Kotlin as primarily a language for Android app development, it’s actually quite versatile, utilized for everything from backend/server work to SDKs/libraries. Will it climb the ranks enough to seriously threaten Java? That’s a good question, but such an event is likely quite some time away, given Java’s dominant position.
And if you’re interested in learning Python (an extremely versatile language, and one at the top of a lot of lists lately), start by visiting Python.org, specifically its useful beginner’s guide to programming in it. Those with some experience can focus on writing faster code (via Functions, Lists, and more), debugging, and other more advanced skills. A variety of tutorials and books may also help, as will videos that cover everything from APIs to Python’s use in data science.