First, let’s start with the why: for me learning software development was never about learning to code or understanding a programming language. It was about having the ability to create something.
My journey started in the first year of studying at RSM, when I wanted to build a website for an idea I had. The website needed to be relatively simple with basic functionalities. At this point I had practically no experience with anything related to web development. I started learning how to build something in WordPress, without having to do any coding. My journey from that point on was quite incremental. When I figured out how to build websites in WordPress the design was often very rigid. I wanted to do small customizations but this required knowledge of HTML and CSS, which I then started learning.
After I had gained some knowledge of these techniques the ‘real’ journey began. I had previously developed a WordPress website that showed upcoming sporting events. The website had quite some regular visitors but still needed weekly manual updating. I wanted to fully automate it but didn’t know how.
I decided to learn how I could automate it and did a basic JavaScript tutorial on the app Sololearn to understand the fundamental programming concepts and the syntax of the language. This turned into following tutorials on how to build a web scraper and how to manage a server and a database.
To this day, the website runs fully automated. For me it was a real eye opener as to what a little experience with programming can do in terms of automation.
After that I decided I wanted to get better at both frontend and backend development, so I did a Udemy course on ReactJS and Node.js. At this time I was employed as a working student at a startup. I started in marketing but slowly transitioned to the more technical side of the company. Nearing the end of my BSc I started doing more and more software development. Currently, I work three days a week as a software developer for the same company. Mostly, working with ReactJS for the frontend and Node.js for the backend but I feel that there is still much to learn. This year I hope to develop a large(r) scale application and launch it by myself to see where I stand, maybe even together with another student!
For anyone interested in learning software development I would now like to share with you a few things I would highly recommend as well as some things I would do differently.
One thing I feel has really helped me is actually getting a grasp of the language and fundamental concepts before jumping into more advanced tutorials. Especially when learning a framework such as ReactJS, many tutorials try to teach both JavaScript and the framework at the same time. First getting a good understanding of the language and then learning the framework has allowed me to deeply focus on both, instead of trying to do two things at once. Another thing I would highly recommend is having a project to work towards. Learning things to be able to realize a project helps in staying focused and motivated.
One thing I would have done earlier on in my journey is learning a strongly typed language. This is a language in which all variables, expressions and so on, have an explicit data type. This helped me alot in getting a greater grasp on different data types and how they interact with each other throughout an application. I would highly recommend anyone to learn this as early as possible.
If you have any questions about software development or learning programming in general, feel free to send me a message!