logo

Josh Clow

Software is a human craft

The First Post

February 07, 2020

For me, when it comes to writing things, the only thing worse than a blank page is an empty blog. Getting started is the hardest part, and it would be very easy for me to over-analyze things before making that first post. So to break through that, I’ve elected to jot down some notes about what it was like to set up this blog in the first place.

Motivation

Prompted mostly by my recent job search, I finally decided to set up a landing page for myself. First rev was incredibly simple… basically a business card with contact links. Separately from that, I had been looking for a project to try out Gatsby.js with. Finally, like a number of folks working on web technology, I have grown wary of letting other companies (like Facebook or Medium) host my content. If there’s a lesson to take from the consolidation of media online over the last decade or so, it’s that it’s nearly inevitable that these sorts of companies will eventually have business goals that don’t line up with your values, and there is real value in owning your own content. So with all that in mind, I decided I should try to spin up a blog again after a few years of not having one, and that I wanted to build it myself, hosted on a provider of my choice.

Goals

It’s tempting to pretend I approached this with the kind of formalism I might bring to a professional project, but that’s not really true, and rarely is of my personal projects because they’re typically equal parts learning, exploration, and building, and I don’t want to put too many constraints on any of those parts up front. That said, I did have a couple general goals in mind when I started out:

  1. Start small - just a blog and a bit of extra content similar to what was on the original landing page.
  2. Use Gatsby.js to generate the core of the site and focus on static web content to start with.
  3. Ship the damn thing instead of letting it become the software equivalent of a “project car” perpetually up on blocks in a garage (I’ve got plenty of those already).

How did I do?

The fact that you’re reading this means I accomplished what I set out to do with those basic goals. In particular, I have a zillion things I want to change/improve about what I initially set up, but I held myself to making sure I actually got it live, fixing only the pieces I absolutely had to to get there.

What’s Next?

For starters, I have several topics I want to write about here…it is after all why I stood up the blog in the first place. Beyond that, I would like to dive a bit more deeply into the GraphQL feature of Gatsby…at the time I write this I’m really just using it for the posts themselves and a few metadata pieces, and most of that I inherited from a starter blog skeleton, so I definitely want to expand my familiarity there. Eventually, I will likely want to add some more portfolio-like pages with dynamic content or maybe tutorials in support of blog posts.

And with that, I’ve written the first post! Even better, if I find myself stuck for a topic as I get into the cadence of updating this thing, I can always elaborate on one of the thousand things I didn’t go into detail on above. Thanks for reading along.