Small release cycles are the mantra of Open Source Software. When you combine frequent releases with a transparent deployment model and a feedback loop with the end users you have something special.
Take this little blog for example. It was released yesterday, and before long I got the first bug reports. Hey, every piece of software contains bugs, don’t blame me! Thankfully, it took me about 10 minutes to iron out the problems. While I was at it, I hardened the security a bit, and added support for emoticons
When I was finished, I just issued the command:
svn commit
on my laptop. Actually, I first runned my unit tests to make sure that everything is OK, you cannot live without unit tests when using a dynamic language like Ruby.
Then I ssh’ed to the server and run the command:
svn update
That’s all! Now everyone that surfs my page gets the new and improved version. Don’t you just love the Web?