How to Choose the Best Programming Language to Learn First

Written by bjornhansen | Published 2020/08/12
Tech Story Tags: learning-to-code | learn-to-code | programming-languages | programming-language | education | self-improvement | programming | hackernoon-top-story

TLDR Computer programming is a skill separate from knowing a programming language. The differences in how languages work aren’t important to beginners. Switching between languages is like a chef switching between cooking implements is more important than knowing how to use a spatula. Avoid complex languages like C++, Java, or Cobol, but start with less complicated languages like JavaScript, Python, or PHP. If you want to learn web development, choose a language meant for that purpose, like JavaScript. For mobile apps, you can narrow your search to 3–4 languages.via the TL;DR App

When I was first learning to code, I wanted to choose the right programming language. But as a beginner, I didn’t know how to evaluate which was the right one. So I turned to the internet. The internet had lots of opinions. After reading through articles with titles like “Why Python is the only language for beginners” and “If you want a job, learn JavaScript”, I had serious analysis paralysis. I just chose a popular one with a cool name: JavaScript.
Having worked in software for five years now with someone who has thirty years of experience, I’m better equipped to answer this question.

Which programming language should you learn first?

The answer is: just pick one and start learning! 📚

What is programming, anyway?

Computer programming is a skill separate from knowing a programming language. As you learn to program, you’ll start to understand the abstract ideas and habits that make someone a good programmer. The differences in how languages work aren’t important to beginners. They’re just details. When learning, you want to focus on the big picture. Which language you use has little effect on your learning journey.
When you become skilled at programming (and you can!), switching between languages is like a chef switching between cooking implements. Understanding how to cook is way more important than understanding how to use a spatula. It will take at least a year to get good at programming, regardless of language. After that, it takes mere weeks to switch between languages.

The Difference Between Programming Languages Visualized

Below are code samples of the same short program written in three different languages.
// JavaScript
for (i = 10; i >= 1; i - ) {
   console.log(i);
}
// Python
for i in range(10,0,-1):
   print i
// PHP
<? for ($i = 10; $i >= 1; $i--) {
   print ("$i\n");
} ?>
Each example is equally confusing to a beginner, so nitpicking is counterproductive. The differences are only in syntax, the rules about which keyboard characters correspond to functions of the programming language. In each case, the code could be translated to English as “countdown from 10 to 1 and display it on the screen”.

How to Choose Your First Programming Language

Here are three criteria to make your decision more informed.
  1. Determine your goal. If you want to learn web development, choose a language meant for that purpose, like JavaScript. For mobile apps, you can narrow your search to 3–4 languages. A bit of googling in your area of interest will quickly tell you which languages are common.
  2. Avoid complex languages. Learning C++, Java, or Cobol may earn you points with computer science professors, but I don’t recommend it unless it’s the only way to accomplish your goal. Instead, start with less complicated languages like JavaScript, Python, or PHP. Low-level languages like Assembly are even more challenging to use, avoid them at all costs.
  3. Choose a popular language. You want to be able to get help when you need it. Resources like online education platforms, courses, and forums are there to help you. Popular languages have more of this content. Stackoverflow’s data about the most-used languages in 2019 gives you a good idea of which languages are popular right now.

Parting Advice

If you’re multi-tabbing pages about programming languages, my advice is to just pick one. The sooner you do, the sooner you can get down to the business of actually learning how to code.
Languages are ephemeral, but good programmers are forever.
That’s the skill you’ll need to accomplish your goals. That’s what people are willing to pay you for.
Lead image credit: Christina Morillo

Written by bjornhansen | Cofounder at Blackbird
Published by HackerNoon on 2020/08/12