The new year got us motivated 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?”
It’s one of the most popular questions that gets asked. The only issue with that question is that it’s almost like someone asking what car they should buy.
The answer depends on a lot of things. Do you want new or used? What shape would you like? What specs must it have?
With web development, it follows exactly the same pattern of the car scenario.
Do you want to work for yourself or for a company? How much are you willing to invest on learning? How much time do you have available? What is your current web development knowledge? What is the purpose of you studying programming? Do you prefer backend or frontend?
Note that this is just a simplified and relevant list for 2017 and not all the programming languages out there.
I will try my best to answer this question as honestly as possible.
According to Wikipedia, it’s not that easy to measure the popularity of a programming language.
- Ruby on Rails
I’ve highlighted the logos by color to make it easier to understand.
- GREEN logos= The programming languages you should not neglect.
- ORANGE logos = The popular programming languages for 2017.
If you’d like to become a frontend web developer
(HTML & CSS are not ‘programming languages’ but I’m putting this in here for beginners)
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. Read what Steve Jobs has to say about it here.
CSS styles a website. Examples of what it can do can be found here.
CSS3 is the latest version of CSS and it’s dynamic as well. HTML5 and CSS3 go together – just like salt and pepper ☺
PS: JS can also be a backend language, but to keep it simple I have just listed it in the frontend section.
Additional benefits are improved checks against bugs in your code and any typos, async/await and more.
It’s also the preferred language for writing Angular 2 apps.
If you’d like to become a backend web developer
No list will be complete without Java. In the long run, it’s always a great choice and the stats suggest it’s not going away any time soon.
It’s used on 15 billion (that’s not a typo) devices and over 10 million developers use Java worldwide!
Learn Java if you are interested in creating Android apps, games, software and website content.
Example sites that use Java are Amazon, LinkedIn, and eBay.
Java 9 is launching in 2017 so definitely check it out when it’s ready.
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 was released in December 2016 with some awesome features.
Learn Python 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 and Coursera.
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.
Elixir is a functional, dynamic language created for building scalable and maintainable applications.
Concurrency is one of its main benefits. It’s great for large applications that handle a lot of tasks at the same time.
Example sites that use Elixir are Pinterest, Moz, and Bleacher Report.
You can learn Elixir here.
Go (or GOLANG) is created by Google and it’s only going to grow in popularity in 2017.
It has an excellent standard library and it compiles fast. It’s also great with concurrent tasks and programs as well.
Example sites that use Go are Netflix, YouTube, and Adobe.
Ruby on Rails
Rails is a popular choice because many businesses make use of it. Some businesses are Airbnb, Groupon, Twitter, and Shopify.
Ruby on Rails 5.1 was released in December 2016 so 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 will be released in 2017 with some incredible features.
Swift is one of the fastest growing programming languages in history!
It’s built by Apple (not the one you eat) and they have some big plans for it so it would be good to take note of it now.
If you’d like to become an iOS App Developer, learn Swift.
Wrapping it up.
If you’d like to become a full stack web developer, I’d recommend learning the basics like HTML, CSS and Bootstrap then once you advance and progress, learn TypeScript and 2 backend languages that you prefer.
It’s NOT about how much you KNOW, but rather what you DO with what you know.
This is the biggest programming myth:
I know more programming languages than you, so I will be more successful.
If it were true for all job interviews, the person who knows the most will ALWAYS get the job. If you live in the ‘real world,’ we both know that this is far from the truth. This fact alone is a testament to that fact that it’s not ONLY the skillset that guarantees you the job…
Let me give you an example.
Of course, this is not always true. ‘Fred’ could just APPLY his knowledge and skills better than ‘Bob’ and create far better sites that look good and achieves the client’s needs.
Just because you have knowledge of all the programming languages, it does not mean that you can create a better website than someone who knows half as much as you do.
Which programming language should you learn in 2017?
About the author:
Kyle Prinsloo runs studywebdevelopment.com where he helps web developers advance their careers and grow their freelancing business.