Forgot your password?

typodupeerror
Programming IT Technology

What Makes an Open Source Project Successful? 201

Posted by Cliff
from the what-do-you-measure-your-software-by dept.
crowston asks: "There have been a number of discussions on Slashdot and elsewhere about how good projects work (e.g., Talk To a Successful Free Software Project Leader), but less about how to tell if things are going well in the first place. While this may seem obvious, most traditional definitions of software project success seem inapplicable (e.g., profit) or nearly impossible to measure for most projects (e.g., market share, user satisfaction, organizational impact). In an organizational setting, developers can get feedback from their customers, the marketplace, managers, etc.; if you're Apache, you can look at Netcraft's survey of server usage; but what can the rest do? Is it enough that you're happy with the code? I suspect that the release-early-and-often philosophy plays an important role here. I'm asking not to pick winners and losers (i.e., NOT a ranking of projects), but to understand what developers look at to know when things are going well and when they're not."
This discussion has been archived. No new comments can be posted.

What Makes an Open Source Project Successful?

Comments Filter:
  • by FortKnox (169099) on Tuesday April 22, 2003 @02:25PM (#5782925) Homepage Journal
    I misread the questions.

    The real question is how do you determine if you are successful without having profits.

    Its simple. Open source is scratching an itch, right? Is the itch scratched? If yes, then its a success. If it doesn't do what someone else wants, they can add it in, or ask you to do it.

    Popularity != Success
  • by bwalling (195998) on Tuesday April 22, 2003 @02:31PM (#5782982) Homepage
    Well, the original author may be having difficulty determining this. I think that traffic on mailing lists is a good indicator.
  • by Red Warrior (637634) on Tuesday April 22, 2003 @02:31PM (#5782983) Homepage Journal
    Milestones: establish concrete goals when you start the project, along with a timeline. Of course, these may evolve over time. Happens for commercial apps, too. If concrete milestones aren't met at some point, it's just vapor.
    Traffic: both developer and user. Is there a relatively continuous level of input/interest in the project? If developers don't want to develop, and users don't want to use, it's probably going nowhere, even if it's the best thing since the BeOS.
  • by wawannem (591061) on Tuesday April 22, 2003 @02:33PM (#5782996) Homepage
    As an end user of successful open source software, I would have to say that the best way to get feedback on the success of your project is through an X-users mailing list where X is your project. It seems to me that the more activity in a mailing list usually indicates the size/success of a project. I have spent time in the past simply lurking on a mailing list for a while for products that I am evaluating, and in other cases, I join the mailing list to lurk right away on desktop software that I am not already familiar with. It is the best measure thusfar that I have found.
  • It should be... (Score:3, Interesting)

    by BubbaTheBarbarian (316027) on Tuesday April 22, 2003 @02:33PM (#5782998) Journal
    Stable in relation to the time invested.
    Useful...to someone (this is open to broad interpetation).
    It should have the goal of attaining at least as much funtionality as any of the software that it is replacing.
    Other examples of good OSS is squid, openoffice and, yes, even Linux (Red Hat 9 is least as functional as Win98SE, and that is just from an end user standpoint).
    Just my W.O.
    WAR TUX!!!
  • what I do (Score:3, Interesting)

    by meshko (413657) on Tuesday April 22, 2003 @02:37PM (#5783022) Homepage
    on one of my open source projects I used (more accidentaly than deliberately) the technique which is standard among people who write exploit. I have a small error in the makefile which causes something liek 50% of people come back for help on compiling it. This gives me pretty good estimate of how many people are actually using the package :)
    Of course this leaves out win32 users who just download the binary, but oh well.
  • by The Bungi (221687) <thebungi@gmail.com> on Tuesday April 22, 2003 @02:37PM (#5783023) Homepage
    Indeed, the top downloads at Sourceforge.net are consistently either native Win32 apps (like CDex) or Win32 ports of existing Linux apps.

    Get ready for the troll mods, though. That's not the kind of truth that goes down well 'round here =)

  • Simple (Score:3, Interesting)

    by PissingInTheWind (573929) on Tuesday April 22, 2003 @02:43PM (#5783071)
    Quality, Usefulness, Progress, Maintenance.

    Quality, because you want something that works. Usefulness, because else there is no use to the code. Progress, because you want the project to evolve constantly. Maintenance, because you don't want to use software that has a buggy, unmaintained codebase.
  • by Lieutenant_Dan (583843) on Tuesday April 22, 2003 @02:44PM (#5783084) Homepage Journal
    The following points have served me well in the last few years as I've made more and more of my projects open source:
    • a strict adherence to published standards
    • good (but not necessarily correct) source code, so that others can read it
    • documentation, especially if revised by people who implemented your project
    • constructive criticism from end-users
    • a few deployments in non-profit organizations
    • some deployments in the corporate world
    • a cool name!


  • Fun (Score:5, Interesting)

    by jaaron (551839) on Tuesday April 22, 2003 @02:44PM (#5783085) Homepage
    Are you still having fun?

    I've commited some of my spare time to open source projects and even started a few pet projects of my own. While success can sometimes be measured by number of users, or downloads, or mailing list traffic, I think it's worthwhile to step back from the project and make sure you're still having fun. At least that's important for those of us who develop open source software as a hobby as opposed to those who do it for a living (and there are many more hobbiest out there). If suddenly you find yourself dreading to read your mailing list or fire up you text editor or IDE, then you know it's time to take a break or re-evaluate the project.

    Then again, every developer and project has different goals and really it's only by these individual metrics that a project or individual's success can be measured.

    There was an interesting thread on the Jakarta general mailing list about this a couple months ago. You might want to check it out. [mail-archive.com]
  • Re:By feedback (Score:1, Interesting)

    by Anonymous Coward on Tuesday April 22, 2003 @02:49PM (#5783122)
    Mailing lists and bugtraq usage seem to be the most straight forward means of assessing a project's "success". I guess its a good thing that Microsoft doesn't have a publicly available bug traq system. It wouldn't speak very highly of their products.
  • Re:By feedback (Score:3, Interesting)

    by truthsearch (249536) on Tuesday April 22, 2003 @02:52PM (#5783138) Homepage Journal
    The closest thing they have is this [microsoft.com].
  • by Ian Lance Taylor (18693) <ian@airs.com> on Tuesday April 22, 2003 @03:11PM (#5783267) Homepage
    As I and others have said, success for an open source project is defined by meeting your goals.

    But let's say your real goal is to be a respected member of the open source community (which, as we all know, leads to fame, groupies, and vast wealth). What should you do to meet that goal? (Actually, there are several ways, but I'll only talk about ones which involve starting an open source programming project, since that is what the original question was about.)

    First, your project needs to be something which other people will want to use. Don't write another mail reader. Write something new, at least new to open source. If you don't know what people want, you'll have to ask them. In general, your project needs to either be an open source replacement for an existing proprietary program, or it needs to create a new and interesting niche.

    Second, your project needs to work, at least minimally. You have to be able to get it to the point of working, either by writing it yourself or talking people you know into pitching in. If your project doesn't work at all, few people will contribute to make it better.

    Third, you need to sell your project by mentioning it on Slashdot, on relevant mailing lists, and on relevant web sites. You need to do this respectfully. One approach is ``I'm looking for suggestions on how to improve my FOOBAR program. It can already do AMAZING THINGS, and I'd like to know how to make it work better for specific users.''

    If you follow these simple steps, you too will be on the road to fame and fortune! When you get there, just don't forget the little people who helped you along the way.
  • by Ricdude (4163) on Tuesday April 22, 2003 @03:45PM (#5783582) Homepage
    Specifically, when you see other projects you think of as being successful, including references to your project in their documentation. Even if it's telling users how to workaround your program and its, um, features.

    It was a strange thrill to see ESD called out by name in the Quake (2?) for Linux documentation from Id software. I knew the project was onto something when Id deemed it necessary to warn people that my simple software audio mixer would interfere with the audio in Quake. They were expecting it to be enough of a problem to head it off in the official documentation. That's a user base.

    If you have a program for Linux, inclusion in one or more major distributions is also a sure sign that lots of people are getting some use out of your program. If that many people are using your program, it may even outlive your ability to contribute to it...
  • by paj1234 (234750) on Tuesday April 22, 2003 @05:26PM (#5784497)
    It's successful if...

    - It scratches the itch
    - It's fun to do
    - Other people like it
    - Other people send in contributions!
    - It makes you famous!!!

I would rather say that a desire to drive fast sports cars is what sets man apart from the animals.

Working...