Software Secrets: Do They Help or Hurt?
Businesspeople tend to assume that secrets are assets. But the
value of holding a secret has to be traded off against
the cost of doing so. That cost includes
foreclosing the possibility of independent peer review, and betting
your company on a product that is dramatically less reliable
than it could have been as open source.
Are there circumstances under which going closed makes sense?
Trade Secrets: Perishable Goods
Yes. Closed software and trade secrets make short-term
sense in areas where serious research is required. Today,
the R&D; cost behind (e.g.) speech and handwriting recognition,
high-performance 3D engines and MPEG codecs makes them
candidates to stay closed. This is not systems
software that benefits greatly from debugging by users; robustness
typically isn't even much of a problem. So the cost of forgoing
independent peer review is relatively low.
The general pattern here is that if the main cost driver is
research cost rather than implementation and
maintenance, then it makes sense to be closed. But there's
a management trap here, because the moment anyone else publishes a
functionally similar technique, your cost picture reverses. The value
of the `secret' evaporates, and you're left with all the chronic
problems of a closed approach and to fix them, you've got to start
building a co-developer community late in the game.
So probably there still will be some permanent trade-secret software
in the future, in the few cases where it confers a stable long-term
advantage in a narrow specialty. Petroleum companies, for example,
might have good reasons never to share the data-analysis routines they
use to map oilfields. But in most cases, the strategic challenge is
to know when letting go serves your interests.
Hot technologies don't stay hot forever so, in the
long run, open source is the winning model even for research
intensive software. Today we can see this happening with
such recently-hot technologies as scalable font rendering and 3-D
animation engines for action games.
In general, the optimum strategy will be to stay closed until it
becomes clear that someone else is likely to soon go open with
a similar technique, and jump first. In this way you start
building a co-developer community at the earliest possible
Trade Secrets Considered Marginal
It's important to notice that none of the advantages that make trade
secret protection valuable in the short term have ever
applied to most of the bread-and-butter products of the software
For the office-business market that supports most commercial software,
it's hard to even imagine what techniques could have significant
trade-secret value. Doing spreadsheet recalculations, addressing bulk
mailings and computing payrolls are not deep problems; we probably
have public algorithms for these now that are as good as we're going
For most commercial software, then, research value is trivial and
implementation cost everything. Reliability and stability is the
most important requirement. This is a good argument for
making it open.