Open Source - Why Do We Do It? 378
mikosullivan presents us with a unique opportuinity: "This Saturday, Sep 8, I have an appointment to meet with Congressman Rick Boucher to discuss open-source software. I made the appointment after talking to the congressman at a town-meeting here in Blacksburg, VA. During our short talk he asked a question that (not being a particularly talented public speaker) I found difficult to answer: why do open source software developers devote their time and talents to something they give away? That's the question I'd particularly like to answer: why do we do it? Answering this question may be the key to resolving public FUD about open source. This meeting is part of the
opensourcelobby.org efforts."
Returned value (Score:4, Informative)
About that time, on a whim I picked up a book which had a Linux CD in the back. I installed it, played around a bit, and I've never looked back.
Now you can only imagine the complete lack of functionality my home brewed OS would have had relative to Linux. But with Linux, I have all this amazing functionality, and with all the control and ability to change things I would have with a home brewed system; the only caveat is that if I do make an improvement, I should contribute it back to the community. That is a small, small price to pay for what I'm receiving.
As well, how many people have the time to write a system like Linux on their own, even if they have the knowledge? Not many. But by being willing to contribute what time they do have to a larger effort, they get a far better system than they could ever hope to have otherwise. Practically speaking, it's a no brainer.
Homesteading the Noosphere (Score:3, Informative)
We relate that to an analysis of the hacker culture as a `gift culture' in which participants compete for prestige by giving time, energy, and creativity away.
Because I want to help mankind. (Score:5, Informative)
I know it sounds corny, but it's true.
I want to do something bigger than myself, something that has a real potential to help people in a serious way. I want to leave behind a legacy of good will when I'm wrom food.
I realize that programming free software is perhaps not the most noble thing one could possibly do, but it is what I'm good at. Free Software gives me the ability to use my skills as a programmer to do something really great, even if it is small in the big picture.
Laugh at it if you want, but that's the reason I write Free Software, not because of ego, or because I can, but because I believe that I am helping people --and that makes me feel good.
Very simple (Score:4, Informative)
IMHO, there are only three real reasons why people contribute to Open Source:
Why do we do it? (Score:5, Informative)
However, in my experiance and perspective, the folowing factors play a role:
* Learning abilities in Universities teaching OS design need good tools and source to show what an OS is, does, and develops over time. Linux is an obvious posibility here
* Learning to program. A newbie programmer (taking classes, or as hobie) need a furtile ground to learn the tricks of the trade, they also need skilled people they can questions, and they need 'real life projects' to truely get into it. Ofcource open-source provides all of the above. Gnome for C UI programming, KDE for C++ UI programming, and all base GNU tools for low-level C coding.. Also, linux offers a wide range of languages (from bash, awk to fortran, pascal, c, c++ and java)
* Peer review. People love to hear they are genious. People love to be apreciated for there work. Open source offers the posibility to achive just this.
* 'The itch'. A populair expression in open-source development, often cited as a big reason. if one is using a program which is 'almost right', but has this one anoying bug, or this one feature missing, in open-source it is quite 'easy' to fix it, or add to it. Basicly it allows to 'scratch that itch'.
* Security. Many people are afraid that bugs will be left unfixed in comercial products (and not be able to do anything about this, see above). So they prefer software where many other hackers have looked at. Also the chance of back-door's are a lot less likely in opensource projects, its very difficult to hide virii or back doors in source code
* Political or ethical points of views. The its-not-microsoft factor can be important to some people. They hate the bloat, or the blue screen of deaths, or just think bill gates is not a nice person.. Whatever the reasoning behind it is, they think 'big comercial company' is bad and 'underdog' is good.
* Support for standards. Open source almost always creates open standards. Allowing, by its very nature, the competition to build a competing product, which is interchangeble at any document or protocol level. You would 'never' see a open source project create a 'properitaire standard', or modify existing standards without publishing every bit of documentation and source code. Remeber, this is how TCP/IP, ethernet, the Web, ftp, dns, etc came into existance. Had these been closed propriatairie standards, the internet as we know it would not have existed!
* Innovation. By its very nature, open source stimulates a darwinistic development. Several projects who achive to do the same thing, and the best one will recieve the most support and resources, thus growing faster and getting even better. It also allows for totaly new and crazy idea's to be invented and implimented, and who knows, it might be genious, and catch on like wild-fire.. Many big companies try to simulate this in 'brain labs', but they will never achive the same level of darwinistic development, since the company can only release one product, and has to 'play it safe'
* Cost. linux and many powerfull tools that run on it, is free. For home users, students and poor people alike, this offers the only choice to have a good computing platform. For other people it just saves a lot of money
* Support. There's a lot of support (mailing lists, open bug systems, friendly helping people) available for almost all linux software. This makes learning and using a lot easier.
* The ability to 'Change the world'. An individual can not steer the direction Microsoft or any big company is going, and thus cannot control the direction of computing in general.. In linux they can! By being able to contribute idea's and write your own versions of tools, or invent new ones, one can now 'steer' the way computing will work in the world. So it allows an individual to 'matter' in the bigger picture.
* Last but not least
Anyways, i'm sure there's more a lot of other points out there, but for me, these are the reasons why i like open-source development.
Very Practical Reasons (Score:2, Informative)
Re:Sir Edmund Hillary (Score:2, Informative)
The author of the quote "Because it's there" was George Mallory [xnet.com], not Sir Edmund. Mallory died trying to climb Mt. Everest in 1924.
A complete statement [willerup.com] of Mallory's view suggests that it does not really apply to writing software: "The first question which you will ask and which I must try to answer is this, 'What is the use of climbing Mount Everest ?' and my answer must at once be, 'It is no use'.
Software is primarily and above all, useful.
However, Mallory also says: What we get from this adventure is just sheer joy. And joy is, after all, the end of life.
Sometimes I think this view applies to writing software and sometimes I don't.
Two Reasons: 1) I Respect Trustware... (Score:2, Informative)
So, when it comes to writing software, which (to me) includes designing as well as implementing it, naturally I want to add to the body of trustware that's out there, so other people will respect my software too. (And I recently read a little note on the G95 website that suggests, hey, maybe some of them do, despite all the faults in g77.)
2) It's "My" Code...
Examples of what developing GPL'ed software allows me to do, that developing proprietary software does not allow me to do:
There are plenty of other reasons, already given elsewhere, like "making the world a better place" and stuff, but these are items that often don't get mentioned, or valued, in such discussions, and which "young" programmers, such as those just starting out in a proprietary-software company, might not have thought through. (E.g. all that code they wrote the previous few years becomes nearly useless to them the moment they get laid off or quit -- they got paid $$ to write it, but that's pretty much where the relationship ends.)
When it comes to having people know about the software I've written throughout the years, no question that g77 far outranks anything else I've done, since comparatively few people ever, e.g., used the BATCH subsystem under PRIMOS, read the Pr1me "Advanced Programmer's Guide" series, etc.
And when it comes to my occasionally wanting to hack on some software with which I'm familiar, the only software I worked on to which I presently have such free access is g77. It represents probably only 20% of my career output to date, that figure depending somewhat on whether technical docs are included, but it's the only large free software (and documentation) I've written.
All that other software and docs? Swallowed up in failed and/or bought-out-and-then-shut-down companies, and, since I didn't have the rights I have with GPL'ed software, it's basically all gone, regardless of its usefulness.
Free software, on the other hand, is likely to disappear from the face of the earth only if it is truly found to be useless. Even marginally useful free software will likely find a haven in various archives around the world. Authors of really useful free software needn't worry about backups -- as Linus once said, just put your latest hacks up on your website and let the rest of the world mirror it!