“What programming languages should I learn” is one of the most popular questions these days. It’s complicated. There are so many languages to choose from these days.
Whenever you have too many choices it is harder to actually decide to learn one language. You might know the famous “Jam study” by psycho-economist Sheena Iyengar, who found that shoppers who were confronted with 24 different jams where very unlikely to buy one. (The sweet spot for jams, no pun intended, is a choice of six different jams).
We love options and alternatives, but more choices make it harder to decide. That is true for web development, too. That’s why I want to break it down for you and make it very easy.
It’s still up to you which programming languages to try, but you will have a pretty good overview to start from.
Ready?
The new year motivated us to think about learning a new programming language. Inspired by Alexander Falks’ post “Learn a new programming language this summer” we are opening the learning season 2017: “What programming languages should I learn in 2017?”
GitHub, StackOverflow, and our own developer survey bring some light to the most popular ones in 2017.
With more than 10,000 votes on our own survey on the most popular programming languages, you can see a clear trend towards JavaScript, Python, and Java.
If we look at Stackoverflow’s yearly developer’s study, we’ll find a similar picture of the most popular programming languages:
Similar studies from GitHub agree on that. JavaScript, Python, & Java are the most popular programming languages in 2017 measured by the number of pull requests on github.com.
We conducted our own survey & researched the most popular programming languages. We conclude with the following programming languages for 2017:
Usersnap stated in the article on the best web development trends for 2017 that the most commonly used programming language is JavaScript.
The latest version of JavaScript (ES2017) is launching in late 2017 and developers are already emotional about it.
If you want to take a deep dive, Douglas Crockford’s “JavaScript – The Good Parts” will walk you through all the peculiarities of JavaScript.
Learn JavaScript here.
No list is complete without Java. In the long run, it’s always a great choice & the stats suggest it’s not going away anytime soon.
Java is used on 15 billion (that’s not a typo) devices and over 10 million developers use Java worldwide!
Learn Java if you create Android apps, games, software and website content.
Example sites that use Java are Amazon, LinkedIn, plus eBay. Java 9 is launching in 2017. So definitely check it out when it’s ready.
Learn Java here.
Python is an object-orientated language that closely resembles the English language which makes it a great language to learn for beginners as well as seasoned professionals.
Examples sites that use Python are Instagram, YouTube, Reddit, NASA, and Usersnap (who wrote about their Python experience here) 🙂
Python 3.6 got released in December 2016 with some awesome features.
Elixir is a functional, dynamic language created for building scalable, maintainable applications.
Concurrency is one of its main benefits. It’s great for large applications that handle a lot of tasks simultaneously.
Example sites that use Elixir are Pinterest, Moz, and Bleacher Report.
You can learn Elixir here.
Rust is the most loved programming language on StackOverflow for 2016 which says a lot.
It’s a general-purpose language to create fast, secure applications which take advantage of the powerful features of modern multi-core processors.
Example sites that use Rust are Dropbox or Coursera.
Go (or GOLANG) – by Google – is going to grow in popularity in 2017.
It has an excellent standard library and it compiles fast. It’s great with concurrent tasks and programs as well.
Example sites that use Go are Netflix, YouTube, and Adobe.
TypeScript is a statically typed language that compiles to JavaScript and it’s growing fast (see Google Trends below)! The new version 2.1 includes all the new features of JavaScript with optional static types.
Additional benefits are improved checks against bugs in your code and any typos, async/await and more.
TypeScript is the preferred language for writing Angular 2 apps.
Learn TypeScript here and here.
PHP is the most popular server-side programming language in the world.
It’s generally used as the foundation of Content Management Systems for WordPress and other websites like Wikipedia and Facebook.
PHP 7.1 was released in December 2016. View the features here.
Ruby on Rails (a notable framework) is like ‘jQuery for JavaScript’. It makes it much easier to use Ruby. However, I advise you that you have a good understanding of Ruby before you utilize Rails.
Rails is a popular choice for many businesses. Some businesses are Airbnb, Groupon, Twitter, and Shopify.
Make sure you have a good understanding of JavaScript as you will need to use it when you advance with Rails.
Ruby on Rails 5.1 was released in December 2016. Please take a look at the new features here.
I recommend Michael Hartl’s Ruby on Rails Guide here.
C# (‘see-sharp’) is a widely-used programming language. It’s not only limited to Microsoft’s .NET Framework.
It’s also used for iOS/Android Apps with the technology from Xamarin and Windows applications.
Version 7.0 – released in 2017 – offers some incredible features.
To learn C# please visit the following pages here, and here.
Swift is one of the fastest growing programming languages in history!
Apple (not the one you eat) built Swift – and they have some big plans for it so it is a good idea to take note of it now.
If you’d like to become an iOS App Developer, learn Swift.
Their latest release 3.0.2 is available here. Take these Swift courses here, and here.
HTML is the layout and ‘raw shell’ of a website.
HTML5 is the latest version of HTML and it’s dynamic which means that you can create beautiful sites with less code and it does more. It’s a great ‘language’ to learn over the next 3 years. To learn more about HTML5, I’d recommend checking out the following Udemy course.
CSS styles a website. Examples of what it can do are available here. CSS3 is the latest version of CSS and it’s dynamic as well. HTML5 and CSS3 go together – just like salt and pepper ☺
A lot of stylings, animations, and other visualizations are created with CSS. Codepen is a great platforms to explore and try various CSS animations yourself.
See the Pen CSS astral loader by Hugo Giraudel (@HugoGiraudel) on CodePen.
If you’d like to become a full stack web developer, I’d recommend learning the basics of HTML, CSS, and Bootstrap. Once you advance and progress, learn TypeScript and 2 backend languages that you prefer.
We can clearly see from the conducted developer surveys that certain programming languages – such as JavaScript, Python, and Java – are more popular than others. Though, you should keep in mind that the quality of your skills always beats the quantity of programming languages are you are familiar with.
Even if you know all the programming languages in the world, it does not mean that you can create bug-free applications and websites. A solid programming workflow, combined with great tools – such as Usersnap – help you report and fix bugs on the fly.
Thanks to various online learning platforms, learning new programming languages is easy nowadays.
About the author:
Kyle Prinsloo runs studywebdevelopment.com. He helps web developers advance their careers & grow their freelancing business.
I know, I talked about the best programming languages for 2017. Last but not least, I wanted to give you a heads-up on Usersnap, which is a great bug tracking- & testing tool for development teams, used by startups, as well as companies like Facebook and Microsoft. Screenshots, screen recordings, and customer feedback all in one spot. Not bad eh?
Improve your websites and web apps today with a free Usersnap trial.
Picture this: You’re in the middle of a hectic workday, balancing strategic decisions with daily…
Ever wish customer feedback came with subtitles? With the right feedback analytics tools, you can…
Survey design is the backbone of effective data collection, enabling businesses, product managers and researchers…
Wondering how to master Jira’s vast capabilities for strategic project/product success? Epics are the key…
In this article, we walk you through the ultimate in-app feedback how to strategy, including…
PMs, have you ever struggled with creating complex surveys for User Acceptance Testing (UAT) or…