I received an e-mail from a buddy informing me of a likely, but involuntary, job transition. His situation made me recall a primary reason I prefer to work on Open Source projects: Free will.
The funding from our grant will run out at the end of the month and therefore my employment is a bit uncertain at the moment. Many forces are working hard to secure more funding, so I don't know when my last day will actually be.
It can be frustrating when you invest a lot of time, energy and creativity into software project, only to find out one day that you can't work on it anymore, either because your contract has expired or the funding for the project runs out. While you earn plenty of paychecks and experience from the project, what do you really have to show for it? You're forced to walk away without your creation, left only with memories (and whatever code you managed to transfer to that flash drive).
Of course, we all have to make a living, so working on proprietary or internal software projects is inevitable--some may even say a necessary evil. I've been in jobs where I felt like one brain in large matrix that feeds the company's information technology. But a job is a job. The company is paying you for your work, so you should certainly work hard if you value your career.
But you don't have to leave it all behind when it's time to move on.
Reserve your most passionate work for something you can control. In my talks, I often encourage developers to go home and create an application for themselves. It's yours for life and you can design it however you want. But there's something even more satisfying than working on software alone - working on it with others.
Why not get involved in an Open Source project so you can collaborate, share ideas, build reputation within a community and learn from each other? What you end up with is something you collectively own that's likely better than anything you could create by yourself. More importantly, you can show your contributions to anyone at anytime.
While you may be forced to let go of your investment in a company's software project, no one can take away your open source contributions. Your contract with Open Source never runs out.