Dramatic much? nope! It’s exciting!
I have been wanting to build my own site for quite a while, about 3 years to be exact. I wanted an online “presence”; somewhere I can show off cool things I have been working on. I also wanted to get better at writing, specifically technical writing. I read a lot of developer articles on Medium and it has inspired me to start writing on my own. In the process, I’d give back to the community and make a name for myself.
And so it began!
My journey to build this site! There were so many questions to be answered, do I use a CMS? If so, which? Do I use a JS framework? A CSS framework? How about a logo? Ahhhhhhhh!
Those questions would keep looming in my head and I would keep putting this project aside.
Until one day
I decided to quit being lazy and actually try to do it! I started with a GitHub hosted site with only one placeholder page. It was ok, but not enough, I needed a solution where I can use my own domain, use HTTPS and add pages/blogs easily but still have total control over my site (JS/CSS/HTML). All that, while still being a static site that is blazing fast.
Picking Hugo and JAMstack
I have tried quite a few solutions before settling on Hugo. I tried Wordpress, GitHub Pages, and even AWS hosting. All had some disadvantages I did not like and won’t get into in detail. Then I read this article and I was curious about JAMstack. I started reading more about it and tried a few static site generators like Gatsby and Jekyll but I liked nothing better than Hugo It was easy to learn and truly blazing fast (built with Go). It also allowed me the freedom to use any framework on no framework at all.
Hugo can build this entire site in under ONE SECOND!
Now I needed to host my Hugo site
Netlify! I discovered Netlify!. And it was a match made in heaven! Netlify would take my GitHub repo, build it and deploy it to their extremely fast CDN! All this happens automatically upon committing to my GitHub repo. [guide]
About performance… This site KILLS it!
With Hugo being so fast, this site is updated literally 2-3 seconds after I add a commit to my git repo! That’s insane! On top of all that, this site loads in 0.3 seconds! That’s about the same time it takes you to blink! That’s as fast as it gets!
SEO… you guessed it!
This site became the second result in google searches* after my Linkedin profile page! That was an unexpected surprise
*Searches for “Ahmed Musallam”, not that I google my self or anything…