I thought it would be a good post to explain why I have personal side projects. I have people often ask why I have these projects and why I spend free time writing more code after working on code all day at work. There are several reasons. The first and main reason is I simply love what I do. I enjoy the challenges of building something out of nothing.

Now these are just my personal reasons. There are many other benefits to having side projects. For me, having these projects allows me to learn and experiment with new technologies before using them in a production environment. Some of the best technical decisions I have made were based on what I learned during my free time. Working in the web industry everything is moving at breakneck speed. With new JavaScript and CSS frameworks coming out every week just remember everyone is trying to keep up as well. Pick something that interests you and just try it out.

Some side projects can be useful. One recent project I created was losemycookies.com. It is a simple site that shows users how to clear their browser cache and cookies using browser detection and gif animations. It was a fun little project that many people, including the customer support team where I work, have found to be very useful.

Other projects can be just goofy and fun. I learn the most about new programming languages by making games. Simple video games can really help dig into how a specific programming language works and behaves.

Whatever your reasons are for side projects make sure you share it with the world. Open source your code. Blog and share what you have learned. Side projects can be as serious or goofy as you make them. Just remember to have fun and learn something new!

Remember kids the only difference between screwing around and science is writing it down. - Mythbusters