There's a curious turn of phrase in Mark Shuttleworth's latest blog posting on how some future Ubuntu Linux developments will be kept secret until release:
[…] This would provide early community input and review, without spoiling the surprise when we think the piece is ready. […] There's also plenty going on that doesn't warrant the magician's reveal. […]
It might be an overdeep reading, but perhaps it's accidentally telling. My understanding is that magicians keep their routines secret for two main reasons. Gaining competitive advantage is an intuitive one. Another is the preservation of the surprise/delight for future audiences. The first is to the magician's benefit; the last intended for the audience.
In the standard proprietary software business, one sees analogies easily. Competitive advantage is maintained by patents, trademarks, copyrights, which keeps the other guys from easily reusing the ideas. Audience delight is a specialty of a smaller number of well-known firms, which build up to a big sizzly announcement of newer, shinier things.
For a company operating in the free/open-source part of the software industry, it’s different. There is no “secret sauce”, as customers and everyone, is welcome to examine and modify the innards, share it, etc. There is no artificial surprise/delight, as incremental progress is not merely done in the public view (on public servers, mailing lists, etc.), but done with the assistance of the public. (Money comes in from ongoing support subscriptions/relationships.)
There are many companies in between, closer to one end of the spectrum or the other. As long as they are honest about their place, more power to them. It appears as though the forces of magic are making an impression on Mr. Shuttleworth, a transition which may or may not suit their community. To the extent my simple analogy works though, I’m delighted to work for one of the few successful firms at the non-magical extreme.