Slashdot Mirror


Recruitment Options For a Small-Scale FOSS Project?

thermian writes "I've been developing my open source project for several years now, and I've never found a solution to one fairly important issue. How can a small-scale project attract new members? My project is pretty specialist, (no URL, sorry, I can't afford to get my server nuked) and I find that while it gets a fair bit of use, most users come to my software out of a need to solve their problem, or use my tutorials to learn about the subject, and none seem inclined to stick around and help make the product better. This is a fairly serious problem for me now, because my software has recently been adopted by a university, and I'm just not in a position to manage the entire set of applications and update everything on my own. Just preparing a version for release to students has been especially hard. The open source maxim 'Many eyes make all bugs shallow' only works if those 'many eyes' are available. So do you have any suggestions as to how, and where, to find people who fancy joining open source projects?"

3 of 210 comments (clear)

  1. Recruit? by RedWizzard · · Score: 5, Informative

    You can't really "recruit" FOSS developers. They'll join if they find your project and find it interesting enough. The best thing you can do is increase exposure. So why, when you managed to get a story posted to /., did you decide to hide what the project is? You had the perfect opportunity to expose thousands of developers to your project and you decided not to take that opportunity. Bad move.

  2. Lack of info by kernowyon · · Score: 4, Informative
    As mentioned by another /.er, it appears to be the project nMod, which happens to have a page at http://code.google.com/p/nmod/
    Why did the OP not link to that page? Surely Google can handle a little slashdotting! For those who don't want to follow the link -

    The nMod nBody Modelling Toolkit provides software to run experiments in the field of nBody modelling on a normal home computer.
    This means modelling asteroid/comet motion, spacecraft flight, planetary systems, or stellar cluster/small galaxy systems.
    The toolkit contains a Particle Particle nBody model, an OpenGL viewer to display the output of the nBody model, and a number of utilities for generating new projects and editing existing output files.
    If you really want people to jump onboard with your project, then you need to publicise it. No point complaining that nobody helps if folks have never heard of it.
    --
    Awful UID - but I have been here ages...
  3. Re:No URL? by bjourne · · Score: 4, Informative

    But without knowing what your project is, it is hard to know what you are doing wrong. Because you probably are doing something wrong if your project is generally useful but noone is willing to help. I also run an open source project (on a really slow site so no link :)) and have gotten quite a lot of code contributions from other people. Here are some tips on what I did to try and attract people. Take it with a grain of salt, I know nothing about nBody modelling.

    • Presentation is everything! If you can't convey interest to a potential contributor in less than two minutes after they have visited your site for the first time, then you have lost. You need to present your project in the most favorable way possible. You need to show me why I would want to use your code, why I would want to choose your modelling package over any of the hundreds of alternatives. I found no screenshots, no API documentation or tutorials during the ten minutes i spent browsing your project. Just a lot of text. Boooring!

    • In the same vein as above, you need top quality documentation. And it needs to be very visible. Preferably a front page link. One reason why the parser generator Bison is so popular is because it includes a detailed introduction to language parsing in general. So if you want your toolkit to be popular a good idea is to include an easy introduction to nBody modelling.

    • Present what your project is capable of doing, or what tasks it is supposed to solve. Can i write a space flight simulator using your library? Can I write a Python wrapper? I don't know.

    • If I get seriously interested in nBody modelling then I'm likely to want to contact you with questions about the code, bug reports and patches. But your email address isn't available. I know you have an issue tracker but that is no substitute for email. New people often perfer personal communication.

    • One thing I noticed is that you are using CMake for building, which is cool. But most people aren't as used to CMake as to autotools and make so you need to provide explicit and complete instructions for building your project. It is little details like that that makes your project much more appealing for potential developers.

    • And last (because it is not so important), use dependencies. For example, if you can use the hash table implementation in glib instead of writing your own. Then do so! You might be able to write a good hash table in less than 400 lines, but by using glib's hash table you just saved yourself from maintaining 400 extra lines of code. There are probably both particle and linear algebra packages you could depend on to make the burden of maintaining your code easier for you.