Side projects are not just random diversions: they are a critical skill-building and rejuvenating activity everybody should actively participate in.
Programmers are especially keen on little side projects. The act of programming is, quintessentially, creating shortcuts to doing something. Many programmers got their start making little scripts to make their lives easier. Any time a programmer finds himself having a hard time doing something on the computer, there tends to be a little nagging voice saying “could this be easier?”
What is a Side Project?
But side projects are not specific to programmers. Here’s how I’d define a good side project:
- It starts with an inconvenience
- It takes the form of a hypothesis
- It can be completed and tested in a short period of time
What’s interesting is that the best side projects are actually within the same field you specialize in. They’re opportunities to explore, test and refine. An author might write a short story to try a new narrative technique, or a manager might shuffle office organization to see the impact on moral. In short, they’re mini-experiments.
Why are they So Useful?
Research has shown that the most important aspect of improving at any skill is the feedback loop. The faster and more accurate the feedback that is given, the more metacognition is allowed, which means that better corrections can be made, which is the groundwork for growth.
The most recent article of Scientific American Mind (one of my favorite magazines) was a special on the topic of genius. One of the most common attributes that each of the contributors mentioned was the fact that geniuses seem to have an insatiable need to fiddle with things. When an idea pops into their minds, they explore it by trying it out and seeing what happens, a curiosity which leads to creativity and, indeed, genius.
Think about it: in your job, how often to you get to test something really new and different? If you’re a programmer, when do you get to use new languages or tackle areas outside your expertise? If you’re a chef, how often do you make things not on the menu, with foods you don’t know?
We plateau in skill not because we cannot get better, but because we have reached a level of “sufficient competence” known as the “OK Plateau” (more on that below).
My Recent Projects
I’ve been taking notes and writing character sketches, outlines, etc. which will ultimately lead to a novel I want to write. I don’t expect to sit down to write the book for many months to come, but I’ve been building up an aresenal of all the knowledge, ideas, and techniques I’m going to use to write it. In reading the latest book for research (“Moonwalking with Einstein“), I came across the idea of the OK Plateau. This led me to create OKtypist.com in a single afternoon to help improve my typing.
Today, I was working and I was frustrated by the fact that one of the Firefox extensions I use a lot (“Live HTTP Headers”) does not exist on Chrome (my preferred browser). So I ported it:
The pursuit of my job, desire to write a novel, etc. led me to create these projects. They were quick and fun, and I got what I wanted out of them (enjoyment, validation of a theory, etc.). To my surprise, OKTypist is already being used by thousands of people! What is significant, though, is that none of these projects take a lot of time: they’re designed to be done quickly. The point of the side-project is to create a sort of MVP (Minimum Viable Product), eschewing all complicated decisions to create the most simple and effective version of the idea. Like any good experiment, you’re limiting the number of variables to test a hypothesis.
Do you have any recent side projects? What did you learn?