Updated on 2020/05/05
1. Introduction

Learn Programming: But Which Language?

You want to learn programming and are wondering how to do it best? This is the first step; this chapter gives you some orientation which could be the right language for you. And even after that, there's plenty of help on the way to becoming a programming professional - so be sure to bookmark this guidebook if you don't want to read it all at once.

Which programming language should I learn?

Depending on who you ask, the answer will probably be completely different: some programmers view their preferred language as the only true one with a religious zeal, others learn 20 different ones and still haven't found the right one and start writing their own. And in between there is probably every shade of grey you can imagine.

First of all: there is no right or wrong way to learn programming. Many ways lead to Rome - and even if you first decide on a way that is not the right one for you, that's no problem: then you just change your way.

Software development is like a language with many dialects: the more experience you gain, the better you become at programming, no matter what language or technology you use.

That's why it doesn't matter where you start: in fact, I think it makes a lot of sense to try different technologies to get a feel for what you like best. No line of code you write is wasted time: you learn with every letter you type on your keyboard.

Learning to program is a bit like learning a language; but after you've more or less mastered one, you don't start again with other programming languages: the spelling is a bit unfamiliar, some words seem unfamiliar, but you understand almost everything you read right away.

In any case, you can't do anything wrong: no matter which language you learn, you learn above all to think logically and to solve problems with clever code. And in the end, these skills can not only be reused in other programming languages, but may even help you in life away from the computer.

Of course, it can be useful to move in the right direction, so here is a small overview of which programming languages make sense in which areas:

  • Web development: JavaScript or Python (with HTML and CSS)
  • Desktop applications: C++, Java
  • Mobile Apps: Java for Android, Swift for iOS or C++ for all platforms
  • Data Science: Python
  • Internet of Things: Python, C++, JavaScript

At this point I have to do some advertising for my favorite programming language: JavaScript actually comes from the web, but in the last few years it has evolved to cover all areas: apart from the web, where JavaScript dominates anyway, desktop or mobile apps can be created with it – with the same code for all platforms, no matter if Windows, Mac, Linux, Android, iOS and more.

If you're undecided, JavaScript is certainly a good choice: not only because it covers a wide range of possibilities: your career opportunities are absolutely top-notch, JavaScript developers are in high demand because of their versatility.

If it is completely clear to you which area you want to go into, you are of course welcome to start directly with the programming language or technology you want to work with in the end anyway. You don't have to have tried every programming language to be a good programmer.

You become a good programmer with experience, and the more you gain the better. No matter how, no matter what language, no matter what project. Your curiosity will carry you in one direction or the other early anyway, so it doesn't matter where you start, as long as you start.

How about a practical exercise?

I would definitely recommend to start as soon as possible with a project that is as simple as possible and to get a feeling for different technologies and the programming itself.

For example, you could build a calculator; you can do this quickly in all programming languages. For an overview, I have listed some tutorials for the most important languages here. Especially if you're still undecided which language to use, it makes sense to have a look around.

But don't worry, you don't have to go into detail right away; after the introduction at the end of the section 2, I will give an overview of the best places where you can actually learn programming. This list is rather a little overview of which language could be the right one for you: