Having other projects
posted under category: AZCFUG on December 24, 2008 at 1:00 am by Nathan
I know a lot of us out in the general work force really do a lot of work, and some of us put in way more hours than is healthy, but with the holidays being upon us, I'd like to suggest one thing: have other projects.
By other projects, I mean a personal project or an open source project where you can do what you do best, whether that's bean counting, programming or technical document writing, do what you do best and what you love to do (or at least loved to at one point), and do it on your own time outside of work. In having this other project, you give yourself a number of great opportunities.
First, you get freedom - be creative, do it on your own schedule, do it your way. Freedom ignites the passion you have for what you do. At work, you conform to rules, legacy problems, people problems, and things that make what you do not fun. Freedom from that structure makes things fun, and you can bring that fun back with you to your job, something everyone will appreciate.
You also get learning opportunities that you would never have when you're slaving away for a dollar. They want things done their way, and you have 2 hours to do it, while on your own time, you can try something new and it doesn't really matter how long it takes you. Be creative and come up with the best solution. Once you get there, you've probably learned something new. Keep at it until this becomes a point on your resume.
For me, I typically learn new programming frameworks and languages, and try creative methodologies that initially sound like they could never work. This eventually trickles down to work for me in ways that I thought never would. One of them was quite tangible in getting me hired at better places - the more I know, the more people want to hire me, and the more money they want to give me. I honestly didn't expect that. Strange, I know, I'm a little dense.
One of my pet projects is doing little things in C#. I find it fun and can't explain why. Playing with C# has made me a better programmer in general, as well as it has been able to solve some relevant issues in my day-to-day work where I use it for utility chores and small projects. I'm not saying that C# should be your project; I'm just throwing that out there.
At one previous company I worked at, one of the interview questions was about extra, non-work programming projects. This was literally one of the measures of how serious a candidate was at programming - if it was more than just a chore and if it bled over into a way of life. Lucky for me (... ?) you can almost never find me far from a keyboard, hacking away at something.
Finally, with completed projects, there's always the chance to monetize them one way or another. You never know if the project you've been kicking around has million dollar potential until you've put some real work into it.
Let me suggest some projects to get you started. If you like starting new things, make a personal web site, or one for your family. Be creative with where things come from (like Photoshop & Illustrator for design, your Flickr account for content, etc.). If you have one, be improving it. If you make something cool along the way, consider open sourcing it. If there's a tool you always wanted to use, make it. If there's some boilerplate code you keep re-typing on each project, make a real tool or framework out of it.
If you don't like starting new things, download code from an open source project, make a few improvements and send them in. Open source developers LOVE this. If they don't want to take the app in the same direction you're going, fork it and start your own project. This is a great addition to your resume as well.
In conclusion, I'm urging you to get a personal pet project of your own, or a few. It's good for everyone, most of all, yourself.