Use the Source, Luke.
Today we had the pleasure to release Transifex 0.7 Release Candidate 2 (yeehaa!). Getting ready for the final release, wrapping up a 3-month development cycle.
I admit I like following best practices. I’m not one of the innovative developers, just doing things ‘their way’. I enjoy finding good code, good way of documenting things, good libraries, good practices — and adopting them. And one of the best things I’m adopting with my projects is the “Release early, release often” principle.
Basically what this implies is to be bold and release as soon as possible, get some feedback, improve, and repeat the process. This way the development really opens up to more people, and you get the chance of receiving feedback quickly and improve. Instead of having the ideas of a handful of people, you get the feedback from your user community as soon as possible. In the end, they are your users, and you really want to make them happy and provide them with the features they really need, not the ones you think they need. If you want to know, just ask them. And, by far, the best way to ask your users is to show them something and ask them to use it.
Releasing often also means to iterate the cycle soon. We are releasing a major version of Transifex almost every 3 months, and, like a lot of open source projects, we seize the chance to ship minor maintenance releases, and some alpha/beta/rc goodness. This way we have the chance of spotting bugs earlier than the moment when we tag our release. Since 0.7-RC1 we spotted a bunch of things we could improve, including adding necessary files missing from the tarball (!), a new build system, and a bunch of improvements. Here are the past week’s high-level changes:
101 files changed, 716 insertions(+), 797 deletions(-)
Open source rocks. Especially if its best practices are followed. It has succeeded for so many other projects similar to yours, chances are it’ll succeed with yours too.