I used to be a (sad) freelance PHP developer with some front-end skill working for tiny to small local companies. The best gig I had at the time was for a video games distributor here in Italy. The client was great but the job admittedly boring and sometimes even frustrating.
I knew I had much more to give and I was feeling like trapped into quicksand.
The single most important decision in my career was to start developing open source software (OSS) and blogging about it. I started from silly things such as a PHP clean URL generator or the onClick delay removal and I ended up with iScroll and the Add to Homescreen widgets.
I picked for them the most liberal license I could find (MIT) and companies from all over the world contacted me asking for customization and new features. My hourly rate was around $60 and I had to raise it on a daily basis because I couldn’t keep up with the increasing quote requests. Now I’m still a freelancer but I work for Microsoft and Google and my rate is at $150/h.
Open source increased my visibility but it’s not just a matter of pageviews. Open source makes you generally a better developer. It forces you to compare yourself with other developers and that’s the best workout for your coder’s brain.
OSS probably made me a humbler developer, too. I know what it takes to patch even small portions of code and I’m less harsh when posting bugs on others’ repositories.
But that’s just part of the story.
You do not release OSS just for fame (and money). Maybe at the beginning that was the intention but once you get involved you understand that you are doing much more.
Countless people are using your code, you are helping star-ups getting on their own feet, you are potentially creating new job opportunities. With maybe 48 hours of your life you could possibly help dozens companies and their employees. A guy made a WordPress plugin that was basically a PHP wrapper for my Add To Homescreen and he raised $50k+ out of it (maybe more by now). You may think that I’m mad with him, but I’m actually pretty f!#*&g happy for him (and all his users).
Also, the more I develop open source the more I appreciate other open source software and get addicted to it. I understand what it means to code for security and, most notably, the importance of user (and my) privacy.
I was an avid Apple user because it’s all nice and tidy and it just works, but maybe there are more important things than a fancy interface and a pixel perfect gradient. I’m now using Apple products just for testing and my main rig is Linux.
I can safely say that Open Source made me a better man and encourage you to release your code under an open source license, because if it worked for me it will very likely work for you too.
This post has been translated into French by Framablog.