The July 2022 issue of IEEE Spectrum is here!

Close bar

Top Programming Languages 2021

Python dominates as the de facto platform for new technologies

3 min read
Purple background  with a yellow hand shape made up of names of programming languages holds the word Python, which is large.

Learn Python. That's the biggest takeaway we can give you from its continued dominance of IEEE Spectrum's annual interactive rankings of the top programming languages. You don't have to become a dyed-in-the-wool Pythonista, but learning the language well enough to use one of the vast number of libraries written for it is probably worth your time.

Once you've got the basics of Python down, it's all about the ins and outs of particular libraries for things like embedded projects and large-scale AI systems. Frankly, depending on the domain, complexity, and/or quality of documentation, grokking one can be considerably tougher than learning Python itself.

But Python has its limits, as the continued popularity of languages better suited to solving particular problems, such as R, SQL, and Matlab, shows. C, C++, Java, and Javascript also continue to dominate at the top of the rankings, both on their own merits and because of the huge existing base of code written in them. (Indeed, significant parts of Python itself and its libraries are written in C for performance reasons.) And while many a high-level language has come and gone, there'll always be a place for those willing to write as close to the metal as possible in some flavor of assembly code.

It's precisely because one size doesn't fit all that our rankings are interactive. Want to just see languages that are used for embedded development? Those most in demand by employers? What's hot for web development? Use one of our filters or presets, or adjust the weights of the individual metrics as you like.

List of top 10 ranked programming languages, ordered from top: Python, Java, C, C++, JavaScript, C#, R, Go, HTML, and SwiftIEEE Spectrum

The default ranking is designed to reflect the interests of a typical IEEE member. The metrics are drawn from sources that we think are good proxies for gauging the popularity of languages, since it's impossible to know exactly what everyone is doing at their keyboards. Some were queried through publicly available interfaces, such as Stack Overflow or Google. Other metrics are drawn from private sources, such as the IEEE's Xplore article database, or the data on what language are in demand by employers, which comes from the IEEE Jobs Site and courtesy of CareerBuilder.

Some of the metrics reflect the peculiarities of a peculiar time: for example, with our Twitter metric, Cobol dropped from 7th place to 34th place. But this is due to the fact that Cobol was briefly a hot topic on Twitter in 2020 following the pleas from government officials who needed to update legacy systems in the face of the Covid pandemic. (Dealing with this kind of noise is the reason we combine multiple metrics.)

Other movers in the Spectrum default rankings include Microsoft's C#, which has risen from 25th place last year to 7th this year. This most likely reflects that version 9.0 of the language was released towards the end of 2020, the upcoming launch of Windows 11, and continued growing general interest in distributed systems, which C# is designed to enable.

We take a pragmatic approach to defining a programming language—HTML may not be general purpose, but we think it would be crazy to exclude it on that basis. Similarly, Arduino code could be argued as simply being written in a subset of C++, but that's not what people search for when they are trying to get their LEDs to blink. And the application domains, such as web or mobile, that you can filter on, are based on typical usage, not outliers (a few years ago we didn't class Python as an embedded language, but improvements in microcontroller processing powers and the rapid development of dialects designed for small systems have since made it a goto now for many makers). So find the ranking that suits your needs, and let us know if there are any new languages we should include in next year's edition.

The Conversation (7)
Seno Adi Putra25 Aug, 2021

HTML and arduino are not programming language. I think you have to throw them out from the list. Who say that Java is not for embedded device? I think you have to read more sources again. You have to read Java ME for embedded or Java Card or Java TV. Not only Java you have to explore, but also other pragramming features so that your survey will be credible and objective.

3 Replies
Hadi Rasouli05 Sep, 2021

Available in all divisions HTML and Arduino are not programming language

1 Reply
Anvar Narzullaev27 Aug, 2021

Can't open the interactive chart on PC, mobile no problem.

The First Million-Transistor Chip: the Engineers’ Story

Intel’s i860 RISC chip was a graphics powerhouse

21 min read
Twenty people crowd into a cubicle, the man in the center seated holding a silicon wafer full of chips

Intel's million-transistor chip development team

In San Francisco on Feb. 27, 1989, Intel Corp., Santa Clara, Calif., startled the world of high technology by presenting the first ever 1-million-transistor microprocessor, which was also the company’s first such chip to use a reduced instruction set.

The number of transistors alone marks a huge leap upward: Intel’s previous microprocessor, the 80386, has only 275,000 of them. But this long-deferred move into the booming market in reduced-instruction-set computing (RISC) was more of a shock, in part because it broke with Intel’s tradition of compatibility with earlier processors—and not least because after three well-guarded years in development the chip came as a complete surprise. Now designated the i860, it entered development in 1986 about the same time as the 80486, the yet-to-be-introduced successor to Intel’s highly regarded 80286 and 80386. The two chips have about the same area and use the same 1-micrometer CMOS technology then under development at the company’s systems production and manufacturing plant in Hillsboro, Ore. But with the i860, then code-named the N10, the company planned a revolution.

Keep Reading ↓Show less