By February 4, 2021

Top Programming Languages to Learn for 2021

Today we're finally going to talk about the top programming languages for 2021.

I'm going to base this on a lot of the data that I've seen from people that I'm working with, what I've seen happening in the industry, and some of them my own personal biases here.

Transcript Of The Video

John Sonmez: Today, we're finally going to talk about the top programming languages for 2021. So, this is my opinion on what languages are the best ones for you to learn or for you to start, if you're starting your programming career for this year.

Let's get into it, and we're going to talk about the top 10 programming languages for 2021. So, the first one that I'm going to say is, it's sort of at the bottom of this list, I guess you could say, which is Rust, okay? Now, the reason why I'm going to say Rust here is because Rust has been voted as one of the most loved languages, okay, and there's a lot of opportunity I see here. I think there's a lot of opportunity, because it's not gotten so big yet, but it is a very useful language, okay, it's really good for systems programming without having to learn the hardcore C and C++ that so many programmers have had to learn in the past in order to do that kind of system programming. If you've ever done that before, it's also being used for web development now, and it's just a really nice language that sort of has some of the good stuff from C++ and C, and a lot of the bad stuff is taken out of the language, so it's a really good place to be.

And, there's some good opportunities there that I'm seeing, not as many jobs there, but if you specialize in Rust, there's not as many people doing it, it has a really vibrant community, and people love it, so it's a good language, okay?

Another language I'm going to put here that is similar, next up is going to be the programming language Go. Go is also similar, in the sense that it has a very, very vibrant community. A lot of developers really love Go. It's a really elegant language. I actually taught a course on Go, one of the first courses that existed when I was doing online courses. And, that was an extremely popular course, because it is a very popular language. When I used Go, I really enjoyed it. I felt like the language designers of Go, what they did was they really took a lot of the best parts of a lot of different programming languages and they made it into a really succinct, almost elegant, language that's a lot of fun to program in.

So, these two, Rust and Go, they're sort of… I'm approaching this from the angle of it's more fun, right? But, Go definitely has grown dramatically. There's a lot of opportunities. Companies like Stack Overflow, Uber, Google, they're obviously using Go, and so there's a lot of opportunities there. Still, not as many people know it, so because of that, it is a great opportunity for you.

All right? So, the next one I'm going to put here is actually C#. Okay, now C# has probably fallen on my list. I don't know how high had it before. C# is still a remarkable language, it's a great language, but it hasn't done a lot in the last year or so, or last couple years, I would say. It still is probably the most platform-wide language. So, if you want to program on any platform, you can use C# to do it now, and that's pretty fantastic, right? I mean, you can program in Mac, you can program on Android, on iOS, on Windows, obviously, Web, anything with C# now, because of the .net being cross-platform at this point, that runtime.

C# is one of my favorite languages of all time, because I feel like it's such an elegant language and it has its roots in the C, C++, Java, but I will say this, is that it is not as succinct as some other languages, right, there's a lot of verbosity to it compared to some of the newer, more succinct languages like Go and Rust, but it is used all across the board. Now, if you want to get into corporate development, right, a lot of companies still they're Microsoft shops, right? Enterprise development, a lot of it is done in Microsoft, knowing C# is going to be able to get you those jobs.

And, like I said, it's one of the more fun languages I think to program in. There's a lot of information about it, especially because Microsoft is putting it out. So, you have no problem learning that language. And, if you want to get a job, having C# on your resume and understand C# is certainly going to make it easy for you to do that. All right?

The next one I'm going to say here is actually Java. And I put Java still a little bit higher than C# in this case, and the reason why is because Java is still more ubiquitous, there's still more Java out there. Java and C# are almost the same thing at this point, really.

But, there's still a lot more companies using Java, especially when you look at the world, instead of just the United States. And, Java is going to be, again, very cross-platform, it's an easy to use language, it's become a lot more like C#, they've kind of traded features back and forth. And so, they're very close to the same thing, but Java is always going to be a very popular, all-around language. I don't think that's ever going to change. And, the reason why I put on this list, even though it's not so interesting and C# is not so interesting anymore compared to some of these other languages, is mostly because of just how many corporate jobs you could get in one of these languages, right? It's not cutting-edge. It's not something that a programming language that you would necessarily want to learn if you want to work on cutting-edge type of technologies and things like that.

Although, there are companies like Adobe and Amazon, obviously, that are using Java and yeah, so let's move on to the next one here. So, the next one, I'm going to say, it's sort of a battle between two languages here. You can probably guess what these last two are, okay? So, mine, number two, is going to be JavaScript, okay? Now, that could be number one. You could argue it's number one, but I'm going to say that JavaScript is number two, simply because JavaScript is everywhere, okay? Having JavaScript skills is going to be useful no matter where you're working at, because it's using the web, all right, and almost all websites are going to have some amount of JavaScript on them.

You don't need to do web development to do JavaScript, right, there's Node and there's all kinds of ways that you can use JavaScript. Obviously, every company uses JavaScript, every program uses JavaScript, but the reason why it's falling into number two is because, if you only know JavaScript, if that's your main programming language and that's it, it's not quite as useful, right? It's not quite as ubiquitous, right? Even though it's everywhere, you wouldn't hire a programmer, unless you're a complete JavaScript stack company, and there are plenty of those, there are plenty, don't get me wrong. So, you could certainly only know JavaScript and you could get… there's plenty of jobs that you could get. Okay?

But, a lot of companies, a majority of the companies where you would want to learn JavaScript, you'd want to learn that in addition to something else, you wouldn't just primarily use JavaScript. Again, like I said, there's exceptions to this.

The other reason why JavaScript doesn't get the top spot for me is because it's just not a very good language, right? And, if you're a JavaScript developer, you know this, it's not the best, it's not the best design language. If you look at the history of JavaScript, you know that it was designed in a rush. Now, some revisions have been made, improved it, right, you've got some great frameworks like React and View, and things like that, that improve it further, but the language itself is still not great, right? It is very prone to error. It's not very easy to… You have to use things. For example, like TypeScript, TypeScript actually makes JavaScript a lot better, and so that gives it a little bit more ability to be type-safe and to prevent these kind of weird errors from coming up.

And there's a lot of really weird things about JavaScript and the legacy of it. So, it's not the most clean and most fun language to me. I really just don't enjoy programming in JavaScript at all. Now, if you do, that's fine. That's great.

So, number one, I'm going to give you here is Python. Now, this is weird, because I never thought that Python would be the number one programming language I'd recommend, but I'm going to give you a couple of reasons for it. Okay, one, it is very elegant, okay, it's a very cleanly-designed language. I like the use of white space for the formatting. So, the formatting is always going to be pretty much uniform in Python. So, it's really easy to look at some Python code and understand what it does. To me, it's kind of artistic in that way. So, I liked that.

The other thing about Python is, it seems to be the biggest growing language, right, as far as, every year, I see more and more Python information out there, more and more people joining Python as their primary language. And, I see more and more tutorials and videos, and all that stuff. And so, more and more people are adopting Python, more companies are adopting Python. And, there's just a lot of information, right? If you're starting out, especially, and you want to learn a programming language, chances are that people will be teaching it in Python, because that is really become sort of the beginner language for most of the internet these days. That's just how it's kind of worked out. Java used to be that, actually, at some point, it's kind of interesting. You used to go to school and you'd learn Java, and Python has certainly taken that place.

Also, the other really awesome thing about Python is that it's used in AI and machine learning so much, and Computer Vision, all that kind of stuff, which is really where we're going in the future, right? So, if you learn Python now and you started becoming a Python developer, it's going to help you to move into that, because eventually, you're going to have to move into that, for the most part. I mean, obviously, there will always be utility programming jobs and pieces here, but I see more and more of a base skill being understanding of machine learning, right? It's kind of interesting that things have moved that direction. Whereas, at one point in history, we would have said, “Oh, object oriented programming, that's a base skill.” Right? And, that was for some time, but now really… And then, after that, I would say integrating frameworks and learning frameworks, and being able to enter out between them, that is a skill.

And now, the biggest skill is really going to probably be machine learning, artificial intelligence, right, that type of thing. So, Python, I think, is the best for you to learn. Number one for 2021. What do you think? What did I leave off the list that you think should have been on the list? And, what is your number one language? Click the subscribe button to subscribe to the channel, if you haven't already, and give me a thumbs up if you liked this video…

About the author

John Sonmez

John Sonmez is the founder of Simple Programmer and a life coach for software developers. He is the best selling author of the book "Soft Skills: The Software Developer's Life Manual."