List of Technologies I Want to Learn in 2020
In 2019, I wrote a blog article about the list of technologies I didn’t know yet. It’s been a year on from then and this is an update to the list as well as listing out the technologies I want to learn this year to improve as a software developer.
WHAT I HAVE LEARNED SO FAR
Programming Languages: I decided to test the waters of other languages and see how far I can sail. The first one I tried was Golang. My experience with it was not pleasing, the syntax was odd, to begin with, and on my part, having the mindset of a JavaScript developer while learning another language wasn’t doing any good. I kept at it for two months and finally gave up after.
Another language I tried was Python. Surely, you must have heard of this one. it’s very similar to JavaScript in terms of syntax and arguably simpler to learn. I enjoyed Python, the syntax was concise. Ultimately, I fell in love with it but due to other constraints I have, I couldn’t devote ample time to learn it and thereafter abandoned it.
JavaScript Frameworks: I learned about React. Heck yes! This was a topic I have been having doubts about. Should I learn it or not? I was already familiar with Vue and felt there was no need to learn another framework, rather I should go deeper with the one I already know and be so good at it. While this is still okay, I realized the ability to understand both frameworks has advantages, one of which it gives you enough ground to cover while searching for a job which was something I was doing then. To be honest, learning React and Vue has broadened my knowledge and I can easily communicate with people from both sides.
Webpack: This is a complicated topic to understand. I eventually got around to learning it and have a grasp at what it’s all about. I can say it went well, I even built a webpack config. It was a worthy experience, to say the least.
Nuxt: Nuxt is a server-side framework for Vue. I started learning about it when I decided I wanted to know more about Vue ecosystem. I enjoyed it. It was like sugar-flavour added on top of Vue. If you are familiar with Vue, I encourage you to give it a try.
TypeScript: TypeScript was one of hottest topic in Web development. People couldn’t stop talking about it and I finally decided to give it a try. Learning TypeScript was difficult for me. It could be because of the material I was using or something else. It wasn’t a good experience but I’ll try again.
TECHNOLOGIES I WANT TO LEARN
Python: I will be devoting ample time to learning Python very well. It’s becoming increasingly difficult to ignore with machine learning and data science in your face every time.
TypeScript: I tried this last year and it didn’t go well. I want to give it another shot. I have noticed TypeScript is commonly used with React nowadays, every repo I turn to is written with TypeScript and many more are in the process of conversion. As a software developer, I guess you must devote time and learn it as well.
GraphQL: Well, it’s about time, isn’t it? With the emergence of static sites such as Gatsby and Gridsome which I’m familiar with, it’s easier to get up to speed with GraphQL. I’m only familiar with REST concept when building APIs but GraphQL has come a long way and will soon become the de-facto way of writing APIs not to include the fact that job adverts list it out as a technology to be familiar with.
SQL: When I tell people I don’t SQL databases, they look at me as if I have been living under a rock. But chances are if you are a JavaScript developer and you also use it on the backend, chances are you also don’t know it. Almost all the materials and tutorials on the internet that teaches Node.js make use of a NoSQL database to teach, mainly MongoDB, so you likely follow that trend and practice with what you have been taught and already know. Well, I want to change that this year by getting my feet wet with SQL databases particularly MySQL and Postgress. This would increase my knowledge of how databases work and knowing which one is best to use for my projects.
These are the major technologies I want to devote time to learn this year. Although I have other interests such as React Native, Nextjs, Data Structures and Algorithms, DevOps, AWS, Azure, Severless technologies such as Amplify, etc. and generally getting better at problem solving.
I hope to take it one step at a time and ensure I do my best to complete my goals. Writing articles and building projects are the best ways for me to solidify my knowledge of what I’m learning, so these are the steps I’ll be taking to ensuring my time learning the technologies is worth it.
If this was helpful, interesting, or caused some other positive emotion, please share!