This week I read two articles which really got me thinking about the value of an agile and community-based development processes.
The first was the fact that roughly six weeks after shipping Eclipse 3.1, Eclipse 3.2 M1 is already available. And it is not just a token release. There are some pretty cool new features available. And this after shipping the fourth Eclipse platform release in a row on time.
The second was an article brought to my attention by the often insightful James Governor. Apparently not only is Visual Studio shipping one year late, but with serious reservations from their own community about the quality of the product.
Does it get any clearer than that?
This does not happen by accident. IMHO, it is by design. Eclipse does it by following a process that you can see described by Wiegand and Gamma at EclipseCon 2005.
Many people attribute this style of development strictly to open source communities, but I actually believe that it can be followed by commercial developers as well. One good example that comes to mind is the JetBrains team that builds IntelliJ. They constantly get high marks for innovation and quality. And they do it by listening to their community.
It is going to be awfully interesting to watch Microsoft over the next twelve months as they try to ship enormous software releases using the processes that have made them successful to date. My fearless prediction is that they are going to be re-thinking how they build software after they survive Vista, Studio 2005, et al.
The inherent value of agile and community-based software development are just becoming too obvious to ignore.