I am in "changes are good" camp, too. The very reason that made me start this thread is that many good proposals in DIP's where rejected because they break the code while it breaks in practice anyway. It is simply not possible to have one product that suits perfectly two conflicting needs.