PDA

View Full Version : What incentives are there for open source software developers?



JohneG
August 19th, 2009, 10:51 AM
What incentives are there for open source software developers to give their time, effort and knowledge to help open source projects? Also how does this benefit these projects?

Also what advantages do open source projects have over closed source programs?

perce
August 19th, 2009, 10:59 AM
Most open source software developers are paid employees of companies having some interest in that software.

Ozor Mox
August 19th, 2009, 11:04 AM
What incentives are there for open source software developers to give their time, effort and knowledge to help open source projects?

To improve their programming/graphic design/documentation/bug fixing skills. To gain respect and kudos. To learn. To have something to put on their CV or talk about in an interview. To get paid. For fun.


Also how does this benefit these projects?

The more contributors, the faster a project can advance and the more people available to fix bugs and contribute code, graphics, ideas, docs, etc.


Also what advantages do open source projects have over closed source programs?

Generally free cost. Ability to improve them or fix problems yourself if you want, or pay someone to do it, since you have access to the source code. Usually faster fixing of bugs (Linus' Law (http://en.wikipedia.org/wiki/Linus%27_law)), knowing they don't have spyware or adware or viruses in them. No vendor or format lock in. In my personal opinion, the open source projects I've used have been of higher quality than much of the commercial software I've used.

And that's off the top of my head :)

blueturtl
August 19th, 2009, 11:05 AM
A lot of open source programs come to exist out of need, aka. the developer needs a program to do thing X, but can't find one that matches his taste. He then creates a project.

Another potential user stumbles on the program searching for something that she needs to do thing X as well. It's almost perfect but not quite, so being a developer herself she submits her changes or suggestions to the original developer.

When said program has many many users suddenly the project is being worked on by even thousands of people all for mutual benefit.


Also what advantages do open source projects have over closed source programs?
Bugs and security holes are discovered and fixed more quickly because there are more eyes on the source code which is available to all.

This means that in a situation where you run into trouble with said software, you can fix the bug or issue yourself, or contract someone qualified to do so. With closed-source programs, you depend entirely on the original author of the software for support. If the original author doesn't care about you, or has gone out of business, there is no way to fix the problem with the software.

lethalfang
August 19th, 2009, 11:05 AM
Most open source software developers are paid employees of companies having some interest in that software.

Yes, all Linux companies and open-source communities of volunteers/enthusiasts combine resources to make Linux better.
Microsoft is alone.

Chronon
August 19th, 2009, 11:09 AM
In a lot of cases a person will find a project that interests them and set out to work on adding features that they want. They are doing it because they want to do it and because it's free, other people get to share in the fruits of this labor.

I think your second question contains the answer already. The project obviously gets time, effort and knowledge. The developer gets to use a better product (so does everyone else).

A big advantage is the fate of the software is not tied to the financial health of a particular company. People can work on things when they want to and ideally others will come along and do the same. The whole process can arise naturally through bottom-up instead of top-down organization. Of course, without activity and people actually taking interest in a project it can grind to a halt. However, since the code is available it is not as vulnerable to being lost forever as proprietary projects owned by a company that goes under.

This is only one development model. A project can certainly have a top-down administration and still be free software.

perce claims that most developers are paid employees of some company. I haven't ever seen any statistics about this but I have been under the impression that most code is actually contributed by volunteers in a lot of projects. Rockbox, for instance, is produced entirely by volunteer work. If anyone has some statistics about how much code is produced by salaried programmers in the whole free software universe versus volunteer work I would be interested to see this.

GeneralZod
August 19th, 2009, 11:42 AM
perce claims that most developers are paid employees of some company. I haven't ever seen any statistics about this but I have been under the impression that most code is actually contributed by volunteers in a lot of projects. Rockbox, for instance, is produced entirely by volunteer work. If anyone has some statistics about how much code is produced by salaried programmers in the whole free software universe versus volunteer work I would be interested to see this.

Nothing really hard and definite, but here's some quick figures about KDE: approx 427 people contributed to KDE svn last month, and after racking my brains for 10 minutes or so, I have come up with about ~2 people that I know are paid to contribute to KDE. I've included people who are sponsored to work on distros but who appear to do at least some work on upstream KDE (e.g. Jonathan Riddell who is employed to work on Kubuntu; Thiago Maceira who is employed to work on Qt; etc). KDAB (who work on KDEPIM stuff almost exclusively) employ almost half of my list.

I have no figures available, but suspect that the ratio of unpaid : paid developers on projects not contained in KDE SVN (i.e. most of those on kde-apps.org) is even higher.

Tibuda
August 19th, 2009, 12:18 PM
You should read:

The Cathedral and the Bazaar (http://catb.org/~esr/writings/cathedral-bazaar/), by Eric S. Raymond
The open source movement: key research questions, by Josh Lerner and Jean Tirole, in European Economic Review 45 (2001) 819-826. This paper abstract says: "The paper analyzes the incentives of individual programmers and of commercial companies to participate in open source projects".
Some Simple Economics of Open Source (http://www.jstor.org/pss/3569837), by Josh Lerner and Jean Tirole, in Journal of Industrial Economics, v. 50, n. 2 (2002), p. 197-234,

If you are in the university, search for these two papers in the economics deparment library. Maybe you can download them from the university computers.

praveesh
August 19th, 2009, 01:51 PM
Many of the KDE developers are sponsored by the companies like QT, Novell etc

Chronon
August 19th, 2009, 10:29 PM
Nothing really hard and definite, but here's some quick figures about KDE: approx 427 people contributed to KDE svn last month, and after racking my brains for 10 minutes or so, I have come up with about ~2 people that I know are paid to contribute to KDE. I've included people who are sponsored to work on distros but who appear to do at least some work on upstream KDE (e.g. Jonathan Riddell who is employed to work on Kubuntu; Thiago Maceira who is employed to work on Qt; etc). KDAB (who work on KDEPIM stuff almost exclusively) employ almost half of my list.

I have no figures available, but suspect that the ratio of unpaid : paid developers on projects not contained in KDE SVN (i.e. most of those on kde-apps.org) is even higher.

Thanks! That is consistent with my impression of things. I am mostly familiar with smaller project which generally don't have paid programmers.

jrusso2
August 19th, 2009, 11:46 PM
Many developers will work because its something they need that does not exist or they are not happy with it.

Some developers do it just for the pride of a job well done, to stretch the art or to have others use their programs.

lethalfang
August 20th, 2009, 08:38 AM
perce claims that most developers are paid employees of some company. I haven't ever seen any statistics about this but I have been under the impression that most code is actually contributed by volunteers in a lot of projects. Rockbox, for instance, is produced entirely by volunteer work. If anyone has some statistics about how much code is produced by salaried programmers in the whole free software universe versus volunteer work I would be interested to see this.

Here you go:
http://blogs.computerworld.com/14576/who_writes_linux_big_business

"To be exact, while 18.2% of Linux is written by people who aren't working for a company, and 7.6% is created by programmers who don't give a company affiliation, everything else is written by someone who's getting paid to create Linux."

warreno
August 20th, 2009, 09:46 AM
What incentives are there for open source software developers to give their time, effort and knowledge to help open source projects? Also how does this benefit these projects?

Also what advantages do open source projects have over closed source programs?

1: It feels good.

It's amazing how much that matters. When I was hacking code for a commercial corp, my payscale was pretty decent but I felt unfulfilled. All my time and blood and sweat and tears were basically making someone else rich. I didn't like it.

If you regularly contribute help to user forums, well, why do you do it? Do you like the feeling of knowing you've helped someone else work out a problem?

Same kind of thing, only a bit more technical on the backend.

2: VAST community involvement.

Why did Win95 suck/crash so much? Because when it was released into the wild, it hit a stack of hardware configurations that MS could never have predicted in their relatively closed alpha and beta tests.

Open source is, very often, a live, real-time alpha test all the time. Opening up the code to developers running bizarre or unpredicted systems would have made Win95 considerably more stable, pretty dang fast; in the last 10 years, for instance, Linux went from pretty decent to more or less outstanding, and more or less bulletproof, mostly because it has been DLed and installed on systems and configs that could never be predicted in any closed-source system.

The more machines you test on, and the more willing you are to receive meaningful feedback on obscure driver loads, the more likely you are to get a good, stable and hard-to-kill release. That basically requires an open development community.