Hi Clay, I co-founded the OpenEJB project two years ago and am actually preparing another project to open source. Running an open source project successfully is extremely difficult. It's identical to running a product-based software company, except most the contributors aren't compensated financially. This means you have to work many times harder to get and keep good help, this also makes people less professional and less reliable. Your social skills will be challenged every step of the way. Most people who show interest in contributing, leave from boredom. The few who can earn commit privileges eventually leave because they get too busy, usually leaving a large amount of unfinished, uncommented code. You'll need to find time to accommodate everyone and help those that are trying to become a contributor, you are continuously investing time in your community. As the majority of development is done by you, all the time you spend on your community means the actual software isn't going anywhere. You need to balance both or the project is going to last. The biggest challenge is keeping your project alive until it can reach that critical ignition point where the project really takes root and finds a strong user-base. Then the game changes completely from what I've described and suddenly you're faced with an entirely new set of challenges. Now the difficulty is getting people to contribute, it's dealing with all the patches and traffic on your lists. Before you had to be extremely clever with every word you said, now you couldn't people go away if you wanted to. Most projects never reach the ignition point, though. The majority die before then. The biggest mistake made is opening the project too soon. If you can, delay announcing until you are close to the ignition point as possible. This means you have something, anything, that is useful to people, works flawlessly from end to end, and is well documented so people can get it and put it into use immediately. Only then will people start to use and become dependant on your software. Sometimes the best thing for a project that opened too soon, is just to let it die and pick it up again when you have enough time to get it working perfectly in private, then open again. Gimp was like this, the project died for an entire year before it was picked up again. To know when your project has reached the ignition point, ask yourself this question, "If I stopped work on the project and walked away from it completely, would it live or die?" If it would die, then the answer is no. Once an open source project has ignited, nobody can kill it, not even the original creator. Getting to the ignition point can take quite a long time and takes an enormous amount of personal dedication, unless your funded by IBM or Sun, or both. OpenEJB has been around for two years and it hasn't gotten there yet. JBoss, the open source EJB solution everyone has heard of, has been around for the same and is already several months past the ignition point. Although Marc and I don't get along personally, I'm happy to see them do so well. My new project will be heating things up in a month or two when it's good enough to release. I'm anxious to see what happens then. A final thing to consider is license. To be clear, GPL is _NOT_ Open Source(sm). The Open Source Initiative (Eric Raymond) and the Free Software Foundation (Richard Stallman) are two opposed groups, they don't get along too well. Apache, FreeBSD, and Mozilla have true Open Source(sm) licenses. Anything GNU is GPL free software, though the source is open, it's not an Open Source(sm) approved license -- nor will it ever be as long as Richard is alive. The book "Open Sources" by O'Reilly and Associates, is the bible of open source software. A must read for anyone becoming seriously involved in Open Source. -David > -----Original Message----- > From: tclug-list-admin at mn-linux.org > [mailto:tclug-list-admin at mn-linux.org]On Behalf Of Clay Fandre > Sent: Friday, December 21, 2001 12:19 PM > To: tclug-list > Subject: [TCLUG] Getting started with an open source project > > > I'm working for a "corporate" client that wants to start an > open-source project, but lacks experience with open-source > projects and isn't sure how they operate. To get a better idea of > how the world of OSS works, they would like to "get their feet > wet" by contributing to an existing project, and eventually > starting their own. They have asked me to provide some > "knowledge" and experience on how they can get started, since > they know I run the TCLUG. Since I know some of you have > contributed to projects more than I have, I am asking you. Does > anyone have past experiences with OSS projects that you could > share? Lessons learned? > > Thanks. > > -- Clay > _______________________________________________ > Twin Cities Linux Users Group Mailing List - Minneapolis/St. > Paul, Minnesota > http://www.mn-linux.org > tclug-list at mn-linux.org > https://mailman.mn-linux.org/mailman/listinfo/tclug-list