What programming languages should you learn?

Richard Kenneth Eng
2 min readMar 22, 2020

Many people want to know what are the most popular programming languages. They also want to know why these are the most popular.

Ranked by job postings at Indeed, here are the most popular (and their main uses):

  1. Python — data science, machine learning
  2. Java — Android, web, embedded
  3. JavaScript — front-end web development
  4. C/C++ — systems programming, HPC, real-time
  5. C# — Windows/.NET, games, cross-platform
  6. PHP — back-end web development
  7. Ruby — Rails web development

This is more or less consistent with language indices like TIOBE, PYPL, and RedMonk.

The reasons why these languages are so popular are mainly because of the following (in no particular order):

  • large user community — this means a large pool of talent to hire from, and a large number of employers; it also means copious amounts of documentation, tutorials, and user support (your questions get answered)
  • large ecosystem of libraries, frameworks, and tools — this means you will likely find what you need; there is no re-inventing the wheel
  • maturity and stability — these languages are well-tested, well-supported, and well-optimized for performance (esp. C/C++, C#, Java); they’re trusted

From the standpoint of employment, career, and professionalism, these are the languages you should always consider.

However, there are reasons to choose other programming languages:

  • some languages are on an upward trajectory and promise great opportunities, such as Dart, Go, Rust, Swift, TypeScript, etc.
  • some languages are much simpler and easier to learn, such as Smalltalk, Scheme/Racket, Forth, Go, Lua, Dart, etc.
  • some languages are much more productive than the popular ones — Smalltalk is the perfect example (it has a well-deserved reputation for this)
  • some languages promise greater safety and reliability, such as Rust and Haskell

The truth is, there are dozens of programming languages used for all sorts of purposes. It is myopic to focus only on the top half-dozen languages.

People and companies very often select the most appropriate tool for the job. The programming language won’t always be the one with the largest user community or ecosystem. In other words, it’s important to keep an open mind and be willing to learn many languages.

📝 Save this story in Journal.

👩‍💻 Wake up every Sunday morning to the week’s most noteworthy stories in Tech waiting in your inbox. Read the Noteworthy in Tech newsletter.

--

--