A well respected professional programmer, who had written a driver for an ethernet card, was asked why he would devote his spare time to write this driver and then give away the code under the GNU General Public License (GPL). The point the inquiring person tried to make was that this programmer must be crazy, doing a professional job and giving away the code. His answer (well, paraphrased anyway): "I put in a few evenings of work, and in return I get an 80MB Operating System for free, including the source code, and you're telling me I'm the one who's crazy??"
Basically, to develop code as OSS means that developers can work together to create software that is much more powerful and capable than they could have created alone, and the GPL ensures that they will always have access to any further improvements of their code. So if you want to fill a need, the GPL is a great way to get others to contribute to your code; they too will forever be able to profit from their own work. This explains why it is (was) commonly said: "OSS developers write code to scratch an itch," other developers are welcome to join in. On the other hand, if they like their program and a mere user doesn't like it, tough luck. There's not always enough incentive to improve or modify once the developers of the program feel that it suits their needs. There have been some changes of late, in many projects the developers have shifted their aim to develop the best possible solution/implementation. The Linux kernel development is a good example of this, but also high profile projects such as as KDE and GNOME. Also, more and more OSS developers are actually getting paid to work on their projects professionally, although they are still a minority. Note that payed developers on one and the same project may well be payed by different companies, for instance 2 (competing) Linux distributors. They still work together to make their project the best it can be. The FLOSS development shows strong contrast with closed source or proprietary software development, that in most cases is just a means to an end: namely to generate the highest possible income and to ensure the ability to do just that in the future. One company very good at that is Microsoft. For those companies, it would almost be the end of them if they would create and market the perfect product (if such a thing could exist). Imagine an Operating System that never crashes and fulfills all tasks perfectly, and the management talking with the designers: "so, what can we design and sell next"? Of course, this is too naive a situation sketch, but still. All the proprietary software makers have to do, is make software that is merely 'good enough', which in some cases is quite abysmal. With a bit (or a big load) of lock-in, they have found that their customers (often large companies) are willing to put up with a lot of things. But this article is not about proprietary solutions, so I'll save that criticism for some other time. The point I would like to get across is the following: OSS developers are giving the fruits of their efforts away for free, for all to use. Most of them do not get paid for their efforts, or at least, not by you. They often do aim to make their program the best it can be. So your complaints may not always be welcome, but your bugreports (especially of reproduceable bugs) very often are. In many (most?) cases, extra developers are welcome to join a project. You can contribute in other ways too, if you're not a (good) programmer, you could help out with the translation or the documentation. Check the project homepage for these kinds of things. Sometimes, financial or other donations are possible. OSS is free of charge, but money makes the world go round. If you like some program/project, please think about contributing to it. If you like your distribution, buy a copy or, in the case you use and like Mandrake Linux, become a clubmember. If you don't have the money to spare, contribute in any other way: by promoting the use of OSS, by writing code, writing and / or translating documentation, helping (supporting) people in real life or on mailinglists, forums, etc.
source: www.mandrake.tips.4.free.fr
|