In my “Intro to programming from zero” post, I explained basic programming concepts and I also told you that programming concepts are independent of programming languages.
Programming language is just a tool that you use ‘to tell a computer what it needs to do’.
In this post, I will list some of the popular programming languages and explain what are they used for and what you can do with them. The goal of this post is to help you pick one of the languages and start coding. This languages are in demand today and you can get a job easily if you have some experience.
Let’s start with the list.
Python is one of the most popular programming languages in the last decade.
It is a high-level general-purpose programming language. It has a large number of libraries that can be used for various branches of the industry.
It is a very easy language to learn, it uses indentation instead of curly braces and it does not need to use semicolons. Since it is easy to learn, it is often a language of choice of people that are not programmers like scientists, mechanical engineers, accountants, etc.
Used for: data science, data visualization, machine learning, task automation, web development (server-side), game development, etc.
Resources to learn from: Automate the boring stuff with Python - a great online resource to learn Python from. It has an introduction to Python and then it shows you how to solve some everyday tasks.
It also has a large number of libraries that help you easily solve various types of tasks.
Used for: frontend web development, backend web development (node.js), game development (browser games), mobile applications (react native)
Java is an object-oriented, general-purpose programming language. Java was and still is a pretty popular language mainly because of the Java virtual machine that enables to run Java code on many different types of devices. It has a syntax that is similar to C and C++ but it is not a low-level language as those two are.
Used for: web development (server-side) - good for large enterprise applications, desktop applications (Windows and Linux), mobile development (Android apps - however, Kotlin is now more popular for Android developers)
Resources to learn from: Programiz - site that explains Java from start
C# is also a general-purpose programming language that is similar to Java. It is developed by Microsoft and it is like a direct rival to Java. There is nothing much to add without going into unnecessary details.
Used for: web development (server-side), desktop applications (Windows), game development (Unity), mobile development (Xamarin)
Resources to learn from: Microsoft’s official page - it has a bunch of video tutorials and documentation
Go or Golang is compiled, fast and easy to learn open-source programming language that was developed by a team at Google. It has the ability to support concurrency in a non-blocking way which makes it scalable when you need to run multiple concurrent processes. It is a still relatively young language and that can have its disadvantages. However many people love using go for its simplicity and more and more companies are starting to use it in some of their processes.
Used for: infrastructure, web development (server-side), data science, machine learning
Resources to learn from: Golang BootCamp - book that has everything you need to know to start with Golang
In most cases - NO. Before you pick a language you can also search what languages are in demand in your area so you can get a job easily. Usually, you want to stick to one language and learn it good. Create a couple of projects with that language, read some books about it, etc. If you just learn the syntax of languages you will not end up far. As Bruce Lee said: “I am not afraid of a person who knows 10000 kicks. But I am afraid of a person who knows one kick but practices it for 10000 times.”
Related post: What is good to know as junior developer?
In this short post, I gave you some directions you should use when choosing your first programming language. Decide what you want to do and then pick one.
If you can’t decide then I would suggest you pick Python. It is the easiest one to learn on the list and you have a good chance to find a job with it.
If you are interested in the popularity of each language and what is the average salary that developers get for working with that language then you can look here at the StackOverflow 2020 survey.
What are you waiting for? Pick one language and start!
Related post: Free resources for developers