We all need to start somewhere when learning to code. Everyone has a reason to start this journey but everyone gets confused on where to start.
Let's talk about which programming language you should learn first.
Common questions that I often get on social media and during my days as a software engineer:
- Which programming language should I learn first?
- Which language should I learn to get a job?
Do these questions sound familiar to you?
I have both a short answer and a long answer. The short answer is more subjective.
So, the answer is based on my experience in the last 15 years as a software engineer and my personal taste.
So, which programming language should you learn first?
Just open your favorite browser, and open the developer console.
Another programming language that I would recommend is called Python.
Python is one of the fast-growing programming languages out there and it can be used for Web Development, Data Science, Machine Learning, Automation.
The simplicity in its syntax is one of the best parts of this programming language and actually, the thing that made me fall in love with it.
The community is huge and there are so many job opportunities using Python and making it a worthy "first" programming language to learn.
Everyone has different needs and goals on why they are learning code, so there is no magic first programming language that would be good for anyone.
There are 3 points to take into account when deciding your first programming language and I am sharing my strategy on how I would go choosing my first programming language if I would start my career in Software Engineering today.
The job market is the first point to take into consideration,
Most of you are learning to code for a different reason. Some of you are looking to find a job in this field and it is totally understandable. There are so many opportunities in software engineering that I see many of you have this as the main reason to start learning to code.
The job market depends on your own location and industry you want to work in.
Different countries have different demands for some programming languages. Same when we talk about the industries you might work in: working as a software engineer in oil & gas might require experience than working in Banking or the Gaming industry.
If you want to work in the Gaming Industry, maybe learning C++, C# could be two good options as the first programming language.
If you want to work in the Banking Industry, learning Java is the first option for you.
If you want to build mobile apps for a living, Swift / Objective-C are the options for iOS and Java / Kotlin for Android.
Do you want to work in Data Science and Machine Learning? Python could be a good bet as the first programming language to learn.
Understand the kind of job you want to get and the technologies required for it, that's a good way to understand the programming language that you would learn first.
If you are not looking for a job, learning to code might just be a pure pleasure for you at the moment.
In that case, building project-based learning can be a good option.
What does it mean? Instead of only relying on a tutorial, you try to build a project with a given programming language you choose.
Let me ask you: what do you want to build?
Want to build a game?
You could choose Swift for the iOS game but probably I would choose to learn C# using Unity.
Based on what you want to build, you might choose a different programming language.
Last but not least, it is the ease of learning a programming language. Some programming languages might be easier to learn and work with than others. Let me explain...
Whenever you are solving and trying to solve a problem in software engineering, you have two factors to take into consideration:
Problem Solving: Each problem that you are trying to solve has a certain logical complexity. It is your job to understand what will be the steps for solving the problem.
Syntax complexity: Each programming language has its own syntax. Some can be easier to learn than others.
When learning to code, it is wise to choose programming languages with an easier syntax complexity. For example, learning the syntax and how you write software in Python could be easier than Java.
But, you should choose the right programming languages for you and your needs. That's why I suggested you to take into account 3 valuable points: job market, what you want to build and ease of learning.
Let me know in the comment below which programming language you are learning and how do you feel about it.
Well, the last thing: If you arrived here, thank you so much for your support and time that you spend on this page.
If you enjoyed this story, please click the like button and share it to help others find it! Feel free to leave a comment below.
Domenico is a tech lead and software developer with a passion for design, psychology, and leadership.
If you need help with software development, you need consultancy for your technical challenges or you need a leader for your software team or just want to collaborate online, feel free to contact me!
Do you know that I have a YouTube channel? Subscribe!
Where can you find me?
Youtube: Domenico Solazzo's Channel