Which coding language should I learn first

Saffron Wildbore

~ 5min read

Arrows decoration graphic
Grid decoration graphic

~ 5min read

Struggling to decide which programming language to learn in your spare time? We understand the stress-fest! What matters most is that you pick one and give it a solid go, but it’s true that some coding languages are a better bet for career-starters than others. This article will help you make sense of your options.

> There is no single “best” coding language to learn (especially when you’re starting out)

You can pretty much do anything with any coding language, within reason. It’s just that different coding languages make different sorts of problems easier or harder to solve.

The current dominant language, or the dominant language in the field you’re interested in, will change over time. The tech landscape is always evolving. In that sense, you can’t really go wrong.

People in tech often have strong opinions, so beware of hearing “this is the only language you should learn”. The language they’re passionate about may well have advantages in some situations, but you’re not being given the full picture.

> Your first language is only the start of the learning curve

In your career, it’s never the case that you learn one coding language and then you’re set for life. Part of being a programmer is that you will learn others over time.

The more you can learn in the first place – in other words, having a really good grounding in one language – the easier it will be for you to pick up the next language.

But which language should you choose for getting a really good grounding?

There are some factors to look out for to stack the odds in your favor. Read on to find out what they are.

> 3 factors that mark a good coding language for career-starters

1. A low level of abstraction (base coding languages)

Different coding languages operate at different levels of abstraction, and base coding languages form the building blocks of other languages.

For instance, C is a base coding language. It’s a little unforgiving in that your code won’t work unless you’ve nailed every detail, and you need to think like a computer. So why bother? Because C lays the path towards languages such as C++ and C# that are in demand among today’s employers.

Every coding language that’s built on top of a base language abstracts away some of the gruntwork. Basically, it enables you to execute more powerful commands with fewer lines of code. The tradeoff? You have less control over what’s happening, and it’s harder to understand what’s happening.

At the lowest level of abstraction, there’s Assembly code. This is the language that tells a microprocessor what bits (binary digits, the smallest unit of data a computer can process and store) to move around.

Then you’ve got coding languages such as COBOL in Mainframe computing, which involves a degree of abstraction above Assembly. Then you’ve got C, which is a little more abstracted than Assembly, and then C++, which is a little more abstracted than C… you get the idea! (This is a bit of an oversimplification, but roughly speaking, each language abstracts away more of the detail from the language it’s built on.)

Some people learn programming by copy-pasting chunks of code written by other people on Stack Overflow and bodging them together. This is a viable approach, but you don’t always know why what you’re doing works, or how it works.

If you understand a base coding language such as C++ or C#, you’ll find it easier to learn the frameworks, tools and more complex languages that build on the base language.

2. The length of time the coding language has been in use

You’re really looking for staying power. The longer a coding language has played a role in building businesses, the longer it’s likely to stay around in future.

This is a phenomenon known as the Lindy Effect, which applies to everything from literature to music as well as technology. You’ll always hear a lot of noise about the hot new thing in tech. Thing is, most hot new things don’t stay hot for very long…

Every programmer will relate to the temptation of chasing the latest new coding language. And nobody can deny that they’re fun to play around with. But as the world changes so quickly, it’s important to have knowledge of older coding languages that have stood the test of time.

For instance, mainframe development with COBOL came out in 1959. People in the 1970s predicted that it would die out by the end of the century, but in 2023 it’s still powering the world’s largest banks!

3. The size of the coding language’s ecosystem

A large ecosystem – the supporting technologies, frameworks and human communities that surround a coding language – typically goes hand in hand with staying power. It indicates that the coding language in question has strong roots and is going to stick around longer.

Access to a large coding language ecosystem brings you lots of benefits.

You’ll have more people to learn from. More resources to learn from. More job opportunities in that language. If you’re at the start of your career, that’s all good stuff.

> Why are unproven coding languages so risky for businesses?

Let’s look at an example. In 2016, a fintech decided to transition from monolith architecture to microservices architecture (the hot new thing at the time). This involved new code, frameworks, systems, tooling, processes, employees… an enormous transformation project. Because the technology stack was so new, its creators were still ironing out the kinks.

As the fintech discovered bugs, they had to wait for the infrastructure of the coding language to be fixed by its creators. These dependencies delayed progress. Even after the project was delivered, there was doubt as to whether the new architecture was better than the old architecture.

Lots of companies that made the decision to switch to microservices around that time are now swinging back from microservices to monolith architecture. That’s how it goes in technology!

By contrast, although languages that have been around for ages aren’t “trendy”, you reduce the risk of running into unpredictable disasters. Sure, some new coding languages go on to become as established as C++, but this happens once in a blue moon.

> Coding languages for specific purposes

As we’ve said, there are lots of similarities among the established coding languages. What’s more, most people don’t know exactly what sort of coding career they want to have until they’ve got started. So take the following advice with a pinch of salt. But if you already know you’re interested in a specific niche within programming, some languages are more suitable than others.

For instance – do you want to get into data science? Python is a great language for manipulating data. Its main strength is crunching numbers, and its main purpose in business is modelling hypothetical scenarios. It’s terrible for anything else!

Hundreds and hundreds of coding languages have been created over the years, and they’re all optimized for different situations and use cases. For a good overview, check out Digital.com’s list of 100 popular coding languages in 2022 with short explanations.

> Our top takeaway

Want to give yourself the best chance of building a career in tech? Learn a long-lived coding language with a big ecosystem and a low to medium level of abstraction.

That’s why, at mthree, our graduate program’s training pathways include C++, Java, C#/.NET, COBOL for Mainframe, Q/KDB+ and GoLang. All of these coding languages have a strong ecosystem and have been around a while, and they’re popular among businesses across the world.

You can get an amazing graduate job in coding without studying a computer science degree. That’s right – the days of needing a computer science degree are over. If you have the drive to learn to code in your spare time, we recognize that you have what it takes.

Want to become a coder for a leading global employer? Embark on your new career with mthree.

Saffron Wildbore is a Senior Marketing Executive at mthree. She has worked in marketing, specialising in creating content for over 4 years. Saffron focuses on writing tips for graduates, Alumni interviews and more!


Wiley Edge is now mthree

We are excited to announce that we have been acquired by Inspirit Capital and returned to our roots as 'mthree'. 

Read the press release >> >>