Hello World devharryc.com

Page content

What is this?

So, a confession: I’ve never owned a domain. Figured it was time that changed.

For the past 15 years, I’ve lived (sort of) at https://harvid.blogspot.com, but it’s been an uneasy relationship. Blogger is creaky, predating social media, then it tried having a relationship with it (via Google+ comments), and then it reverted back.

In the interim, AWS was born. Wordpress happened. Then, site generators like Jekyll came about. Most of all, Markdown happened, making HTML-publishing as simple as typing in vim (I’m typing this in atom right now, in fact.)

Then, my ongoing flirtation with #golang led me to hugo. Hugo is a very fast website generator written in Go, with lots of downloadable templates. So at lunch today I decided today is the day.

I’d given my friend Todd some advice on how to host a blog on the cheap, so I figured I’d take my own advice.

How’d I do it?

Basically, I followed the advice here: Creating a Static Website in 4 Steps.

  1. I got a domain name from Namecheap
  2. I signed up for a free-tier AWS account
  3. I configured the S3 bucket as described, though the AWS Console UI has changed a bit. These two links were helpful:
  4. I created a site in hugo as described in the quick start.
  5. I uploaded it to the bucket
  6. Updated the DNS records to point at my bucket (1 CNAME and 1 Redirect entry).

After about 10 minutes, it worked like a charm.

Migrating the Data

Blogger makes it pretty easy to export your whole blog to a big XML file, so I did that first.

From there, I used a Node.js script called blog2md to move things and it seemed to work well enough, moving over 1500 posts over to MarkDown in about 15 minutes.

After that it was just:

  1. Run hugo
  2. Upload the contents of the /public folder to S3 bucket.

What’s next

So, I’m basically blind these days, so the font on this template is a bit small. Also, I’d really like to get email going to this domain so I can be harold@devharryc.com. I’ll need to do that some way that’s sensible.

Also, the publishing workflow is pretty rudimentary, the modern equivalent of “FTP your files to a server.” I’ve seen plenty of guides out there for using CodeDeploy to automate checkin -> build -> update, so we’ll see.