One of the more painful lessons that I learned in business is that good contracts keep good friends as good friends. I had to learn the hard way how stressful it is on even good, solid relationships between very smart and honest people when misunderstandings occur about things that mean something to them – i.e. MONEY, or more generally BUSINESS. When things are just left up to good intentions and the belief that “we can all just work this out like normal people”, I invariably find the trail of debris in broken friendships and business partnerships.
I am of the opinion that no one actually sets out to do stupid things. Rather, stupid things happen almost invariably for the best of intentions. Thus the phrase “The path to hell is paved with the best of intentions”.
And so it goes with standards. In the past week, I’ve been privileged to witness two crystal clear examples of first class paving of the path straight to the gates of hell. The root of both of these examples is the simple fact that the specification organization doesn’t have a process in place for dealing with the changing of a specification after it has been accepted as final. Basically, in this organization, the “final” version of the spec is presented to the members, and the members vote on whether to accept it. Sounds simple, right?
Well, the devil is always in the details and due to the way these things are scheduled, the reference implementations and conformance tests for these specifications aren’t finished at the time that the members vote on the “final” version of the specification. Consequently, if anything shows up in either the creation of the RI, or in the creation of the conformance test which is to verify that the behavior in accordance with the specification, there’s a serious problem that needs to be resolved.
In the two cases I’ve been privileged to see this week, the first was an issue with time. As with all things, resources are limited, and certain resources are scarcer than the sympathy in a banker’s cold, dead heart. Consequently, when the time pressure to produce something gets unbearable as the deadline approaches, the reality will set in and like survivors on a sinking lifeboat, everyone starts looking for stuff to throw overboard. And because this process is done under pressure, there’s not an awful lot of thought and strategy put into the choice of what is being chucked overboard.