Top 10 programming languages of 2021: which ones you need to know?

in Programming & Dev2 years ago

Each year GitHub releases an interactive report which, apart from other things, includes a list of most popular programming languages this year. Let's take a look at this year's top 10 and see how we can categorize them into "must know's", "nice to have's" and "no need's"!

Note: I wanted to do a full top 10 in one article at first, but it's getting late and I'm lazy, so I'm splitting cutting it short. This article will cover languages in the bottom half of the list, tune in in a few days for the top 5.

 "Screenshot 2021-11-30 at 00.08.00.png"
Link to the report

Here we go...


10. Ruby

 "Screenshot 2021-11-30 at 00.21.37.png"

Ruby is a fairly cool modern programming language. Together with it's flagship framework Ruby on Rails it was reigning supreme in the web dev just recently. You might take a look at it if you're interested in a loosely typed functional programming, however, I can't reasonably recommend investing a lot of time into it, not in this day and age. Ruby has been declining in popularity over the last 10 years. It looses market share (in part) due to a number of hot new technologies coming to the same full-stack web development niche. Go and server-side JavaScript/TypeScript are one of those, as well as myriad of more exotic frameworks.

Verdict: worth a glimpse, but not worth truly mastering it

9. C

Screenshot 2021-11-30 at 00.33.18.png

C stands for Classic. Well, not really, but it should. C is on of the oldest widespread languages today. C is the language that introduced now commonplace curly-bracket syntax to the world! And, most importantly for learner, it's a relatively low-level language that doesn't hand-hold programmer too much - you must take care of memory allocation and de-allocation, carefully configure compiler options , handle pointers and so on. Even if you do not plan to work on anything hardware-related, C is worth investing your time into to truly understand how programming languages work. Fortunately, the language is relatively small (this does not mean simple! Quite the opposite).

Verdict: do yourself a favor and spend a few weeks learning C in the free time. Future you will be thankful.

8. Shell

FreeBSD_10_vi_RC_Firewall.png

Shell is not the nicest language to use. The syntax is alien, datatypes are strangely string-based the speed is, well, let's say there are better options. So why is it in the top 10?

Well that's simple. Shell is a de-facto standard scripting language for Linux and FreeBSD. Whenever you need to automate a build process or write a convenience script, shell is guaranteed to work, be portable (available even on the most minimal Linux server distribution) and integrate with OS perfectly (since, well, it's a part of said OS). You can see on the graph above is that while other languages tend to fluctuate in popularity with time, Shell is a constant, fundamental technology that stays useful and largely unchanged over the years.

Shell is unique. While you don't need to like it, you'd better respect it for what it is.

Verdict: no need to learn all the ins and outs, you're not going to write big products in it. That said, having a minimal understanding of shell scripting is a must for every developer that works with Linux.

7. C++

Screenshot 2021-11-30 at 00.54.12.png

C++ is a younger cousin of C, and one thing I can say about it is that it's horribly, ridiculously complex. Just the scope of the language is so large that you'd need years to fully grasp it's full power.

C++ is an OOP powerhouse that turns its object oriented'ness up to eleven and often forces you to utilize design patterns you never knew you needed. Whether it's a good thing or not I cannot say.

Verdict: if you're not planning to work with C++ full time, you should just skip it. You won't have time to unlock it's full potential anyway.

6. PHP

Screenshot 2021-11-30 at 01.04.25.png

Just look at that logo - do you feel its age? PHP is the tech from another era, and it shows. It was fancy in the times of the young Web, when enthusiasts were building their Personal HomePages and "applications" consisted of a few hundred lines of code. Since then other languages recognized and fixed PHP's problems, leaving it behind to fight with it's legacy.

Demand for PHP devs is still there. If you know PHP already - it's ok, you'll find a job. But new projects seldomly pick it as a core technology, so it's future is not bright.

Verdict: it's not elegant enough to recommend it as a pure learning exercise, and it's not promising enough to recommend it for a career. You're probably fine not knowing PHP.


This is it for the part one. I hope you enjoyed learning about my subjective perception of the popular programming languages.

Top 5 article comes in the same format later this week.

In the meantime, do you agree or disagree with my thoughts? Please share your opinions in the comments!