In my previous post – Learn programming from zero, 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.
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 with a large number of libraries that can be used for various branches of the industry.
Python 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.
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 the start.
C# is also a general-purpose programming language that is similar to Java. It is developed by Microsoft and it is 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 – a book that has everything you need to know to start with Golang
There are many programming languages and it does not really matter which one you pick as your first one. It will be easier to switch between programming languages once you have any programming experience.
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 coding!