quote from http://lwn.net/Articles/354408/
X is no longer stagnant; it is being heavily developed under freedesktop.org. As X has come back to life, its developers have had to do a massive amount of code cleanup. Keith has figured out a fail-safe method for the removal of cruft from an old code base. The steps, he said, are these:
1. Publish a protocol specification and promise that there will be long-term support.
2. Realize failure.
3. "Accidentally" break things in the code.
4. Let a few years go by, and note that nobody has complained about the broken features.
5. Remove the code since it is obviously not being used.
Under this model, the XCMS subsystem was broken for five years without any complaints. The DGA code has recently been seen to have been broken for as long. The technique works, so Keith encouraged the audience to "go forth and introduce bugs."