Blog Init

1 minute read

Yet another tech blog…

I’ve wanted to start a blog as a place to document things I couldn’t easily find answers to on the internet. I’d also like to use this opportunity to document personal projects and potentially rant about this and that. This post falls under documenting a personal project as there’s nothing here I’m covering that isn’t mostly covered in references below.

Blog backend

I specifically searched for a static hosting technology for the blog so I could serve something out of s3 and not worry about a complex site backend. A short amount of research later and jekyll seemed to be:

  • Widely used
  • Well documented
  • Allows pages to be written in markdown

So far, I’m fairly happy with jekyll. There’s a bit of learning curve to it and I claim no mastery of it yet but this blog is as good enough as a reason as any to kick the tires on it.

Stack Overview

diagram

  • Jekyll: static website technology
  • S3: AWS hosted static object store for jekyll contents
  • Cloudfront: AWS hosted distribution network used to front S3 and for SSL termination.

As of writing this post, the blog and all of its infrastructure are publicly visible on my Gitlab. Along with the desire to host a static site in s3, I wanted the site to have a valid SSL cert and of course it was going to be defined in Terraform.

While I didn’t find an end-to-end guide on how to achieve my goal here, the blogs below helped me out a good amount:

I may write up a full guide on how I’ve implemented the blog once I get a better handle on Jekyll.

Getting Indexed

I’m showing my hand a little bit here but this is the first site I’ve hosted for public consumption. I didn’t even know I needed to opt-in to google’s indexing… The link below was a huge help in getting this setup:

This view into a site’s performance and usage is super interesting. I didn’t expect to get so much data or insight into the site and am kinda tickled about it. The screenshot below shows some of the information provided.

google-analytics

Updated: