For quite a while I didn’t have any programming-related side projects. This was a bit of a problem when I was presented with new opportunities because, invariably, I would be asked about what kind of work I could show off. This was difficult – everything I work on at my day job is proprietary and very specific and, most importantly, not owned by me. None of it is customer facing! Essentially, they just had to take my word that I wasn’t a ridiculous doofus pretending to be a programmer and that really isn’t working from a position of strength.
An additional problem is that I had other things I was doing after work, because continuing to program after I was out for the day wasn’t high on my list of things to do. It’s not that I don’t love development, it’s just that after several hours of it during the day I was prepared for and desirous of a context switch.
Pictured above: some very fine context switches from programming.
This changed when I developed Rainfall with Luke (who may or may not be writing some articles about his work on the project soon). I’d finally gotten my bicycle-and-guitar-related endeavors to a point where I felt comfortable turning my attention to writing some software after hours. While getting it deployed, I had a realization that changed how I viewed side project work:
A side project that you can show off demonstrates that you have, at least, bare minimum competency in the various tasks that a development job would require of you. Midway through setting up the database where Rainfall is hosted (so I could log errors), I suddenly thought about this from the perspective of an employer and understood how much value this has.
The second thing I realized is that it’s not terribly difficult to combine my ability to make applications with other things that I like to do. There is value in being able to make those kinds of connections because they make you a better developer – Rainfall is very much us eating our own dog food, and that’s great because it’s a position I don’t often find myself in at my current job, where I’m trying to coax machines to talk to each other or doing some data-related analysis work. In both of those situations, I’m not really the end user. As illustrated above, however, I am a pretty avid cyclist. Easily discovering whether or not I could ride somewhere, given the previous few days’ weather situation, was immensely valuable to me.
At this point, Rainfall is turning into a really wonderful project, chock full of useful lessons. Especially since I took the opportunity to build some interesting things that I normally wouldn’t have had a reason to work on, such as the Rainfall Blog. We’re about a week away from the updates I promised originally in November, and more are planned after that. The biggest thing coming is a completely new look to the user interface that takes it, ideally, from looking like a one-off project and turns it into something a bit more polished looking. Depending on when you view this, it may still have the old brown-and-blue scheme that was in sore need of an update. If so, we promise, it’s changing soon!