Choosing your first coding language is an important decision, the more time you spend with a language the more comfortable you will feel writing it. It’s a good idea to focus your learning on a language that is not only in demand for today’s job market, but also expected to be in demand in the future.
In a lot of ways choosing a language is like making a bet on that language, but instead of money you are investing your time. If you spend a lot of time learning a language or technology that is soon to be outdated that time investment is not as fruitful. The safest strategy is to focus on a language that is already popular and expected to be popular for the foreseeable future. So how do we know which language to choose?
There are a couple of ways we might answer this. Let’s check google trends to see which language is being searched for the most.
Ruby has lost some popularity over the past few years. There are still a lot of jobs to be had as a ruby developer, especially since there are a lot of legacy codebases written in Ruby, but it’s probably not the best choice starting out in 2020.
If you are curious about what software engineers have to say about their favorite technologies and statistics on the most popular languages check out the annual stack overflow survey. Here is a screenshot from 2020.
Python is also a solid choice especially if you are more interested in working with data. Python is an often used language for implementing machine learning, this is a likely contributor to increased popularity over the past few years. Python is also a great choice for writing server side code with frameworks like Django and Flask.
Choosing a good first language is important for landing your first job but more important is probably your overall strategy for learning to code. This is a topic that deserves it’s own post, but some things to think about when learning to code. Do you have access to mentors and peers who can help guide your efforts into landing the first job? Are you not only studying but also applying what you are learning toward building something. Are you getting exposure to code bases that are challenging enough to develop your skills for both writing code and also for reading code? These topics are probably more important than choosing the correct first language.
I hope this post was useful for you, feel free to reach out at firstname.lastname@example.org. Happy learning!