I'm a big fan of side projects, they're my favorite way to teach myself new things, like trying a new language or framework. Up until recently, I've never been great at launching my side projects, though... they were always something I just toiled away with until I had the knowledge I wanted, then I'd ditch them.
A few months ago, my wife and I were sitting around talking about some ideas for a new side project that we could work on together. It was the first time we were going to be working on a project together, so we wanted to make it about something that we really enjoyed. We weren't exactly setting out to disrupt an industry.
At the time, I was also really interested in learning more about how to implement Elasticsearch (via ElasticPress). I am always trying to push myself beyond just the standard front-end stack, so that I can better understand how everything works together.
Choosing a Side Project
Out of those discussions was born HikeColorado.org. It's the perfect marriage of our passion for hiking and photography, with my desire to learn something new.
Now, the funny thing is that we ended up building and launching the site and I've still not yet gotten Elasticsearch implemented. I ran into a bunch of little issues with box permissions and things (my DigitalOcean box actually got locked because they suspected I was using it for spam... Needless to say, I'm not exactly a systems engineer) but it's still on my 'to do' list.
Shortly after we launched, Justin (who has been my best friend since 6th or 7th grade) joined us as a writer, because he's also an avid hiker and backpacker.
I signed up for a few affiliate programs and let it run. While it's still not earning any money, traffic is starting to grow.
Continuing to Learn
After we launched that site, we started thinking 'well, we love snowboarding, too!'
I've also been really keen lately on learning React... so we set off on a path to build a new site, dedicated to skiing and snowboarding, that is entirely powered by a single-page React application.
The new site, which will be launching in the coming weeks, was an opportunity for me to learn more about combining the WordPress REST API with a single-page application. The site uses WordPress, set up on a subdomain serving up the necessary endpoints, with a super snappy React experience. I'll be writing more about the process of building that site soon.
Learning the Lesson
Don't be afraid of side projects... they're an excellent opportunity to learn. Some of the most valuable of the things that I've learned in my career have been learned through side projects.
My old WordPress theme shop started as a side project, taught me a ton about WordPress, ended up getting bought out, and was a big contributing factor in my ability to land the job I have now.
Side projects may not always be immediately profitable, but the investment in teaching yourself new things will always pay off in the long run.