Software Imagineer's blog

Walking through the death valley of unfinished side projects

Sun Mar 26 2017

My side project game is at its all time low. Maybe I am using unhealthy comparison with myself during college years when I did not need to care about grownup stuff. But only shipping a tiny, two page app per year is sad. Strange part is that I am still constantly hacking on side projects, nothing has changed there. Where are those projects now? Oh, right, they have been abandoned before reaching “shippable” state. After some retrospective on previously successful and failed projects I think I have found why this is happening.

Stuck in analysis paralysis

Spending too much time thinking about the best technical solution. There is no need to think how the solution will scale when there is only one user — me. Facebook was built with PHP and plenty of companies started with Ruby on Rails. What was my reason for using Go on Google App Engine when Python had superior support and prototyping took half the time? Geeking out on new language, I guess. The best technical stack is the one which gets You from zero to production the fastest.

Raison d’être

Creating projects that have no clear reason why they should exist. There is nothing wrong with creating one more JavaScript web framework. But as a bare minimum the new framework should have at least one novel feature. And that feature should be the first thing implemented and shipped (think Minimum Viable Product). If the feature does not bring anticipated value, then there is no reason to build the rest. I somehow have forgotten about S.M.A.R.T goals.

Context switching

Juggling too many projects at the same time. Switching between projects is mentally demanding and turns out to be counter productive in the end. If I am stuck on a project, I am way better off going for a run than stuffing my brain with a different problem.

Action plan

Following my short retrospective I have devised an action plan for 2017. Start projects with one clear use-case or hypothesis to test. Define what MVP should look like Pick the most straight forward way to implement the project If MVP isn’t done, don’t start a new project. Get in into habit of following though from start to finish

I have already made some good progress following my plan, so stay tuned for more posts about my projects.