I'm not suggesting that the release date be set in stone; in fact, it should be arrived at after consultation with developers. The problem is that if you don't at least set a date and strive to stick with it, things that should get done before a release never do. Sure, nobody likes a slipping release date, but if there's a good reason for it, that has to count for something. The important thing is that there's a goal to work toward. If I have something that I just can't get in before the "feature freeze", I should speak up and if necessary have the dates changed. In these cases, release dates are set for developers (rather than end user release dates ala windows) so that they can prioritize to get the things done that need to be done.
--- CUT HERE --- Example conversation:
You: I was thinking that we should think about getting a release done, as we're coming up on finishing most of the goals of this release (<-- predicated on the idea that there's a release plan.) I'd like to propose a feature freeze for 25th of May. Does this sound doable?
Random developer: I think I need a few extra days to finish up some of the work I was doing on project X. Can we push it out to the 30th?
Me: I think I need an extra month to finish up my Butterfly counting module. How about it.
You to random developer: OK, what you're working on is important to be finished.
You to me: That's a relatively minor project and isn't critical for a release. It'll have to wait.
You: Based on feedback, we're going to shoot for a feature freeze for the 30th of May. I'll add this to the development plan page on the website and will send a reminder as we get closer to the appointed day.
--- CUT HERE ---
As you can see, this doesn't need to be a stifling or overbearing thing. It's just good communications. I know I keep harping on these seemingly silly topics, but in order to get outside developers to participate, these are the kinds of things that _need_ to happen. Maybe there's a need for a development coordinator that handles things like release planning and coordination with external developers. I'm willing to help out, but it doesn't seem like there's any interest in that sort of thing.
Bill