Slashdot Mirror


Open Source - Why Do We Do It?

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."

26 of 378 comments (clear)

  1. Two reasons to kick off with... by Simon+Tatham · · Score: 5, Insightful

    ... well, I suppose they're related reasons really. But anyway.

    First reason: suppose I have a problem with a computer, which needs code written to solve it. Once I've written the code and solved my problem, it seems a little unfair to make everybody else have to write their own solution when there's already one here. So I give the solution freely to friends who ask for it - and it's only a small step from there to putting it on a website for everybody.

    Second reason, which I suppose is implicit in the first: I get a kick out of feeling I've benefitted everybody. Not just those people who pay for my code, to the feeble extent the licence agreement permits them to benefit; but anyone with a web browser who wants to download useful stuff off me. By contrast, when I work at my day job I'm always conscious that I'm primarily working to benefit them, and that any benefit that comes to people outside the company is a necessary side effect and not the actual goal.

    (Yes, I know I'm not benefitting absolutely everybody, because there are people who don't have computers, or don't want to do the same things as me with their computers, who have no need for the stuff I write. Doesn't bother me; what I like is the idea that anyone who wants my stuff can get it. It's not necessary for everyone in the world to want it. People who don't want it don't have to have it, and hey, that's cool too :-)

    1. Re:Two reasons to kick off with... by Barney · · Score: 3, Insightful

      A thought that this comment gave me was "why do people make web pages?" Personal ones, that is. I've seen amateur journalism, fan sites, etc., that took hours of learning and labor. And people put them out there for everyone to look at and, hopefully, benefit from.

      Some elaboration:
      People make web pages to express themselves. To spread information they think is important. To let others know who they are. To conveniently provide something to people they know (family photos, for example.) Because they want to learn how to use an exciting new technology.

      I think all these reasons apply equally well to open source software. Of course, there are other reasons too, but I think perhaps the analogy might make "average people" think about it from a new perspective.

      Bob

  2. One word... by Kombat · · Score: 4, Insightful

    Ego.

    People write free software for the same reason they want nice cars and big houses - so people will notice and envy them. Not that there's anything wrong with that, but it's no big mystery.

    Quite simply, people write software of the highest quality they're capable of, then give it away, in the hopes that it will become popular, and they'll become a household name (even if only among geeks). People want to be able to go into an IRC channel, or make a Usenet post, and say something like "Oh yeah? You're saying I don't know anything about software? Well, you know vi? I wrote that."

    --
    Like woodworking? Build your own picture frames.
  3. because not everyone is money-motivated by jbarr · · Score: 2, Insightful

    We do it for the challenge.
    We do it for the sense of community.
    We do it because we are altruistic.

    These are definatly not motivating factors in the business world.

    --
    My mom always said, "Jim, you're 1 in a million." Given the current population, there are 7000 of me. God help us all!
    1. Re:because not everyone is money-motivated by radja · · Score: 5, Insightful

      And we do it becaus it means less time spent reinventing the wheel. over and over and over again, Open Source projects have allowed me as a developer to roll out stable and working applications for the company I work for. Applications with few bugs, most of which can be fixed easily and quickly either by my company or by the maintainers, resulting in higher quality software for less time spent. We want the best we can get, and the only way to know is to look under the hood and tweak the engine to maximum performance, minimal sound, or best fuel-consumption. Open Source allows us to do just that.

      I just have to wonder... is the same question asked of Microsoft.. why do you close your source?

      //rdj

      --

      No one can understand the truth until he drinks of coffee's frothy goodness.
      --Sheikh Abd-Al-Kadir, 1587
  4. Why do charities exist? by bluGill · · Score: 4, Insightful

    Why does one friend of mine spend a couple hours a week visiting a couple prison? He specificlly is visiting prisoners in for life without parole, they didn't know each other before hand, and they are not relatives.

    Why did one guy I work with spend one of his weeks of vacation in Mexico with habbitat for humanity building houses in Mexica? He doesn't speak spanish, has no mexican roots, Mexico is 1000 miles away, and he went in summer, not winter when you would want to leave home.

    Why does my dad run the 4-h food stand at the fair, and then take the money he is paid for that and donate it back to 4-h?

    Open source by comparition is easy, I need a program, and by going open source I get others to help me with it, making it better. Its not about non-programers using it (note that bug reports are useful and put you as part of the process), it is about programers doing something that alone they would take longer to do. Unfortunatly this obvous answer is wrong, open source has the same reasons at the root as the others.

  5. Lots of reasons by dant · · Score: 3, Insightful
    Altruism is certainly part of it, I think, but there are many reasons:
    • Fun - A lot of us just plain like to tinker with our computers. Having the finished product is often less important than the act of writing it, so you may as well give it away when you're done.
    • Satisfaction - It's a bit of an ego-stroke, having something you've written be used by lots of people all over the world. That's how you know you did a good job.
    • Politics/Advocacy - Geeks can get pretty passionate about The Way Things Should Work. As programmers, we're uniquely able to actually make things work the way we want (at least on a practical level) sometimes. We'd be fools to pass up that chance.
    • Altruism - This is the most obvious one. Most people want to feel that in some small way, they've made a contribution to humanity. Writing a nifty little tool and giving to the world is hardly curing cancer or devoting your life to starving people in Calcutta, but it's something we can do that contributes (in however small a way) to the progress of technology as a whole. How could you not?
  6. the canonical answers by dutky · · Score: 3, Insightful
    My top five reasons are:
    1. to scratch a personal itch (you need the software for something you do)
    2. contractual obligations (you were funded by public monies, you are under court order, etc.)
    3. as a value added item (drivers, utilities, etc. related to a primary source of funding)
    4. for instructional purposes (programming tutorials, prototypes, etc.)
    5. for the fun of it (my favorite reason)
  7. Turn the question around... by Ami+Ganguli · · Score: 5, Insightful

    Politicians make a decent salary, but generally much less than they could make in private industry. You might just as well ask the congressman why he puts his time and energy into public service.

    The answer is probably similar for Open Source/Free software people 1) there's a certain satisfaction in doing something you feel is worthwhile, 2) the desire to leave the world a little better than when you found it, 3) recognition by your peers is very motivating, 4) even if you don't make money directly, it can help with your later career.

    Another thing to keep in mind is that most of us entered the IT field because we have a passion for the technology. The reality of most corporate work is that we never get to do the really cool stuff that we dreamt about in school - real work is pretty mundane. Working on something more interesting on the side lets us do the stuff we dreamt of doing when we entered the field.

    --
    It is tempting, if the only tool you have is a hammer, to treat everything as if it were a nail. - Abraham Maslow
  8. Why do we do a lot of things? by Matey-O · · Score: 2, Insightful

    I've found that, as I get older, money isn't the all pervasive motivator I thought it would be.

    Once I had enough money to 'get by' on, the raises didn't have as big an impact on my life. I found that I wanted to do things not to increace my financial bottom line, but for other motivations.

    Why did I give away my last car? Because it was 'worth more' to someone that didn't have a car than the 'financial worth' I could get from selling it.

    Why do people 'donate' to the open source movement? Because they're motivated by things other than money. That's a hard concept for some people to accept.

    --
    "Draco dormiens nunquam titillandus."
  9. Fun, simply fun by DarkDust · · Score: 2, Insightful

    I'm developing open-source software because I enjoy programming. That's it. And it is fun to work with other enthusiasts, unlike office programming where most developers don't even know how to format a disc (at least in the company I work, it amazes me how little all those programmers know). The reason to publish the source is simply that it increases the chance of being known as a programmer, it enhances my "fame", if you'd like to call it this way. Others are able to correct my errors and mistakes, so I also learn WHAT errors and mistakes I make. It's no use writing some closed-source app as a hobby that is full of bugs, design flaws and release it as Shareware or whatever, 'cause noone would use it. If it's open-source, it gets corrected and grows faster, thus gets more useful. Marc Haisenko The 3Dsia Project (http://www.3dsia.org)

  10. maslow's hierarchy by johnrpenner · · Score: 2, Insightful

    because with humans, after you get past
    the first tier of needs (money, security,
    place to eat and sleep), you get higher
    level needs kicking in, and those include
    needs to contribute and be part of a community.

    Social Threefolding

  11. Because it feels good by stonewolf · · Score: 2, Insightful

    I've done a lot of different kinds of volunteer work. I like it because it makes me feel like I am helping the world be a better place. Writing free software gives me the same feeling, only better.

    Why is it better than volunteering at a school or helping set up a public education event? Because those things can only reach a small number of people and then they fade away. Open Source software can help many many people from now until... well, forever? And what I do can either improve something that already exists or it can become the basis of new things that help even more people.

    On a purely selfish note it is also a way to advertise your expertise. And, a great way to learn. What better way to learn than to write something as well as you can and then expose it to the world and be told what is wrong with it and how to fix it?

    Stonewolf

  12. Thought long about this by Dark+Paladin · · Score: 3, Insightful

    I was thinking about this recently when checking out a news story on ZDNet, and reading someone's comment that "Open Source was communism".

    The statement irritated me, but I didn't know why. Which is usually when I start doing some research, because not knowing why I'm irritated means there's something important to figure out.

    I use open source in my own work - from development, web pages, graphical images, and the like. I could say "because it's cheap", and that would be true. I don't have a lot of cash, so most free (as in beer) programs appeal to me.

    But there's two big reasons why I use Open Source software:

    1: Free (as in speech) idea. Take Sun, who's setting up StarOffice to use XML as their default documents. XML - an open standard. What happens if 10 years from now I want to open a file, a story, an article I wrote in XML? I'd be able to read it, because I wouldn't be worried that MS went out of business/Caldera dropped Wordperfect/Lotus died out, or that the document editor I originally wrote didn't work on my new OS.

    OS is democracy in its truest form (not like the US, which is a *republic*, thank you very much). Everyone has a voice, good, bad, or indifferent. It can't be bought out by business (which tries to force customers down a path to make it more money, sometimes when the customer doesn't want to go that way). It can't be subverted by government. The users, and the users alone, have the power to decide if a program lives or dies.

    OS is also true innovation. The idea that "necessity is the mother of invention" applies here. If someone has that "itch they need to scratch" (like a program to edit tons of graphics from the command line (thank you ImageMagick!), it gets done. And just like the Internet is a place where you can find people that have the same interest as yourself, you can always find someone who has that same itch they need scratched, and sometimes people who are better than you at scratching it. (Which usually means you've got to have some humility to work with OS software.)

    2: Most people comment on how OS software is so stable, and I've proven that time and time again. Why so stable? Because everybody can see the mistakes. Granted, your "ordinary users" (aka, non-developers) won't care. But to folks who's jobs deal with security, or reliability, the capacity to see why your program broke down and, even if you can't fix it yourself, at least tell other people why it happened so the developer can fix it makes the system that much stronger.

    Right now, OS has overcome the first few hurdles of any system. First we had programs that work, now we have programs that work well. People have seen the need to make these programs more user friendly, and I see this being the next stage of OS software (companies like Mandrake are really setting good examples here). Interfaces will evolve - but they will evolve well, because thousands of voices will decide what works and what doesn't.
    In the end, I truly believe that Open Source programs are the way to go. It makes business sense to do so (now I've harnessed the collective brain power of a *planet* to help with my projects - I just have to let go of the idea that I *own* the software, and I'll get software that will make my business better). It makes personal sense to do so (I know that my improvements to OS programs will help other people).

    Of course, I could be wrong.

  13. Pro Bono Publico by Paul+Johnson · · Score: 4, Insightful
    For much the same reasons that lawyers do Pro Bono work:
    • Establish a professional reputation for quality work
    • Establish a social reputation as a nice person
    • Make the world a better place

    (any lawyers out there want to add to the list?)


    A congressman will be familiar with lawyers, and probably has a legal background himself, so comparing open source to legal pro bono work will put him on familiar ground and give you a shared context. Eg, ask "how would you feel if a big law firm called Pro Bono work 'unamerican'?")


    Of course there are also all the commercial reasons why companies produce open source code. Its worth emphasising that many open source coders are actually employed to do it, so its not just a geek hobby. See Opensource.org for all the commercial reasons for releasing open source.


    Paul.

    --
    You are lost in a twisty maze of little standards, all different.
  14. Re:Alternatives to money? by Jodrell · · Score: 2, Insightful

    Not if their work is derived from a GPL project they aren't.

    Well yes, that's because they would then be closing the source to someone else's work, that the author has already decided they want to keep open.

    I believe there are licenses out there that allow what you want. Maybe you should only develop code released under them.

  15. "Why OpenSoruce" vs. "Why Software" by matek · · Score: 2, Insightful

    The question was: Why do you make Open Source Software, not Why do you make software. Many posts in here refer to the main reason:

    Because I have a problem that needs to be solved

    Actually this is the reason for developing software, not specificly opensource or closedsorce, free or commercial.

  16. We want basics free, so we make 'em free. by Anonymous Coward · · Score: 1, Insightful

    I'd say that there's an expectation that good rudiments to make (on the case, computer) hardware perform are expected, and the semiconductor industry's done a great job of helping make the low bar grabbable.

    There's a second component, documentation, which reflects desires to see things done right (or at least without economic spillover,) compatibly, or both.

    On the other hand, for those with a little more stamina, it's good to be able to run from a deck on top of that bar to a high level, and that's what's being made whole now. Middleware has expanded so that educational and business environments have freeware or open components, plus more proprietary ones; it accomodates profitability, introduction for intellectual property of myriad type and domain, plus learnability across those.

    So here we see a sort of apocalyptic crash happening for people who were bridging domains or selling telecommunications at a price, matched by a buildup of automated free and less-free services, markets for real estate, hard goods, IP, and other bits of semi-based real estate.

  17. Bob Young told me... by cvd6262 · · Score: 5, Insightful
    At Linux World in San Jose, Bob Young said that people always ask him why other industries haven't caught on to open source.


    He tells them that open source is how every other industry works.


    When I buy a car, I can take it apart and see how it works. I can even modify its workings. If I tried to fix a bug in a closed source program I could be sent to jail per the EULA.


    It is important that lawmakers know that open source is not just a hairy programmer working late nights in his spare bedroom on a program he intends to give away. There are companies out there that have fully embraced open source because it's better for the consumer.

    --

    I'd rather have someone respond than be modded up.

    1. Re:Bob Young told me... by Anonymous Coward · · Score: 1, Insightful

      Are cars free of charge? No.

      Are cars free of unnecessary patents and trademarks? No.

      Can you take a major piece of a presently available car and use it to build a new car which you intend to mass-market providing that you give lip-service credit to the original manufacturer? No.

      Can you make an exact copy of the car and give it away without being sued? No.

      Looks like the ridiculous "business" of open source has caught on like crazy.

  18. C'est l'art pour l'art by uriyan · · Score: 2, Insightful

    I'm only 16 years old, and my contribution so far has been quite minor (only xml2swf is worth mentioning), but I shall list my reasons for it nevertheless:

    First of all, it's about art. Many of the programmers do not treat their work as a job; it is rather a craft, and sometimes - though seldom - an art. And any craftsman has got the urge to create, to somehow demonstrate his skills and knowledge in front of his colleagues and other people. Secondly, it's about training: writing software is the best way to learn a technology, and a good program is a nice addition to anyone's CV or portfolio.

    So far I'd described the reason why people write software on their own. The reason they choose to make it open is a matter of culture. Most of us can't expect to make a significant profit from the code written out there. Therefore, it is very easy to make a willingful concession of the slight possibility of a monetary gain in favor of the honor and the feeling of helping someone.

  19. Immortality by Anonymous Coward · · Score: 1, Insightful

    <Heavy Philosophy>

    It's because we know we're going to die. Truly beuatiful and artistic software can contain the soul ofthe author as truly as can a novel or a painting, so that even when we are extinguished (by death or by lesser forces), a piece of us will still exist. We won't nessesarily be remembered, but we will still (sort of) be alive.

    I have weeks or monthes in which I feal that I've accomplished nothing and I barely exist. But then I get an e-mail from somebody who uses something I wrote a long time back and I realize that even as I'm stagnating here, I have an otherself which continues to express the best in me. And even if I completely and permanently loose myself in stupidity and conformity (or physical destruction), that piece will still be there.

    And why open source? To get myself out as widely as possible.

    I seriously wonder how much of human life can be attributed to this desire/fear. I could make a strong argument for all art, child-rearing, and nationalism stemming from this. What makes us write open-source is what makes us human: an animal that knows it's going to die.

    </heavy philosophy>

  20. Model train analogy is great advocacy! by Tony+Shepps · · Score: 5, Insightful

    That's a great answer to the question, and you could extend it like this:

    "You know how some people just enjoy building model trains in their basement? Imagine what they would do if they could share their models... or link their tracks to others' tracks, in other basements. Imagine the excitement they'd have and how perfect they'd want their model to be. You'd almost certainly have configurations that would rival the original engineering decisions that go into building actual train yards, wouldn't you? Just like that, the net enabled a lot of model builders - i.e., people who enjoy programming - to share their models with every other model builder in the WORLD. So it's not surprising they built some amazing things, including the most stable large-scale operating system and the world's most-used web server."

    I think people would instinctively understand an analogy like that, and it makes for great advocacy.

  21. A collaborative effort to create something big by dsplat · · Score: 3, Insightful

    Open source is not unlike a huge pot luck dinner. We all bring something and we get back a complete meal rather than a single dish. The biggest difference is that software is easily copied. So we each brought a single serving and got back meals for the entire year.

    --
    The net will not be what we demand, but what we make it. Build it well.
  22. Missing the Big Picture.... by humblecoder · · Score: 2, Insightful
    Most of the posts so mention reasons like "I love to code" and "It feels good to give back" and the like. That may explain why Joe Random Hacker contributes, but it doesn't explain why large companies like IBM, Sun, HP, and AOL Time Warner are putting a lot of time, money, and manpower into open source development. These companies are motivated by profits, not by feel-good platitudes. So why are they doing it?

    Because helping to develop open source software makes good business sense for them.

    Why does it make good business sense? One reason is that they are giving something away so that they can leverage that free product to sell something else. These companies make money off of selling products and services related to open source products. In order to maximize the size of their market, it makes sense for them to help with Linux development, for instance. The better Linux is, the more people will use it. More people using it means more people will buy their products and services.

    There are nay-sayers who say that this isn't a sustainable business model, but other very successful companies do this all the time. They give away something so that they can sell more of something else. Ask yourself why Microsoft gives away its browser for free. For Microsoft it is better not to charge for their browser so they will increase their browser market share. They are trading current dollars for future profits from the sale of browser-related software and services. AOL does the same thing with their on-line service. They give away tons of those CD with their software because they know that they can make it back from selling online access and content.

    The other way in which open source development makes business sense is in the control. When IBM wants a particular piece of software or hardware to work with Linux, they simply add the necessary code to the operating system and contribute it to the community. The new code gets propogated into all new updates of Linux, and now more people are able to use their for-profit product. On the other hand, because IBM doesn't have control over Windows, they have to beg and plead for them to add a feature to Windows they they may want. In short, they have no control over the code.

    Finally, contributing to Open Source is great from a marketting standpoint. All of the Joe Random Hackers out there appreciate the fact that this big company is pitching in to help. This gives them a "warm and fuzzy" feeling about the company. On the other hand, companies that attack the open source movement (Microsoft) are scorned by the Joe Random Hackers of the world.

    This is one reason why Ben and Jerry's has been so successful. When you by a pint of Cherry Garcia, you aren't just buying a tasty snack, you are buying into a whole philosophy of business. People are willing to spend a couple extra bucks for this "warm and fuzzy" feeling.

    Anyway, it's nice to say that people contribute to the open source movement because it feels right, but that alone doesn't explain why.

  23. Remember it wasn't always called open source by mrjinks · · Score: 2, Insightful
    ...and open source developers don't necessarily fit the stereotype of the college student volunteering time on a kewl project.

    I think that many of the people who work on free software do it because they or their employers simply see that approach as the most effective way to get the quality software they need. They have problems they need to solve, and this has nothing to do with the stereotypical "volunteer" open source developer scratching a personal itch. A lot of Linux-related work comes out of NASA and other large organizations which need software to get their work done, can't buy what they need off the shelf, and have no motivation for keeping their code secret. Under those circumstances, why not make the source open?

    The AT&T/UNIX example is a classic. Had AT&T been allowed to market UNIX as a product, we'd probably all be using some sort of crappy VMS descendant. ;)

    After 25 years or so of the closed-source experiment, people are beginning to realize that the closed-source approach has its limitations; so, the alternatives are getting attention. But we shouldn't be surprised that people do this, any more than we're surprised that scientists and economists publish in journals.