Easing the release tax burden
I've started thinking again about how to release software quickly. This isn't anything new to me, I've spent a long time with several start-ups working out the details of getting a release into customers' hands, getting their feedback (sometimes immediately), and getting the next release moving. This doesn't seem to be rocket science, there isn't a lot of hard work involved, and there shouldn't be any heavyweight process.
Why am I bringing this up? I have this sneaking suspicion that it's not really possible to release software quickly if you're releasing it under the Microsoft brand. The folks in MSN, Windows Live, and Office Live will likely take issue with that suspicion. In fact, they're out to show the world that Microsoft can release relevant software quickly. I live in a different part of the company where we feel the brunt of long-cycle upgrades. That is, our customers typically buy a product and sit on it for somewhere in the seven-year range.
Now, don't get me wrong, I'm all for buying a piece of software and realizing that investment over something longer than 12 months. And, I sincerely believe that software manufacturers can make that model work very well - they can make money, the customers get new features, and everybody is happy.
But, I've been working on a "new" software delivery model recently and it's all about speed. We are trying to define the product, build enough of it, and get it into customers' hands on very short development cycles. What hit me was the amount of non-essential work necessary, within the confines of Microsoft, to actually release that product. We have so much process around the edges that we can easily overwhelm the actual development time.
Sure, this is a tax that we pay for different reasons: legal issues, security, trademark, copyright, sustained engineering, globalization concerns, and so on. This is the price we pay (and there are more taxes, these are the ones that jumped to mind) to get a piece of software out the door. So, if we're talking about a one- to three-month development cycle, then we're looking at somewhere around six months to release whatever it was that we built (Charles calls this "turning the crank" and claims it's a fixed cost regardless of the project size). With that tax, is it even possible to get on a fast-release train?
Maybe I'm wrong, maybe this is just the view that I've had releasing six products over my Microsoft career. If I am wrong, then let me know what I can do to make the process lighter. If I'm not wrong, then let's work together to see what we can do to ease the release tax.