We used to require a wealth of knowledge to get a simple website up and running for a blog, portfolio, or business landing page. Often times getting one made required contracting a team of developers or using up resources in-house. More recently, websites like Squarespace and Wix, among others, simplify this process by removing the "code barrier". In practice this is great, even for aspiring developers who don't want to write their entire site from scratch.

When you host yourself, you have the flexibility of managing the domain however you would like, or to change any aspect of the page you are managing. You have control over the entire process of domain registration, dns mapping, hosting, and maintenance so at the end of the day, you know exactly what is happening throughout this system.

Rather than relying on whichever technologies or hosting services/agreement your website building sites use, you know exactly what is happenining to your data. Also, you control the frameworks or platforms you use, and there are many independantly audited open-source options to choose from even if you are not building the website from scratch.

Throughout the process, you not only learn valuable skills in developing or modifying a website or framework. You learn the skills needed to allocate resources for this site, set up a reverse proxy (APACHE2, NGINX), configure DNS settings, and set up SSL certs. While these are tasks often times DevOps employees in a firm would handle, as a developer it is never a bad idea to familiarize yourself with all of these processes.

This website is hosted on DigitalOcean and is served using an NGINX reverse proxy. It uses the Ghost CMS, which I found to be performant and perfect for my use case. While I could make my own site from scratch, I work on other open-source projects and freelance work for client so this took a lot of the weight off of my shoulders.

Now get out there and experiment with hosting your own sites!