Like many of you, I also thought for a long time about which programming language I should actually learn. Python for machine learning and AI, Java for big apps, Swift for mobile apps, each language/field seemed so interesting and I spent a lot of time trying different things and still had no idea which language to stick with. This cost me a lot of time that I really want to spare you.
Hello, I am Julia 👩💻, a self-taught React developer and I would like to explain to you why I chose frontend and ReactJS in particular as a programming language to learn.
Frontend seemed to me to be the easiest to learn at the time. And in my situation, it was definitely much easier than Python or Java. I needed to see things right away, and fiddling around with CSS and creating something beautiful made me happy.
That doesn't mean I'll stay with frontend forever, I'm interested in other languages too, but I wanted to get a job as soon as possible and calculated my odds, so I started learning HTML, CSS, and then JS/React.
When I googled for tutorials, React was everywhere. React seemed to be THE language to learn at that moment, and when I learned about a mentorship program called The Collab Lab where you can apply if you know React to work on a smart app in an agile team, that was the final decision and motivation to dedicate myself fully to React.
I want to get into this program, so I'm going to learn React, no matter the cost.
After learning frontend for three months, I applied for the program and was accepted 💪. I have to admit that at that point I didn't have the knowledge that the others had. I had to put in a lot more hours than the others and learn React all day to keep up.
But it was definitely worth it. The experience was amazing because even though I didn't have all the programming skills of my peers, I was able to impress the mentors with other skills like motivation, communication, and a little bit of leadership, and they asked me to become an assistant mentor for future cohorts, which I gladly accepted.
It was a great experience. Last but not least, this experience was also the most interesting one on my CV that was talked about in every interview I had and ultimately helped me get my first tech job ☝️.
Is the language in demand?
Because I'm talking about my first job: I hadn't thought about whether React was even used here in Austria. There were very few jobs that required React at the time of job searching, but I was lucky. React is just coming, so I am one of the few who already know React, while others have worked with Angular for years and now have to relearn.
That's why it's important to look for jobs in advance, for example on LinkedIn, and find out if the programming language you want to learn is even in demand in the place where you live and want to work.
What I'm saying is that even if frontend seems a bit boring to you now, like, "I don't want to build websites", there are so many other areas you can focus on after you have a deep knowledge. You could become a frontend developer with a strong focus on UX/UI design, a focus on animation, if you like teaching you can apply for jobs at a coding school to become a mentor, freelancer or content creator, or you can learn Python in your spare time and switch your career to Machine Learning or AI.
Advantages worth mentioning
After getting my first job, I can assure you that I feel so relieved because I made it, I feel secure because I'm making money now. The way I study now in my free time is much more effective because I don't have any ulterior motives anymore: "Am I really going to make it? Is there any point in learning this language at all?"
While getting better at frontend at work, you will also get better in other areas, like internal tools, personal growth, and soft skills. And maybe the company provides other areas too and a switch within the company would be possible 🙂.
Learning React development, after mastering the basics, you can and should also specialize in something to stand out from the crowd when applying for jobs, like UX design, UI design, a11y, some BackEnd, animation, etc.
- develop websites using frameworks and libraries like ReactJS, Angular, Vue, Svelte, etc
- develop mobile apps using React Native
- develop desktop apps using ElectronJS
- develop (game) animations using ThreeJS
- develop ML models using TensorflowJS
- develop web3 using web3JS
I hope you find a good start into programming and can get started now. Have fun ✨.
Thanks for your reading and time. I really appreciate it!