Welcome to my website. I hope you enjoy it.

I built this website to give me a place to write, to help with my web presence, and to learn and practice new skills. Here's how I built it:

Platform

I considered a few different platforms for my website including Ghost, Wordpress, Medium, and a few smaller platforms. I was looking for a platform that offered speed, simplicity, and control.

Wordpress

I used Wordpress with the previous iteration of my blog a few years ago and I'll continue to use it in the future. Wordpress is a nice platform and sites built with it can be quick when done right.

Medium

While Medium has a reader-friendly, social design, it doesn't provide the same level of control as self-hosted platforms. Even Medium's "Publication" feature, which offers more design options, doesn't offer full control. Cross-posting content on Medium is an option, so I'd prefer to post on a self-hosted platform first.

Ghost

Ghost is fast and well-built. Regular updates are provided and there isn't a need to install plugins for search engine optimization or security. Additionally, the editor is simple and pleasant to write with and you have full control over your site if you host it yourself (which I am doing). If you're looking for an even easier option, Ghost(Pro) takes care of the hosting for you. Many companies use Ghost for their blogs including Mozilla, Cloudflare, Vevo, and more.

Hosting

After choosing which platform to use for my new website, the next choice to make was about where to host it. I wanted a host that was fast, reliable, reasonably-priced, and user-friendly.

I first considered using Amazon Web Services and the Google Cloud Platform to host my site. Both of these services are fast, reliable, and seem to be reasonably-priced. However, since this was my first time using a host like this, I wanted something a bit more user-friendly. This is why I chose to use DigitalOcean to host my website. Separately, I did end up using Google Cloud Platform afterwards to host static content like PDFs.

Based in the US with server locations world-wide, DigitalOcean has quality, fast servers. They have a simple pricing structure which starts at $5.00 per month. They also have a helpful community section on their website with tutorials. I actually used their tutorials along with Ghost's guides to set up this website. Being able to have a set cost per month and helpful guidance from a community of users cemented the choice for me. Plus, to top it off, DigitalOcean is actually Ghost's recommended hosting option. There are other great options and everyone has different needs, but I am pleased with DigitalOcean (referral link) so far.

Setup

The actual setup of the blog itself wasn't too difficult. Rather than detail the steps required, I would suggest reading Ghost's Install & Setup guides. The DigitalOcean community's tutorials also are great for walking through the process.

Beyond the basics of setting up the hosting environment and configuring Ghost, I also did the following:

  • set up Cloudflare to serve as a content delivery network (CDN)
  • set up MailChimp to collect email addresses along with Zapier
  • set up a contact page using Formspree
  • set up a separate subdomain for uploading static content (this also gave me an opportunity to use and learn about the Google Cloud Platform)

Design

After setting up the site, the next step was to choose a theme to customize the design. Ghost uses a nice theme called Casper by default but there are also many other great options available. Plus, you can also design your own theme or customize an existing theme. I chose to use a theme called Curious and made some small edits to the theme. Curious has a nice bold, clean design that makes images stand out and makes posts easy to read. It's also responsive and scales well.

Results

I'm rather pleased with how the blog turned out. I've enjoyed working with Ghost so far, the hosting has been reliable, the design is clean and responsive, the site loads at a reasonable speed, and I have a nice place to write and share content. I've also learned quite a bit as I've gone along which was one of my primary goals. The site isn't perfect by any means, so this will alway be a work in progress. I'll do my best to update this post or write new ones as I make significant changes.

To close, here are some various tests for the site. Since my homepage is a bit empty at the moment, these tests are from my first post.

Various Test Results

GTmetrix

gtmetrix-speed-test-results-min

Pingdom

pingdom-speed-test-results-min

Google PageSpeed Insights

google-pagespeed-insights-test-results-min

Lighthouse

lighthouse-test-results-min

Google Mobile-Friendly Test

mobile-friendly-test-results-min

Think With Google Site Test

google-mobile-test-min-1

If you have any suggestions or questions, just let me know. Thanks for reading!

Cover Photo Credit: Ilya Pavlov