How a blog post is born

Sharing progress as it unfolds is an important part of Project Calorie Fountain’s DNA, which means not only building this website, but also keeping it up to date. But if there's one thing my years of experience have taught me, it's that websites done well suck up a lot of time, so if I want to have any bandwidth left for the actual research, I need to come up with a way to manage this site without letting it cut into my working time. Let's take a look at the architectural choices I’ve made to deliver on that, and the reasons I made them.


As a guy with lots of projects on the go, I used to be frustrated by all those little lost blocks of time where I found myself waiting for someone, unable to do anything productive with the time. Usually it was waiting for my wife or kids to return to the car from whatever errand I'd driven them to, but then I found a way to turn all that waiting time into a beehive of productivity.

It's amazing what you can accomplish in 10-minute chunks if you have a tool in your pocket to help you harvest them. Smartphones changed my life. But rather than seeing them as a way to consume media, I use them to create. Over the last twenty years I've written novels, short stories, a doctoral thesis, and trivia games using nothing but those found chunks of time. And now I'm using them to write blog posts like this one.

But unlike my previous projects, with Calorie Fountain, I've managed to set things up so that my chauffeur time is the only time I need to spend. Novels and theses and such require all kinds of care and handling after the initial drafting dust has settled. But blog posts are focused enough that I can write and edit one in a single trip to the hair salon. All that's left to do is move the finished document from my phone to the website.

That's where SyncThing and Nikola come in. I write my phone notes in Obsidian, so they're already in Markdown format; and I use Nikola to turn Markdown files into web pages. So when I get home, SyncThing automatically transfers a copy to my desktop, where I have a script monitoring the blog folder. When any files are added or updated there, the script tells Nikola to rebuild the site and push it up to GitHub. I don't even notice that it's happening.

What this means is that I can devote those few minutes in the car to writing a blog post, and then forget about it completely. That way, my time at home can be put to much more productive use, analyzing data, researching new crops, or devising strategies to make the fountain more efficient.

Or taking naps. Not gonna lie, there's a lot of napping going on too.

Comments