Personal Website - This Time with React

There is no programming pill. It takes time.

January 31, 2020 - 10 min read

Technologies Used: React, Bootstrap, markdown-to-jsx

Available for: All devices with an internet browser

Since I was 16, I got asked the same question many times by many different people: How did you learn programming? My answer has always been the same:

I wouldn't say I know programming. I just put effort into merging stuff together that I find in books or the web. I don't give up if it doesn't work on the first try.

This sounds like a very humble thing to say, but actually it's not. This is the reality. For those who don't believe, I have an extended and definitive answer. Let me tell you the story of how I learnt HTML, CSS, JavaScript, and finally React.

The year was 2010, I was browsing Twitter and I started seeing more and more developers making personal websites for themselves. Most of them were boring compared to today's standards but almost every good developer had one. I was just a kid with little to no programming knowledge. I had some SmallBasic and HTML knowledge but to call it tribal would be an overstatement.

It wasn't until university (2014) that I learnt about making a website. Don't get me wrong, it wasn't uni that taught me how to make a website. It was a friend of mine that goes by the name Oğuz Bilgener. He was one year older than me. We met during the first day of uni. I can easily say he was one of the very few self-motivated people out there that taught himself how all this stuff works. I've asked him how to get started with web stuff. He showed me a few pointers like Nginx and DigitalOcean. About a week later, I had a very basic HTML/CSS website running. No JavaScript. It stayed like that for a long while.

Here is a screenshot from the first ever website that I made:

/images/blogPost/personalWebsite/personalWebsite1.png

One year later, I started noticing more and more people in my Twitter feed talking about Bootstrap. This was around the time when companies started going mobile first. Everyone was talking about how important responsive design was. Bootstrap was a great solution to the Desktop to Mobile transition problem. You could use Bootstrap's grid structure to make a desktop website, and it would also scale down to mobile easily.

It was around this time when I started reading HTML, CSS and JS by Jon Duckett. I can easily say it is the prettiest book I've read so far, and trust me, I've read quite a lot of programming books for my age compared to some of my contemporaries. This book gave me enough courage to take a deep dive into Bootstrap. I downloaded some templates off from a website that I don't remember right now, and modified it so that it would look like it's actually mine. Then I published it, and it became the foundation for the design that I have, even today.

/images/blogPost/personalWebsite/personalWebsite2.png

It looked much better than what I had before for sure. I spent quite a lot of time working on this. I worked on it on and off depending on the workload the uni gave me. It took me one more year, but I was able to get it to this state:

/images/blogPost/personalWebsite/personalWebsite3.png

I didn't provide any major updates to this website for the next 3 years. Not until I graduated uni at least. I only updated my CV.

After I started my first job (2018) after graduation, I had lots of free time. Being fresh out of uni, I didn't know what to do with all this free time work gave me. Then it clicked. I've decided to take on a new challenge. I've been hearing about this React thing from some of my colleagues. They were all talking about how great React was. They were all saying it makes it much easier to make websites and prototype with ideas. I was obviously asking them about the performance, but turns out, it's not that bad.

I initially got the idea from a friend of mine who goes by the name Sam Larsen-Disney. Go visit his website sld.codes. He was the one who convinced to take a side project at work that involved some React. Even though I didn't contribute much function-wise, I was one of the few people who approved some of the pull requests, and occasionally did code cleanups on the whole project. That's when I started seeing how useful it could be. It definitely wasn't the highest performing framework that I've seen so far, but it was good enough to solve my problem. I went home and started learning React.

I can say I've spent 200+ hours working on this website, on and off-stream. All I can say is, I still have much to learn about design and programming.

If you still don't believe progress comes with work and effort, here is a YouTube playlist with over 100 videos, all showing me struggling in front of the screen, trying to learn React while keeping a happy face.

Moral of the story is:

We all start from 0, progress comes with effort.