OSS from Non-Developers for Non-Developers?
chrisatslashdot asks: "By training and title I am a Mechanical Engineer. I have never been involved with any serious software development although I am competent to develop quality code. Because the company that I work for will not purchase a canned software package, I am developing a web based CMMS (Computerized Maintenance Management System). I GPLed the project and put it on SourceForge hoping to help other people in my situation. The project is attracting much more attention than I anticipated. I have observed the development of many OSS projects but almost all of these have been by developers, targeted to developers. So what advice can you give a novice software developer on managing an open source project? What dangers and pitfalls await me? How does one foster more developer involvement? What resources should I exploit to keep from screwing this project up?"
One danger of open-source projects is that everyone who gets involved wants different things from the project and begins to add features or change the design to meet their individual expectations. While you want to be open to ideas, you also need a solid and reliable working project when you're done. Don't let the peoject spin out of control.
My suggestion is that you make very clear the goals of the project and the list of features that the software must have and then try to keep developers tightly focused on these things. Also make it clear that new feature ideas must be discussed and those in charge of the project must agree to add that new feature to the list before anyone starts trying to implement that new feature.
If someone really wants to include a feature and you feel it's too much work or a feature you don't need for yourself, then you might say something like the following, "I like your idea and can see your need, but I need a working product first. Once we get my part done (version 1.0), then we can add your feature for future versions."
Keep everyone focused on your specific goals and you shall have your project completed on-time and efficiently so. Otherwise, you run the risk of many developers adding whatever they want, whenever they want, and having lots of extra useless so-called "spaghetti" code that may or may not help you.
Ouch! The truth hurts!
This sig is intentionally left blank