Choosing the Wrong Rule Number 1
I was reading through Textpattern support forum and found mention of a weird Rule Number 1 TXP developers are sticking to:
Rule Number 1: Never promise a release date.
I was going to reply directly in the forum, but then I figure this would be a better place.
The Rule Number One is so old-school development process.
Just look at Gnome, Fedora, Ubuntu or others that have adopted the “stable release every six months” policy, they are all healty projects, rapidly gaining traction and respect in the community and growing as stable, solid solutions.
Now look at Debian that instead still follows the rule number 1: nobody uses its stable version, wich is three years old now and many people are getting tired of the development version and are migrating to other distributions.
Well, I also think (and hope) everybody writing code for a living breaks that rule almost every day. You can’t say to your customer you’re going to release “when you’re done”. You say: “on 36 setnuary 2036 we will release a stable release” if by that date you have some feature which isn’t stable, you delay that single feature not the entire project.
A better Rule Number One could be for example ”release early, release often”.
By using this rule, you could avoid the problems Alex mentions to explain why Rule Number One is correct:
[…] The things left till last are likely to be intermittent bugs, issues that only occur on certain platform configurations, Heisenbugs, and all of the minor niggling problems that you’ve forgotten about. They are, by definition, elusive and unpredictable, and hence impossible to estimate.
Right. I totally agree, but my conclusion is different: just because those bugs are elusive and unpredictable, you can never fix them all, so just release, quickly fix them when they come up and release a bugfix.
This way everybody has the latest code without playing with the Subversion repository or other weird tricks, and third-party developers don’t need to worry about giving support to people installing their plugin in last week’s revision.
