This is one of the most frequently asked questions on getting started in tech. I hope you find my suggestions below helpful. Let me know in the comments below if you have any questions.
Let me first tell you about how I got started in tech and which languages, frameworks and libraries I learned.
I studied Computer Science from 1999-2003. At that time my college made the transition from teaching programming in C to Java. So Java ended up being the first programming language that I learned. I didn’t choose to learn Java specifically. That’s just what I was taught.
I also learned jQuery, Raphael.js, Backbone.js, Leaflet, Angular and Vue libraries and frameworks for frontend work. JSF, Java Swing, Wicket, Oracle ADF, Angular, Django and Express frameworks for backend work.
Don’t worry I didn’t learn all of these at once. I learned all of these languages and frameworks over a long period of time (about 15 years) . I didn’t choose to learn most of these programming languages or frameworks. I had to learn them as that’s what my employers used in their already existing applications.
The point is you can pick a programming language or framework to start with but know that it may not be what you use at your next job. Don’t stress out so much about which language or framework to learn first.
Remember that your job is not to code. Your job is to build a product for your customers and users. They will not care which programming language or framework you use. They just want something that gets their job done and makes their life easier.
It might seem impossible right now as you are starting out but once you learn one language or framework, it’ll be easier to pick up another one with experience and practice.
However, you need to start somewhere. Here are a few suggestions on how to pick your first programming language.
Pick a beginner-friendly language or framework
Vue is an up and coming frontend framework that is popular among beginners. Django for backend work if you are using Python. Rails if you are using Ruby.
Look at companies that you want to work for. Learn the language and framework that they are using.
Pretend that you already know how to code. Go to indeed.com and look for the work that you’d like to do. Pick 5 or 10 job postings. Is there are common theme? If so, pick the language and framework that they are using.
Pick a language based on the work that you want to do
For Data Science, learn R if you are in an academic setting. Otherwise, Python.
For Mobile app development, learn Java for Android apps. Swift for iPhone apps.
If you want to work with databases, learn SQL.
Learn the most popular language or framework
According to TIOBE Index, Java and C are the most popular languages as of June 2018.
If you are already learning a programming language, stick with it. Learn and build as much as you can. Understand the basics and how to build real world applications. Be ready to learn another language or framework if your new job needs it.
No matter which language or framework you choose, remember that languages and frameworks come and go. The experience you gain by building with these tools is what’s important.
This is part of a series on how to get started in tech. Let me know what else I can help with here.