|
The events of the last week have brought many adverse comments about the wisdom of the Founding Fathers,
in particular the suitability of the electoral college. In this article I take a quick look at the Constitution from a
software design standpoint. And it does hold up well!
The Constitution of the United States has always appeared to me an embodiment of wise design (the fact that it
still stands after 200 years should alone be staggering to any software architect). Just for starters:
-
It lays down only some basic principles, and usually refrains from
committing itself to details where it shouldn't.
-
Simultaneously, it does lay down specifics where it must.
-
It is a document of few words.
-
It provides excellent exception handling.
Before going further, let me argue that the Florida imbroglio is more akin to a hardware error than to a design flaw.
Those who claim that this is a problem with the electoral college are completely off base - after all, problems with ballot design and voter error could
occur with or without the electoral college.
And those who say the electoral college might not reflect the will of the absolute majority (as it has not about twice before in the 200 year span),
will do well to consider this: A combination of 51 senators - perhaps representing only 20% of the population - can (and do)
routinely defeat or pass measures in the Senate!
The Constitution is a model of modularity. Its minimization of rigid structure, without parallel in world constitutional history, has enabled the
original 13 states (colonies) to grow four-fold almost without any restructuring of the statute. The framers instinctively understood and put in practice, two centuries ago,
what we have to din into engineers' minds to this day - the benefits of loose coupling, the perils of overdesign and the importance of simplicity.
Like all good design, the Constitution is a paragon of polymorphism - in the matter of Presidential elections, it limits itself to saying that each state shall
elect, per its (the state's) own rules and procedures, a set of electors equal to the number of congressmen and senators from that state, who shall then assemble
to select the president and vice president.
And in true polymorphic tradition, the Constitution is loud and clear about intent but silent on implementation.
It does not tell us what the rules of the election
shall be, nor mandate voting hours, nor fix the last date to file nominations. All these things (local banalities?)
it leaves to the states and local authorities.
It does, though, specify exactly which date the election shall be held - the first Tuesday after the first Monday of November. The framers
understood the potential for mischief (perhaps from British experience, the rump Parliament of Cromwell's time being not too distant
a memory in 1787) in making the holding of elections an open-ended choice.
And consider its remedies, all contained within its first 20 or so articles. For each of its provisions, the Constitution
offers several 'catch' blocks in succession. Whether it be for deadlocked electoral colleges, or for the death
of a sitting president or, indeed,
impeachment, there are procedures in place. This is a great example of exception handling - anticipating the problem while accurately forseeing its rare usage.
But as with any design, good intentions alone are not enough. Good fortune - and good sense - too must attend its progress. In this the US has been singularly blessed.
First, the design, by common consent, has been accepted as next only to the Gospel - changing the Constitution is not easy. In over two hundred years, the Constitution has
been amended some 30 times - of which the first 10 - the Bill of Rights - may properly be considered part of the original Constitution. Contrast this with India, for example,
where there have been close to 75 amendments (I err on the lower side if I do) in the
first 50 years.
Second, the implementation of provisions by the states is not usually challenged, unless it comes into conflict with the intent. It was Lincoln (an object-oriented master - an article on him next month) who
correctly understood that a polymorphic design was useless if the implementation ran counter to the intent, and established the principle of intervention to correct this. In more
recent times, Presidents Kennedy and Johnson tried to do the same in the matter of civil rights. This is the true meaning of the phrase, a more perfect union, the matching of myriad implementations to a common intent.
Rarely has the spirit of the constitution been echoed better than in President Clinton's second inaugural address, where he said (and I paraphrase),
"...you can be an American no matter where you are from, so long as you subscribe to these basic principles...". Almost
the textbook definition of the interface concept, wouldn't you say?
The Constitution of the United States has withstood two hundred years of change - it has been, to employ the usual buzzwords, scalabale,
extensible and robust. It is a pillar of reassurance to those professing the merits of
object-oriented analysis and design, because it has successfully applied
many of the same principles - namely, that
intelligence is better distributed than centralized, that in design, only the absolutes should be nailed down, the rest should be left free to
be reinvented, that each generation will have information that is unthought of in the previous one.
|