An Open source developer profile?
I presume that a lot of professionals in big companies, when they go back home, have an envy to create code in the same domain of competence or in a new one, maybe it is their hobby, which can be mixed with their computing knowledge, or they use a program to solve, help them in their hobby . It is the case for me.
I am a java developer, working in a swiss insurance company, and doing some PHP code for FUN and because I STILL consider it RELAXING. It has also permit me to learn a new language: PHP and make me a name in the joomla community, the site counter of this page (1.2 Millions visitors and counting), the number of weekly mails is my only salary. I have a well paid job that's true, and it allow me to offer a part of my free time and code under the GPL license. What would had happen otherwise? I think I would have sell a limited number of user of licenses, and may have stop the support one day...
Reality in a gray zone in huge projects
While I agree that at some point any open source project which has million of lines of code, will require so much professionalism, release management overhead, architecture vision, or manage its internal complexity that it wont be possible to achieve big milestones without a lot of professionals backing up the project. Eclipse.org (where IBM which has injected 1Bn dollars) is a good example of what big companies can do to help such major project..
Why making my code open?
Open source is different, open source will allow any future maintainer to take my code, reuse or enhance it. My code will or may never die if it is still useful. Something not possible in closed source relationship, where the code may be bought at some time by an evil company, and killed.
Open source has been clearly an advantage in the development model of my Joomla components. Lets take securityimages (a CAPTCHA framework), I've develop the first plugin named core, and integrated 2 other well known open source plugins. FREECAP and HNCaptcha (Both GPL). While using them and looking at their internal code, it has help me improving my core plugin, using existing and well stable code, has pushed the overall quality, stability at a fraction of the cost: no licenses except keeping the copyright header untouch, it has only cost me time to integrate them!
Open Source do not mean that You can take my code away, my code is still copyrighted, You can not remove the GPL header or Credits text, The only way to close this code now, i to take my GPL code away and rewrite this code in Your own way.
I assume nearly every open source developer has its own reasons, but I've mainly develop code because:
- I have had to solve concrete problem on my homepage: fighting spams. Nothing was existing at that time to solve my problem under Mambo and now Joomla,
- Ive learn a lot at looking at someone else code, and I am now receiving some patches by emails from other developer around the world, translation in foreign languages, individual give their time back because they also see the advantage of open source: You can really get in contact with the main developer and influence the list of new features...
- I want to give back something to the community in a whole, Joomla, but also Linux which is powering my 2 PC since 3 years, and so many others tools I daily use and appreciate.