This is a post from a previous blog of mine on the subject of the best programming language. I’ve been programming for about 8 years, and this is a question I ask myself often.

I think all programmers at some point ask themselves this question, especially starting out. For a long time, I have been looking for the best programming language; the language that I can learn and use anywhere. I’m sure you have as well. A programming language that can fulfill all of the good points a language should have. It should be performant, portable, safe, and have great tooling. Well, here’s the answer, the best language then is C++.

Now, for those of you who stayed, there really is no best language. The best language is a language that you actually create something usable in and fits the job for your project. Every single language up to this point has different trade-offs; you as the programmer need to be able to make that decision. Therefore, we should change that question slightly: “What programming language best fits this project”? Ask yourself that question and you’ll be much better off.

The Right Tool For The Project

What kind of project do you want to make? Designing a system for a hospital that monitors a patient’s vitals or creating a calculator that anyone can use online. Each example requires a different language. In the former, a strongly typed language like Java, C#, OCaml would be a better choice; in the latter, a language like Javascript or Typescript would do. Why? It is a difference in tolerance, uptime, and safety; technology that’s going to save someone’s life can’t be going down because of a typo or a runtime error, whereas the calculator can (although it shouldn’t). This is why it’s important to understand where each language shines for a problem domain.

These days I’ve stopped looking at what language looks coolest from a syntax perspective, and instead look at the features that are baked into each language. For example, Java is platform independent and requires little setup overhead, so it’s good for large enterprise companies. One of my favorite language Javascript, is great for startups and projects that want to be on the web.

Okay Cool, But What Language Should I Learn?

My point above still stands, but if you’re starting out you should pick a language that allows you to learn the core fundamentals of programming. Almost all languages have the same constructs in one form or the other. You have loops, variables, conditionals, functions, and more. So, any language will work, but I would recommend a language that does not require a lot of setups and have large communities such as JavaScript, Typescript, Java, etc. Languages like these will make it easier to learn from others, because many of the questions you might have, can be answered by online resources or other programmers.

Other Considerations

If you’re programming to get a job, look at what languages are popular in your area and learn those; in my area, insurance is popular, so learning Java or C# is the standard. If you’re doing it for a side project, follow the guidelines above and pick a language with a large community. If you want to make games, you should probably pick up a game engine, and learn it’s language.

At the end of the day, I hope this post helps you pick a language going forward for your project and needs.

You’re here to build games, not just write code.

%d bloggers like this: