Side Project Completionism
April 13, 2020
Creating an optimal workflow for these lockdown times in order to complete side projects and feel productive.
I don’t think any of us could have foreseen 2020 becoming the year that it has so far with us only being four or so months into it. We all find ourselves in our homes due to COVID-19, with lockdowns that approach their expiry dates but inevitably are extended. It’s a tough time for everyone, I write this knowing that I’ve not left the immediate vicinity of my home for over thirty days. I’m lucky in that we’ve gardens that I can walk around in safety and that I’m not responsible for keeping tiny humans entertained while they’re out of school. I’m a tad bit unlucky in that I picked 2020 as the year I’d begin my solo travelling adventures around Europe. Sufficed to say, doing my best to stay optimistic on that front.
Nevertheless, I found myself needing to find some way of consuming a lot of the energy I find I generate in my day to day. Normally, I go into an office four days a week and work remotely the other day. Now, working remotely all the time means I do save time on commuting, but I also don’t spend nearly as much energy. Which inevitably leads to often feeling quite hyper during the day or the evening when I should be winding down. I’m not saying I want to be absolutely shattered at the end of every workday. But I should be in a better place where I can relax and feel accomplished.
This is where side projects come in to play. You know, those things that you write down and say you’ll get to eventually. Or when you start a couple of them, but never finish them because you keep starting new ones. We’re all guilty of some of these points, I know I am myself. Before this little completionism plan, I came up with, I had a list of around 90 projects all varying sizes and potential workload. The sort of, anarchy that was there before for working in progress projects was that I’d have five actives at any one time, but eventually they would become blocked. Blocked projects would increase, freeing up for more new projects to become active. Inevitably, you arrive at the classic situations I described above being experienced by yours truly. But if I can figure out a system that works for me, I very quickly have a near perfect means of consuming energy in a time where I can rarely expend it.
I decided to call it “Side Project Completionism” with the “ism” there for additional fanciness. This was in of itself a side project but given that starting this involved throwing out the previous work queue it was my only focus. To start with, I needed to figure out what would make this time different. I didn’t want this to just be another renaissance that we get from time to time. That sudden, free will that overwhelms you and feel like the world is your oyster and your side projects will now fear you for you will finally knock them out. But inevitably you just start watching Netflix again. So very quickly, here’s how I made things different at a high level. Anyway, here’s the system in play. On my review of this post, I decided to come back and say if you’ve any idea on how Agile works, this is very similar to that.
- Physical Tracking Board – I dug out an old whiteboard that I divided in to four sections and throw sticky notes on to with the project names. You may think of a Kanban board in your mind and while I get a lot of inspiration from that methodology, this is not Kanban.
- Daily Picture – Each day I’ve a recurring task to take a picture of the board, it’s irrelevant if there was no progress. It’s just to build up a log of what’s happened over time.
- Project Sizing – Each project I had at the time of starting this, was sized to a Small, Medium or Large. The sizes are intentionally vague. I’m not looking to deep dive into what’s going on, more so looking at the title of the project and deciding what it is. A blog post such as this is a small. Building out a new end to end CI/CD system is a large.
- Completion Verification – If a project is done, it should be independently verifiable so to speak. So, writing a public blog post, recording a podcast or deploying into production will count as a completed project.
- End goals – What’s the overarching objective of completing the side projects? Why do I do them beyond the sake of doing them? Coming up with this was very important and supplies a large chunk of my motivation.
On end goals, I do have one in mind. It is in fact the Mac Mini. I personally couldn’t justify buying one for the laugh, even when you don’t configure one it is quite expensive. But I do enjoy macOS for development activities and since I’ve entered the Apple Ecosystem already with my iPhone, there’s some compatibility pros there. To help, I employed a system where each side project size has a monetary worth, scaling up with size. A small project is only ten euro, while a large can be thirty euro. When a project gets completed (and verified that it’s completed), I can then move that monetary worth in to a sub account with my bank. The sub account is configured with a savings goal equivalent to the Mac Mini configured as I want it to be along with accessories. So, I can see the percentage saved so far. The other main end goals include just entertaining myself when I get bored by challenging myself in new ways. Along with just wanting to learn new things.
All in all, the new system works as follows.
- Side Projects live digitally initially as Issues on a Github Project Board, with labels to indicate their size.
- The physical project board is limited in size in both physical size and the number of projects on it at any one time. I try to limit in progress to four, to do can have up to six. Blocked is also limited to four while the Done section has no restriction with the idea that I’ll see my progress visually over time. Although I’ve found the lifetime of the sticky part of sticky notes to be questionable. Blocked was also redefined to mean as it should in that I am physically blocked by just simply not having a clue as to what’s going on. Not that I want to work on something more interesting.
- Projects get worked on and eventually completed. Meaning that they need to be verified as done. As mentioned, that’s usually a blog post, but that also counts as a Small side project.
- Invariably the system rinses and repeats since there’ now a loop of work present. It means that on a good day, my pace will ramp up meaning more projects get thought of, they get worked on, more content gets written or talked through, more energy expended in a rather productive manner.
The natural question is, does the system work? Well, you’re reading this post talking about (so the project itself and the post itself means its two side projects). You’re reading it on a new website that I released a few days ago in it’s 1.0.0 form, built using Jekyll (another project that will need a blog post). The website itself is served from a brand new, container-based platform on AWS (another project with yet another blog post to be made). These now all need their own posts on this blog for their verification! But all in all, I feel far more productive and most days I feel very accomplished and relaxed in the evenings. It’s great to see a very long list of side projects very slowly getting whittled down. I’ll be sure to post some stats once this lockdown is over and maybe a picture or two of the new Mac Mini when I get it eventually.
Thank you!
You could of consumed content on any website, but you went ahead and consumed my content, so I'm very grateful! If you liked this, then you might like this other piece of content I worked on.
Making a doorbell with Philips HuePhotographer
I've no real claim to fame when it comes to good photos, so it's why the header photo for this post was shot by Mark Fletcher-Brown . You can find some more photos from them on Unsplash. Unsplash is a great place to source photos for your website, presentation and more! But it wouldn't be anything without the photographers who put in the work.
Find Them On UnsplashSupport what I do
I write for the love and passion I have for technology. Just reading and sharing my articles is more than enough. But if you want to offer more direct support, then you can support the running costs of my website by donating via Stripe. Only do so if you feel I have truly delivered value, but as I said, your readership is more than enough already. Thank you :)
Support My Work