On Mon, 22 Nov 2004, bulia byak wrote:
Since I made the last one, and I gave instructions about how to do it, I will wait until someone else makes a static build.
After that, I will be happy to make more. It is only a few hours of work. I just don't want to be the only one in the kitchen peeling potatoes. ;-)
Sure. You did the hard part. Too bad that no one wants to use that and do the easy part.
Ah, hang on. I don't think it's a lack of wanting to do it, I think rather it's just that a few recruitment techniques need to be applied.
1. One thing I've observed time and time again with open source projects is this paradoxical situation where when I need volunteers the most, they're hard to find, but when I figure I'll be doing 100% of the work, they come out of the woodwork (but not always). The rule seems to be, to get volunteers, first reach zen with the idea that you could do 100% of it; volunteers prefer the idea of adding their 10% atop 100% rather than on top of 50%. When you can't commit to that yourself, reduce the scope to what you are comfortable with.
2. I've found that trying to compel help is sort of a square peg in round hole situation. People don't like to get tied up into unpredictably big commitments, but if it looks like something they could just put a little time into, they seem a lot more willing to put a LOT of time into it. I don't know why that is, but there's a lot of evidence that it works this way in open source. Either keep the work optional, or refer to #1.
Instead, focus on the positives. I like to say, "The way to herd cats is to throw mice. Leave the leashes for the dogs." ;-)
3. Lead by example. Or as rejon would put it, "Pick up a shovel". A task that has already been started is a lot easier for a new volunteer to jump into than one that's still in planning stages.
Bob's work to create an example of making static binaries is perfect here. This has removed one of the roadblocks to finding volunteers. Because of this, I expect some others to show interest in helping.
4. Don't be afraid to share the easy tasks. Sometimes it seems like it'd be quicker to do the task yourself than to explain it, yet the extra time can be worth it if it makes the second person more capable to help out in a larger role in the future. If they're interested in helping, it's usually worth it to help them help you.
A collory to this is that be prepared for volunteers to leave the hard parts unfinished; you may have to do them yourself. It sucks, but it happens. Bulia, you're actually better at getting that last 10% out of volunteers than anyone I've seen, so I don't think there's any problem here! :-)
5. Document the heck out of the work. A leading cause of trouble is when volunteers don't have a good feel for what needs to be done. Documentation isn't enough by itself, but lack of information can scuttle the whole thing. Tasks will appear harder than they really are, or you'll attract people without the skills needed to get the job done right.
I suspect this is probably the largest reason why there is trouble raising the troops for creating static binaries. Create a paint-by-numbers todo list for making static binaries, and that'll eliminate this item as an issue.
6. Individual pleas work better than broadcast ones. When I put out general calls for help, more often than not they seem to fall on deaf ears, however when I know someone with the time, skill, and interest in what needs done, then often a direct, polite request for help can stimulate interest. However, realize that people have about a 30% flake-out rate, and try not to hold it against them if they don't follow through - you may need them for another task in the future.
7. Make sure to say thank you. To some people, it seems unnecessary to say anything once the work's done; the performer should know they did a good job when there are no longer any complaints. Yet a lot of people like having some acknowledgement that their efforts made a difference and were not done in vain. The secret is that a show of appreciation takes very little time; it's an extremely cost-effective way of ensuring the guy will help out more in the future.
I think the static binaries are a great solution to the dependency problems I've been worrying will crop up in this release. I'm a little concerned about how long it's taken to get the release out already, and worry that making it a hard condition may delay us a lot more.
Bryce