Skip to content

Comment on Ask HN: How do you decide which language/tech stack to learn?

Comments

Personally, I'd check out language popularity indexes for a very general and vague idea of what's popular in the industry (the individual spots don't matter, just the overall scene).

For example, consider the top 20 out of these:

  - https://pypl.github.io/PYPL.html
  - https://www.tiobe.com/tiobe-index/
Alternatively, look at developer surveys, like these:
  - https://survey.stackoverflow.co/2022/#section-most-popular-technologies-programming-scripting-and-markup-languages
  - https://www.jetbrains.com/lp/devecosystem-2021/#Main_programming-languages
Additionally, maybe look at which languages are popular on GitHub:
  - https://madnight.github.io/githut/#/pull_requests/2022/1
  - https://octoverse.github.com/#top-languages-over-the-years
Also, look at local/remote job boards and try to gauge which languages are the most popular for positions that you might be interested in.

After going through all of that, you should have about 10-20 languages to consider, which then becomes largely an issue of just filtering that selection down, grouping those languages and getting started with them, based on the domain that you want to work in.

For example, if you wanted to work in full stack webdev:

  - a language to use for the front end, probably JavaScript or TypeScript
  - most likely a language with managed memory but pretty performant runtimes, like Java or C#
  - maybe a language that lets you iterate on ideas a bit faster or is popular in additional domains as well, for scripts/utilities etc., like Python, Node, Ruby, Go etc.
  - probably SQL, or an alternative for interacting with databases or other data stores
  - probably a shell scripting language like Bash for the stuff outside of your application
And then just explore the most popular frameworks/libraries in each and go from there. Eventually once you have Java under your belt, then you can move on to C#, or similarly go from Java into Kotlin which is still nice, similar but also a bit more niche.

Note: the particular languages to try and use will probably also be affected by your locale, or wherever it is that you'd like to work. Those choices would also be different for wanting to work on mobile apps, or on embedded software etc.

Furthermore, picking the most popular languages won't always mean the "best" ones, typically just those that have ample documentation and tutorials, have been around for a bit and thus have shown that they'll survive for many years yet and also have proven and supported ecosystems for most use cases.

AboutSource Built by g1lg1l

Hackerly is an independent reader for Hacker News, built on the public HN API. Not affiliated with Y Combinator.