Ah, the often mentioned "work smart, not hard". As well as "not invented here"...
I had set out to re-launch my blog. Somehow, in my enthusiasm, I ended up writing a static website generator almost to completion. The only two remaining topics were the two topics that most looked like work instead of hobby. Though I love both learning and programming, there are limits to what I will do in my free time. The remaining work lead me to thinking about how I could reduce the amount of work by scrapping features and by intelligent reuse of software projects I had already lying around. That was probably the first time I approached this new hobby project as a serious project, and the flaws in what I was doing immediately became clear to me.
Instead of doing things that I find challenging such as writing an interesting and readable text and then putting that work out there to be seen, I was doing something that I find easy and enjoyable; I was using my blog as a reason to refresh my shell scripting skills. Another flaw in my approach was that I had not approached the blog re-launch as a serious project and had not done some things I always do when I do work for someone else.
By working hard instead of smart after failing to create any type of design document and keeping every idea in my head. By deciding not to use existing tooling because they are not as fun and flexible to use as I thought my own static website generator would be. While trying to use my own static website generator for this re-launch I found plenty of remaining work which refute those points; the last 20% of the work tends to be as much work as the first 80% of the work.
Luckily I did set a deadline for the initial objective, the re-launch of my blog, which has not been delayed by much. The question is now which road to I will take; will I continue on with my own static website generator or will I use Pelican again like I am doing with my current blog. (Edit: I am using Pelican now and I do enjoy it.)
Either way, it was a refreshing learning experience. It was all on me and there were no external factors that could be blamed. That makes it easier to learn from the situation than in most situations that arise on the job.