Bye Bye Gatsby

By Kent K. Chang

I don’t seem to be able to stick with a blogging platform. I’d used WordPress for quite a while in 2008, and although I stopped updating that blog for non-technical reasons, I never quite liked WordPress.

And for no particular reason, actually. Most people ditch WordPress to embrace static site generator for its simplicity, but that’s not really me. I remain skeptical about this whole “minimal computing” branding (I’m ignorant, educate me), and if anything, I enjoy this build-and-deploy pipeline insofar as it gives me some sort of geeky delight. Other people dislike WordPress because they are tired of constantly hacking it, which is also not my case because I liked my 2008 blog, and I knew enough PHP to make it do what I wanted it to do. I hope one day I will actually figure out. It’s annoying to hate something for no good reason.

In any event, I grew tired of my Gatsby site and have never actually updated it since its completion in August 2018. The fault was mine. I made everything unnecessarily complicated. If you actually saw my only blog post there, you saw my standard procedure for writing a post, which involved like fifteen steps. Here’s the thing: I like how Gatsby is strcutured, and still think GraphQL coupled with Contentful is a pretty good idea. But, I wasn’t able to implement most things I routinely need (or want) as an academic writer.

I played with Frog when I was learning Racket last year. It was great, but over the course of building the site, I always felt inconfidnece: I did’t really know enough Racket to change its core components (and even resorted to change DOM via JavaScript after the page is loaded). And earlier this year I got obsessed with React and decided to redo the whole site in it, so it no longer made sense to have a blog system written separately in Racket.

This blog you currently see is based on code from Next.js MDX Blog Kit. Of course, it’s not strictly a blogging platform, and the whole concept of web publishing is pretty much turned around, I think. It never occurred to me I can do it this way. This allows me to write in Markdown and use a preprocessor like PP to convert it into other formats. In fact, I write in traditional Markdown, and preprocess the file into a MDX template that has Edward Tufte’s CSS baked into it. I have a similar template for LaTeX\LaTeX as well. It supports LaTeX\LaTeX and margin notes! I am pretty happy with everything so far. And hopefully I am going to stick to it this time.