So one of the questions that we often get from people (students and potential students alike) is this:
Which programming language is the “best” for me to learn?
Truth be told, this is not as easy a question to answer as most would think.
Ask 10 different programmers, and you’ll get 10 (or more) different answers. Everybody and their mother has an opinion, and they’ll be happy to share it with you.Is it any wonder that people who want to learn programming get confused and don’t know where to start?
The truth is, this question is a little too vague to answer accurately.
When you ask what the best of anything is, this is subject to why you’re asking the question.
Take this very Malaysian example:“I want to eat nasi lemak. Which is the best nasi lemak restaurant in town?”
It’s a similar situation: You ask 10 different Malaysians, they’ll give you 10 different answers. You try to Google the answer, and Google gives you a list of reviews for about 20 different nasi lemak restaurants that are nearest to your location.
But if you were to make your question more specific, people would find it easier to help you out.
“I would like to have nasi lemak for lunch this Thursday. I usually go for nasi lemak with the fluffiest rice and the spiciest sambal. Any idea which restaurant would be best for me to visit?”
Now people know what you want/need, and they can tell you that Restaurant A has really good sambal, but is not open on Thursdays, so as an alternative you could try Restaurant B instead, where the sambal is not as spicy, but it’s still quite good and the rice is fluffy and fine. And if cost is a factor, then go for Restaurant C instead, etc.
That helps you narrow down the list, and eventually determine which restaurant you’ll be visiting for lunch on Thursday.
Yeah, I may have digressed a little too far into the example, but I think you get the idea.
Basically, before anyone can tell you which programming language is the best, they first need to know why you are asking and what you are actually asking for.
So if this is a question that you would like to personally know the answer to, here are some of the best answers that might suit your situation:
Q1. What is the best programming language for my skill level (Beginner/Experienced)?
If you’re just getting started with learning programming and know next to nothing about coding or software development, then I’d suggest you get started with Python or Ruby. These are two of the easiest coding languages to learn. They’re simple, readable, and most importantly, scalable. And if you eventually plan to move on from one of these to another programming language, you’ll be able to do so easily. Think of it like learning Chinese, then moving on to learn Japanese - the two languages come from a similar base, so once you master Chinese, Japanese will come easily to you.
If you’re already an experienced programmer, then you probably already have a good grasp of the basics. Whatever language you decide to learn next depends largely on what you need. If you’re thinking about job options, then Java’s a pretty good bet. If you’re looking for something more challenging, then I’d suggest looking at C++.
No matter the skill level, I’d suggest knowing why you want to learn a certain language so that you can weigh the pros and cons and pick the one you need.
Q2. Which programming language is the most popular?
Well, in terms of popularity, Python and Ruby are among the most well-known programming languages.
Some programming languages that are up-and-coming which you may wish to take note of are:
Q3. I would like to work as a (insert tech job here). What language should I learn?
Depending on the type of job you’re aiming for, the “best” language may differ.
Of course, it would be very impressive if you were able to walk into an interview and tell them that you know like 5 different programming languages, but it would probably be a better idea to target one language that is needed for the job that you want.There are a couple of different approaches you could take here:
- Choose the language your target employer uses: If you know the company you want to work for uses say, Ruby, then that’s the programming language you should know before applying for a job there.
- Choose a language that you’re familiar with: Many interviewers will ask you to do a pseudocode during the early interview stages, to see how well you know a certain language, how well you can write code without an integrated development environment (IDE), and how comfortable you are writing real code. Whatever language you learn, make sure you’re familiar with it and know it well.
If salary is important to you, then this infographic will probably be helpful - it ranks the programming languages by average potential developer salary:
Q4. Which programming language can I learn online?
Considering that you can learn pretty much anything online nowadays, the better question should be: Which online course or coding bootcamp should I sign up for?
Sites like Codecademy, Treehouse and Code School pretty much cover most of the popular coding languages between them. However, they have different course syllabi and different price points, so you need to do your due diligence and check all of them out before deciding which site is best for your needs.I won’t go into the pros and cons of each site here (this isn’t that type of blog post), but feel free to research on your own.
If studying online on your own isn’t working for you, then you may want to consider registering for a coding school or bootcamp instead.Before signing up for any online course or bootcamp, ask these questions:
- How much does it cost?/Can I afford it?
- How long is the length of the course/bootcamp?
- Which programming languages do they teach and what is the syllabus?
- Do the course/bootcamp components match what I need to learn?
- Are there any instructors/mentors available, and what is the instructor-to-student ratio?
- After graduating, will the course/bootcamp help connect me with potential employers?
- Are there any reviews/testimonials from previous students? What was their experience?
To conclude, there is no concrete answer to the question “Which is the best programming language for me to learn?”
It really depends on what you need, and you will need to do as much research as you can in order to find the best option available for yourself.
There is a ton of information out there, and sorting through it all can be really time-consuming but if you’re serious about wanting to learn to code, then it’s something worth investing time and effort into.Keep in mind that being a programmer isn’t about learning the best language, but rather about the ability to solve problems, learn new things and get stuff done.
If you’d like to check out our coding and digital bootcamps, you can find them here: