Best Programming Languages To Learn In 2022

ZTM Instructor Team
ZTM Instructor Team

Are you looking for your first programming language to learn? Or maybe you're looking for the best language to learn to skill up and open up new job opportunities?

In this guide, we break down the 14 best programming languages to learn for 2022, based on 6 core criteria:

  1. The types of projects you can build. Will you get to work on projects you’re interested in? We've made sure to include languages from each major project category that you might want to work on
  2. Job demand. Then we looked at the job market. Are there jobs out there at the moment?
  3. Average salary of job postings for candidates using X language (in USD). Will you make good money? And how much compared to other roles using other languages? Some are in higher demand than others, even though they work on the same types of projects
  4. Learning difficulty. How easy is it to learn?
  5. Developer opinion. Do other developers enjoy working with this language? Do they wish they could use something else?
  6. Future proofing. Will it be relevant in 5 years? If you take 3-12 months to learn a language, will there still be work and will it still be relevant? Does it tie into current and future project trends?

Results and Methodology

Alright so with that in mind, let’s look at how we decided on this criteria, along with the data points that we found.

Criteria 1: Development Projects You Can Build

For the development projects available for each language, we simply looked at what has been built before using these languages, and what’s being advertised now.

It’s not a definitive list of projects that you can build with each language, but at least this way you can get a rough idea of what you can build before you decide which languages to look at in more detail.

It would suck to learn a language to want to get into game design for example, and then find out that you don’t really build games with that language.

💡 Top Tip: If you have a dream job for a company, check what languages they have listed on their job postings, as you may be surprised what they ask for.

Criteria 2: Job Demand

We wanted to learn how competitive each language was, and how much demand there is to hire devs who know that language.

To make sure we compare apples to apples, we used a single job advertisement location, ZipRecruiter, to get the total jobs listed for each of the 14 programming languages on their site.

Sure, this won’t give us a fully accurate representation as not every dev job is posted here, but because it’s such a large source we felt it gives a good approximation. And it won't lead to duplicate listings from multiple sources affecting the results.

Of the 14 programming languages that we looked at, there were 2,003,293 jobs available with Python being the most popular at 387,836 postings.

Isn't that absolutely incredible?!

2022 Programming language Job Demand

This is one of the core reasons we recommend Python for beginners to learn first.

There’s huge job demand, it’s steadily rising in popularity and use cases, and it pays very well compared to other high demand languages such as Java or C++.

Python stands out even more when you realize that 66.7% of devs LOVE working with Python while 55.9% of devs would rather NOT work with Java.

Criteria 3: Average Salary per Programming Language (USD)

Sticking with ZipRecruiter, we found the min, max and average salary for each of the 14 programming languages on our recommended list.

There were some outliers with huge max earning positions, possibly because these languages are in very high demand or usually taken on by more senior dev roles, but once we average it out, the highest salary programming languages were:

  1. Solidity: $131,240
  2. R: $130,327
  3. Golang: $128,736

2022 Programming Language Salary Range

Bear in mind that each of these languages are moderately difficult to learn and quite competitive for jobs.

If you were to look at the best overlap of job demand, ease to learn, and average salary, then Python and Javascript would be great bets to learn if you don’t know these already or you’re looking for your first language to learn.

best programming languages 2022 salary range

If you already know those or simply want to dive in the deep end, then Solidity would be a good future option to learn (Web3 is all the rage these days), or Golang which has 182,274 Job postings.

Why Solidity?

Well yes it’s the highest salary range right now but it's also extremely competitive with only 92 job postings on ZipRecruiter. The reality is that less than 0.5% of developers are using the language.

It's still very early days here so you're definitely making a bet on the future prospects by learning Solidity.

But that seems like a decent bet as the demand for it is so high that crypto company growth stalled while waiting for devs to learn this language.

Alternatively, if you're super interested in Web3, you could consider learning something like Rust which is used to power Solana, the leading competitor to Ethereum. However, it's also widely used outside of Web3 as well so it might give you the best of both worlds.

Criteria 4: Learning Difficulty

Language learning difficulty is based on the collective opinion of the many years of experience from our instructors and by asking other devs in our community.

ztm community

High level languages tend to get the easy to moderate difficulty ratings, while low level languages are generally deemed more difficult, with a few exceptions.

Criteria 5: Developer Opinion: Love or Hate?

It’s one thing if the language is easy to learn and the job pays well, but if it makes you want to pull your hair out instead of using it day to day, that’s not great.

Fortunately, Stack Overflow ran a survey of ‘the most loved and hated programming languages’ based on developer responses.

loved or hated programming languages

Now of course, you need to take this data with a pinch of salt. These are still personal opinions.

Some people may be new to a language. They might be a new developers and just not like a language for some specific reason(s) unrelated to what's important to you.

Or maybe it actually does just suck 😆… there are a lot of responses after all!

People also have a tendency to bias towards "loving" the new shiny toy (i.e. new languages, frameworks, tools). Loving a tool doesn't necessarily mean it's the best one for the job.

Python somehow seems to be the exception to this rule.

So like we said, we treat this data with a pinch of salt and as a rough guide of how enjoyable it will be to work with a given language.

(We also share this rating for each language in the deep dive below so don’t worry about zooming in).

Criteria 6: Future Proofing

As for future proofing, we relied on a few things.

First we used our general industry knowledge and industry news (we do write 3 newsletters every month after all):

  • Is it being used?
  • Are large companies moving towards it?
  • Have certain platforms adopted it?
  • Is it a core part of current systems?
  • What's the outlook?
  • How is the job demand, etc.

Then we looked at the Tiobe index. tiobe index

This is a popularity tracking chart of programming languages based on their usage and volume of searches along with a few other things over time.

Finally, we looked at the pull requests for specific languages in GitHut 2.0 for 2021.

githut report

It’s not the most up-to-date information, but based on the number of requests rising or declining, we can get a rough approximation for the popularity of that language for last year, and use that to help see the coming trends.

2022 Programming Languages Deep Dive

Want to find the best programming language to learn in 2022?

Then keeping reading for a deep dive into each of the 14 languages that we recommend, along with their common projects, job demand, salary and more.

Python logo

Python

Projects: Machine learning, artificial intelligence, web development, data science, desktop GUI’s, business applications, app development, desktop apps, microcontrollers, web sites, system administration, dev ops, IOT devices, and even video games
Job Demand: 387,836 Job postings
Average Salary: $92,000-$150,000
Learning Difficulty: Easy to learn and use
Developer Opinion: 67.8% of developers surveyed love Python

Learn Python here.

Python is a fantastic starting point for beginner programmers.

It's easy to learn and has a low barrier to entry thanks to its syntax and similarity to the English language. This allows you to get a basic understanding of coding and get started, without having to worry about niggly details that you might have with other languages.

tiobe for python

As well as being extremely accessible for beginners, it’s a ‘general-purpose’ language, meaning that it’s not limited to specific project types and can be used in multiple fields such as machine learning, ai, data science and much more.

What's even crazier is that Python has been around since 1991, and yet it continues to grow in popularity!

It’s used by major companies such as Google (for their search platform and Youtube) and Meta thanks to its ability to scale well.

It’s not just these companies though. A lot of businesses use Python for their front or backend stack, making it in high demand right now and in the future.

Even many non-developers, especially growth marketing, ops and finance teams are using python to write basic scripts to help automate tasks and make their lives easier.

Recap:

  • Python is one of the easiest programming languages to learn
  • Has very easy to read code
  • It scales well
  • Python has one of the biggest libraries out of all languages. You can do pretty much anything with Python
  • Its design is Object-Oriented Programming (OOPs) driven
  • Works great for prototyping and testing ideas
  • Open-source
  • Interactive community

Javascript logo

JavaScript

Projects: Web apps, mobile apps, dev ops, IOT devices, game development, desktop app development, websites, and web servers
Job Demand: 201,761 Job postings
Average Salary: $85,000-$149,000
Learning Difficulty: Easy
Developer Opinion: 61.51% of programmers love Javascript

Learn JavaScript here.

JavaScript is another beginner friendly language, thanks to its readable syntax (i.e. it reads more like English than machine code).

JavaScript is commonly used to build frontend applications, as it’s the code that runs when almost all interactive elements that appear on a website. This is due to its interaction with both HTML and CSS.

And thanks to popular runtimes, frameworks and libraries such as Node.js, React, Angular, Vue.js, Next.js and others, JavaScript can also be used on back end server side applications making it a full-stack language that’s both incredibly versatile and popular.

tiobe for java

This means that Javascript devs have the opportunity to work on many different types of projects while also increasing their salary range.

For Example:

There are currently 50,438 Javascript + Node.js developer roles on Ziprecruiter, with an average salary of $94,000-$154,000 USD. node js developer salary 2022

A common misconception is that JavaScript isn't a serious language like some of the other languages later in this article, but that is because of a lack of understanding of the language and how to use it properly.

Unlike Python which has a very "Pythonic way" of writing code, JavaScript has less standardized good code guidelines which means that it is very easy to write bad code as a beginner.

It's a great language if you understand it well and know when to use what. You just need to make sure you learn how to use it correctly, especially if you then want to take it further and learn Node etc.

Benefits of Javascript:

  • Very easy to learn (although some would argue Python is easier)
  • Full-stack language making it very versatile with many job opportunities
  • Client-side JavaScript is very fast as it can be run quickly in the client-side browser with no compilation required
  • Reduced website server demand as its all client side
  • Works with multiple add-ons, helping to extend its functionality.
  • Great community support
  • Works well with other programming languages

Many of these reasons are actually why it is Andrei's top recommendation for beginners and what he teaches as part of his annual Learn to Code For Free & Get Hired in 5 Months Guide.

Kotlin Logo

Kotlin

Projects: Mobile apps
Job Demand: 19,949 Job postings
Average Salary: $113,000-$158,000
Learning Difficulty: Moderate
Developer Opinion: 61.55% of developers love Kotlin

A moderately difficult language to learn, Kotlin is a cross-platform language built for app design, and is Google's preferred language for android apps.

Used by companies such as Uber, Amazon, Trello and Pinterest, Kotlin works well with Java and supports other functional programming languages.

tiobe for kotlin

In a survey of language popularity by Stackoverflow, Kotlin was loved by 62.9% of users, and is often touted as the next generation for app design.

(It doesn’t hurt that Kotlin can also perform the same functions as Java, but for far less code bloat).

Although there are less jobs on the market for Kotlin, it does pay well, and there is definite opportunity here to learn and get hired.

Swift logo

Swift

Projects: Mobile iOS apps
Job Demand: 44,553 Job postings
Average Salary: $92,000-$146,000
Learning Difficulty: Easy
Developer Opinion: 63.56% of developers love using Swift

Created by Apple in 2014 as an alternative to Objective-C, Swift is specifically designed to work with Apple’s Cocoa and Cocoa Touch frameworks to build all types of iOS apps. (Anything for the iPhone, iWatch, Apple TV or iPad).

Although it's an easy to learn language thanks to its natural ‘English sounding’ syntax, you should only really start learning this language if you want to get into iOS app development.

tiobe for swift

As a huge market leader, there is definite demand for this language, and plenty of job opportunities, although it is very niche.

Finally, Swift offers extremely well optimized code and very fast performance, which allows it to scale effectively, and still works with older languages such as Objective-C.

Special Mention Re iOS and Mobile Apps

If your goal is to work with mobile apps but not be limited to them only, then you could also consider learning either:

The reason being is that if you’re skilled in these languages and frameworks, you could then build iOS or mobile apps with them as well as other projects, while only learning the one code base.

Some additional information to consider:

There are currently 21,893 React Native jobs listed on Ziprecruiter, with an average salary of $91,000-$152,000 USD.

React Native average salary 2022

(You can learn JavaScript and React here.)

Whereas there are only 247 Dart + Flutter jobs listed on Ziprecruiter, with an average salary of $70,000-$142,000 USD.

dart + flutter average salary 2022

This is yet another reason why Javascript or Python would be a fantastic first language to learn.

Ruby logo

Ruby

Projects: Web development, web servers, dev ops
Job Demand: 180,434 Job postings
Average Salary: $90,000-$137,000
Learning Difficulty: Easy
Developer Opinion: 53.24% of Developers love Ruby

Ruby is another fairly easy to learn and beginner friendly language, and is used by companies like Twitter, Hulu, Groupon, Airbnb, and GitHub.

This gentle learning curve is all thanks to its easy to read syntax, simple vocabulary and access to multiple libraries.

tiobe for ruby

Ruby is very commonly used with the framework Ruby on Rails which allows you to build web apps faster than most other languages/frameworks out there. It was a very popular way to build web applications in the early 2000s when the dawn of the social media came (i.e. Twitter) because it was so easy to get up and running.

An added bonus is that the Ruby community is incredibly friendly, wanting to emulate its creator, Yukihiro Matsumoto.

java logo

Java

Projects: E-commerce, finance, android apps, web apps, and big data
Job Demand: 267,230 Job postings
Average Salary: $85,000-$141,000
Learning Difficulty: Moderate
Developer Opinion: 47.15% of developers love Java

Used by companies such as Amazon, IBM, Ebay, Airbnb and Google on their backend, Java is a feature heavy, object-oriented programming language.

Although not as easy to learn as Python or Javascript, it’s still a high level language meaning that the syntax is easier to read than other low level languages.

Thanks to its semi complexity, it does mean that there are a lot of job opportunities for this language, with it being the 2nd highest at time of writing (267,230 postings!).

tiobe for java

Having been around for decades, it’s the language of choice for a lot of enterprise-scale organizations thanks to its stability, scalability and its longevity, although as you can see from the Tiobe index, it’s definitely trending down.

Used for a multitude of projects, it did take a hit recently in the android app development space when Google announced Kotlin as their preferred language of choice for mobile apps.

This doesn’t mean there’s no Java projects for you to work on, but if you aim to get into mobile app development you may want to look into Kotlin or JavaScript + React Native instead.

Both offer a higher avg salary than Java, but they’re also a more competitive job space with less listings. (Around 23,000 postings each compared to Java’s 300,000+).

matlab logo

Matlab

Projects: Machine learning
Job Demand: 30,837 Job postings
Average Salary: $78,000-$143,000
Learning Difficulty: Easy
Developer Opinion: Only 21.61% of developers enjoy working with Matlab

A relatively easy language to learn for complex projects, Matlab is primarily used for statistical analysis, machine learning, deep learning, signal processing and more.

Good news?

It’s even more accessible when you take into account that it allows you to convert code from other languages such as Python and C++, so if you have a background in these languages, you can get up and running fairly fast.

tiobe for matlab

Although it’s not a high demand language, it can offer high salary roles due to its niche expertise. That being said, ML is a growth market also, meaning future demand may increase further.

It has a feature rich library and high functionality, but it can be quite heavy on system demands.

csharp logo

C#

Projects: Enterprise cross-applications development, web applications, mobile developer, game development, VR, desktop apps
Job Demand: 74,057 Job postings
Average Salary: $85,000-$143,000
Learning Difficulty: Moderate to Hard
Developer Opinion: 61.96% of developers love C#

C# (pronounced c-sharp) is a general-purpose language developed by Microsoft as part of its .NET framework, and is known for its large volume of frameworks and libraries.

It’s widely used in enterprise software, game development, VR, desktop apps, mobile apps and more.

In fact, because of its connection with the Unity engine for game design, C# is probably your best language to learn if this is what you want to get into.

tiobe for c sharp

Although it's one of the more difficult languages to learn due to its complexity and low level design, C# is derived from other C languages, so if you know them then you’ll have a head start.

C# has been around for a long time and has a lot of job opportunities (30,000+ at time of writing), so it's definitely worth considering. Maybe not your first language to learn if you want to get up and running fast, but it can be something to pick up later perhaps.

c++ logo

C++

Projects: Game development, VR, robotics, software development, operating systems, advanced computations, mobile developer and graphics compilers
Job Demand: 252,871 Job postings
Average Salary: $66,000-$148,000
Learning Difficulty: Moderate to Hard
Developer Opinion: 49.24% of developers love C++

C++ is an all purpose, low level scripting language that is pretty much the backbone for most Windows software.

An enhanced version of C, it’s fantastic at running and scaling resource heavy applications such as operating systems, web browsers, cloud computing, video games, VR, robotics and desktop apps thanks to its cross platform hardware support and versatility.

Built with a very similar syntax to Java, C and C#, this programming language isn’t the easiest to learn, but easy to pick up if you have experience with any of its variations.

tiobe for C++

Thanks to its complexity and popularity among enterprise companies, the job demand and salary for C++ is very competitive.

As for its community, there are multiple compiler options and libraries available.

Is C++ a Good First Language?

Although we don’t recommend learning C++ first (unless you’re a glutton for punishment), it will give you a solid understanding of a lot of other ‘easier’ to learn languages.

golang logo

Golang

Projects: Console utilities, GUI applications, system and network programming, audio/video editing and web applications
Job Demand: 182,274 Job postings
Average Salary: $111,000-$156,000
Learning Difficulty: Moderate
Developer Opinion: 62.74% of developers love working with Go

Learn Golang (GO) here.

Just like Microsoft's C#, or Apples Swift, Golang or ‘Go’ is Google's own programming language and was designed as an alternative to Java.

Go is a low level language that compiles into machine code, allowing it to run incredibly fast. This means that it works well with heavily distributed systems, web servers, machine learning, deep learning and data pipelines.

tiobe for golang

Although it’s a backend, low level language, it’s actually surprisingly easy to learn due to its simpler syntax when compared to other similar languages.

In fact, it offers similar functionality to C++ but with an easier learning curve.

Not only that, but it also has high job demand and the 3rd highest average salary of any language in our research.

Combine that with the fact that Golang is the 2nd most loved language to work on voted for by developers, this could be a great language to learn in 2022.

r language logo

R

Projects: Data science, statistical computing, machine learning
Job Demand: 93,201 Job postings
Average Salary: $78,000-$277,000
Learning Difficulty: Easy to Moderate
Developer Opinion: 44.23% of developers like working with R

So this here was the outlier in our salary report, with 10% of the job roles for R offering $263,000-$287,000 per year, which was a $150,000+ difference to other job offers.

r programming language outlier in salary range

Why would there be such a high salary range?

It could potentially be because R is heavily used in machine learning, statistical analysis, deep learning and data analysis and there are huge demands in these fields right now, but more likely it’s a question of experience and supply of skilled users.

R is a very niche language that a lot of people learn in university or after a few years of working with Data. This means that people that know R tend to have a lot of experience and are coming from a background of programming with Python or Matlab.

tiobe for r language

R is an open source, cross-platform language that can run easily on different operating systems.

Thanks to its extensive libraries and communities, and built in machine learning algorithms, it can be a very lucrative language to learn, especially if you’re interested in data science or looking for a more senior role.

Rust language logo

Rust

Projects: Game development, web development, VR, operating systems, web3
Job Demand: 11,467 Job postings
Average Salary: $80,000-$134,000
Learning Difficulty: Easy to Moderate
Developer Opinion: 86.98% of developers LOVE working with Rust

Learn Rust here.

Here it is, the #1 rated programming language that developers love to work with, and used by companies such as Dropbox.

Although a fairly new low level language, Rust was designed by Mozilla for systems programming, with some fairly unique features. It has an emphasis on security and speed and has built in safety measures to stop programs accessing areas that could cause errors, among a few other benefits.

tiobe for rust

Although Rust is not difficult to learn, it definitely requires a little more effort than say Python or Javascript.

Because of its relatively new status, the job demand for Rust is not huge (11,467 postings), and the salary is fairly average, but it’s quickly being adopted as the language of choice for cutting edge companies, meaning you could be working on some really cool stuff if you learn Rust.

Pair that in with how nice it is to use and the fact that one of the top cryptocurrencies is built on it, and Rust could be a definite contender for you to learn this year.

solidity logo

Solidity

Projects: Web3 (dapps, decentralized finance, cryptocurrency, blockchain etc)
Job Demand: Only 92 Job postings (but we expect this to grow significantly)
Average Salary: $112,000-$166,000
Learning Difficulty: Moderate
Developer Opinion: This language wasn’t covered in the Stack Overflow report, possibly due to it’s small user base

Learn Solidity here.

Solidity is a high-level language that’s similar in design to Python or Javascript, and is used for creating smart contracts for the Ethereum blockchain platform, as well as a few of Ethereum’s competitors.

Unless you’ve been living under a rock, then you know that blockchain, cryptocurrency, and decentralized apps are HUGE right now, but shockingly, there’s not a huge amount of software developers out there with Solidity experience.

(Less than 1% on the Tiobe index, which is why we don’t have a graph for this language).

This means that although there are far less jobs available, the competition isn’t as high as it may first appear. Tie that in with the current salary offers for Solidity, plus the rise of Web3 in the future, and you’re looking at an incredibly lucrative and scalable language to learn this year.

In fact, work on blockchain stalled in 2021 due to a lack of devs with any experience of this language, and you’ll often hear stories of people with 6 months experience with the language getting Senior roles due to the fact that 6 months experience is still more than most people.

solidity average salary 2022

Solidity is probably not the best starting language to learn for a new coder unless your main goal is to get into Web3 exclusively, but even then, you might find it much easier to understand and work with if you get a grasp of Python or Javascript first.

This is mainly due to the nature of how fast new breaking changes are developed and also how to update old code. It’s not difficult but might not be something you have experienced before.

However, it's definitely a language you should look into.

sql logo

SQL

Projects: Data analysis, database management, business management, sales reports
Job Demand: 234,591 Job postings
Average Salary: $77,000-$124,000
Learning Difficulty: Easy to learn
Developer Opinion: 61.83% of developers love working with SQL

Learn SQL here.

SQL or ‘Sequel’ is not the sexiest programming language on this list, but it should definitely be on your radar if you’re interested in data science, especially due to its ease of use.

Primarily used as a tool to analyze data and find insights, it also helps with deep learning programs, allowing you to optimize and scrape large data sources.

It's not just for data science either. Full-stack web developers work with databases like Postgres and MySQL for their apps as well.

Interestingly, SQL is also becoming more popular with “Growth Marketing” teams at a lot of tech companies so this could be an interesting way to get your foot in the door with a high growth company.

tiobe for sql

Like we said, it’s not the sexiest of projects but it is in demand, with a huge section of job postings (234,591) and a fairly good average salary to back it up.

That's All 14... Now What? Choose a Language and Start Learning!

So there you have it, the 14 best programming languages for 2022. Hopefully this helps you decide which programming language (or languages... look at you go!) to learn this year.

If you’re not sure which to pick and need some advice, then here’s a few what if scenarios for you:

  • If you’re looking for something easy to learn, or if it's your first language, then we recommend: Python, Ruby or Javascript. A common opinion among developers is that these are the easiest to learn due to their syntax (i.e. how they look on the screen and how you interact with them)
  • If you want to learn fast and get a job asap: Python or Javascript as they already have a huge amount of demand (which continues to increase) and they pay well
  • If you want to build mobile apps then we recommend either: Java, C++, Kotlin (the language of choice for android and a current high earner), Javascript + React Native or Dart + Flutter
  • If you want to build iOS apps: Swift (the language of choice by Apple), or Javascript + React Native, or Dart + Flutter
  • If you want to focus on front-end development and build UI: Start with JavaScript, then take it a step further with React
  • If you want to focus on back-end web development and how programs work and scale: JavaScript + Node.js, Java, Python, or Ruby
  • If you want to work in game development: C++, C#, JavaScript
  • If you want to focus on Machine Learning or AI and build Skynet to take over the world: Matlab, Python, R or Java
  • If you want to focus on desktop applications: Java, C++, Python
  • If you want to focus on Web3: Solidity or Rust
  • And if systems programming excite you, then choose either: Go, C, Rust, or SQL

Was this helpful? Did we miss something? What do you think? Come tell us on Twitter!

By the way, if you want to learn both technical and non-technical skills that you need to have a successful career in the tech industry, then come join us as a member of Zero To Mastery.

More from Zero To Mastery

Learn to code for free, get hired in 5 months, and have fun along the way [Full Guide + PDF] preview
Popular
Learn to code for free, get hired in 5 months, and have fun along the way [Full Guide + PDF]

In 2015, I taught myself how to code and got hired in 5 months. This is the step-by-step guide I created for myself (which I update every year). Over the years, 1,000s of people have used it to learn to code for free & get hired as a web developer.

Top 7 Soft Skills For Developers & How To Learn Them preview
Top 7 Soft Skills For Developers & How To Learn Them

Your technical skills will get you the interview. But soft skills will get you the job and advance your career. These are the top 7 soft skills all developers and technical people should learn and continue to work on.

Learn Python For Free! preview
Learn Python For Free!

Looking to learn Python? Learn the exact process we recommend, in this step-by-step guide - all for free!