There seems to be a lot of confusion around side projects as more and more people are moving from 'corporate jobs' to start-ups. I made the move to start-ups nearly 5 years ago (after 2 years in a corporate job) because the idea of side projects to my employer was so foreign -- they thought for some reason they owned everything I created, at any time, ever (sorry, no). I learn by doing, as many people do. Side projects are an amazing way for someone to set an end goal and force themselves to learn a new technology, method, and/or to experiment.
With the number of tech start-ups increasing drastically faster than the number of engineers available, we've all started attempting to tap corporate talent. It seems as though, coming from outside the startup world, side projects are looked at as a distraction, and often get the "shouldn't you be working on ___" looks/comments.
Maybe its just where the line is drawn? I've heard many opinions on the topic, and I see a spectrum with two clear ends:
- You build an app that never leaves your computer, and purely alleviates your own curiosity
- You build an app that goes as far as being in a production environment, and accepts money from users
Personally, I have projects on both ends of the spectrum, and a few in various places in between. My typical thought process goes something like this:
- Find new (to me) technology that looks cool, and in some way useful
- Figure out a way to use that technology in very useless way (process log files, backup photos, send reminders)
- Look at what I've built, think through how it might work with an app in a more useful way
- Build a new application using what I learned. This allows me to implement the new tool without issues from existing code and allows me to understand a bit more of the intricacies and possible issues I'd run into if incorporated into a production application
Sometimes I stop at 2, sometimes I stop at 4, a few times I've gone further and implemented my newfound knowledge into the app I am "employed" to build.
Lastly, there are times that things I build in step 4 live on, and receive attention from me -- including updates and marketing. I have a few that I use for personal use and a few people have picked up so I keep live. There are others that I use for experimenting with marketing and user acquisition techniques including ads, emails, word of mouth, forums, etc., and sometimes I just think they are cool.
At the end of the day I have a single application that gets my attention, and the things I build, experiment with, promote, and use, are learning tools -- Science Exchange wouldn't be where it is today with out side projects (among other things). Engineers, how do you use side projects? Employers, how do you look at side projects?