Posted: 28 December 2019

My first (real) app

Here it is, finally - Blogger. So a bit of background here first. I never actually intended to create a blogging website.

For a very long time, I’d been wanting to learn how to create a tangible piece of software. Computers intrigue me in the weirdest ways possible; seeing a piece of code materialize into physical and potentially revolutionizing product gives me a joy I can barely express in words. This infused a drive in me to create seemingly invisible stuff that can change people’s lives. That’s a lot of words, heh, and a blogging website isn’t going to change anything for anyone, at least now, though twenty years ago it might have. From the humble beginnings of QBasic and HTML began my journey. I came across a lot of stuff (I’m thankful to my school for having such a curriculum) - languages, databases, graphics, webpages, architectures, assembly level stuff - learning a tiny bit of everything. Although this might sound cliche, but video games caught my fancy quite early on. I tried learning how to develop games (learning C++ along the way), but I never quite got around that. Next came the web. Considered the easiest place to start developing, I hopped on the wagon too. Speaking of which, full stack web development is a highly sought-after skill today. My interest is in the creative side of things, how stuff looks and feels, how beautiful and pragmatic designs are envisioned and built. So naturally I’m inclined towards front-end development, catering to user interfaces and experiences. Knowing this much, the next thing to do was to create a roadmap. First, strengthen and master HTML. Not a difficult task. Then, solidify my knowledge of CSS. People think CSS is a breeze, but there’s a lot more to it - pure CSS animations, preprocessors like SASS and SCSS, frameworks like Bootstrap, Materialize - and all that is not so easy. Then there are animation libraries like anime.js, three.js, Velocity that can handle 3-D graphics right in the browser. Finally, I entered the world of JS frameworks. There are tons of frameworks out there and choosing one can be a daunting task. I chose React, because, well, it is extremely popular and robust. One thing that’s very important to know is that before studying any JS framework, you should have a substantial understanding of vanilla JavaScript and its standards. React isn’t complete without a set of enhancing modules like Redux, Thunk, Context, Hooks etc. and I’m currently in the process of familiarizing myself with these.

The website uses React, along with Redux and Thunk, styled with Materialize CSS, on the front, and Firebase API on the back. I created it whilst learning these. Now that it’s here, I thought why not just put it to some use. After all blogging is actually a good habit.