Logic’s End

Logic is the Beginning of Wisdom, it is by No Means an End.

Browsing Posts tagged Constitutional

God Save the Queen?

2 comments

As the Olympics rage on in Vancouver, I can’t help but think about what makes our nation great: our historic ability to continually move forward together through the most adverse conditions.

Once upon a time in a political science classroom long ago, I disagreed, rather cheekily, with a veteran professor of the American Presidency. I posited that a lifelong president would ultimately have proven a more prudent solution than the term-limited game show hosts we contend with today. It was an argument based on the idea that long term President could better maintain a steady commitment to upholding our Constitution. Much to my chagrin, I was abruptly dubbed a budding anglophile.

It just so turns out that Alexander Hamilton was the originator of said Constitutional plan that called for just such a quasi-monarchical president. As time went on my admiration grew for my Anglo ancestors. Apart from their singular British wit and raucous Prime Minister Question and Answer sessions, are there not some lessons on just rule we can learn from the British Parliamentary system, despite having handily trounced them for their egregious abuses  more than 200 years ago?

For instance, if Presidents had no term limits, we could elect them for their continuous good performance. Moreover, we would avoid the media frenzy and hysterical speculation every four years. Presidents might find more time to inspect the nature of the laws they enforce instead of writing them. In practice, the President would serve more like a British Prime Minister, except for the all important fact that the President would remain a distinct official who derives his authority from the people and not a King or Queen.

The ancients eluded to the notion of the best possible regime for mankind. The answer Xenophon suggests during his Hiero or Tyrannicus is a form of enlightened monarchy. In other words, a monarch that is prudent, just, wise and a even comes with a prize at the bottom of the box! This would be something akin to a King Arthur of Camelot. Wouldn’t it be great if we could all rely on a watery tart to throw our candidate a scimitar from the depths of Lake Michigan every four years? It’s an idealistic vision for an unsolvable problem. The truth is, the best regime is unachievable so long as men are imperfect. So what then are we to rely upon and why wouldn’t a King or Queen work in the long run?

The greatest achievable regimes seem to be, our extended republic, or its European cousin the parliamentary democracy. Kings and Queens can’t guarantee that the sword is going to land in the right hands.  What if we get a bad Queen? We must endure Bumbling incompetence for as long as she lives? If the country falls apart around us, what then? Monarchies rely on force, chance, and inheritance. Democracies instead employ reason, choice, and elections. So no more watery tarts, off to the amusement parks with their heads!

How powerful do we allow our executive branch to become? The very idea of a President tongue lashing Congress during the State of the Union or writing laws pushes that limit. In modern British Parliament, the executive is first a representative and later appointed to lead his party of representatives. A President is quite the opposite. He is never elected to directly represent anyone. His job is to enforce our laws, and ensure that they are not in violation of our Constitution. Presidents keep our representatives honest, should they ever falter. Without them performing that role our regime loses balance.

No term limits (as prior to President Eisenhower) doesn’t mean that we could not remove a bad President. Would we still have to hold an election for a President every four years? Yes. Would an election force a restart on policy at least every eight? Hardly. What’s more important for a President, writing laws or making sure laws are good? Less emphasis on the former to justify campaigns would help the latter. As the British have shown us, it’s difficult to get both from one man or woman.

Until next time, I leave you with this YouTube clip of God Save the Queen!

As with all things in life, sometimes we learn the most when we fail. Early success can be a harbinger of bad design. Imagine if the first generation cars America made had never been involved in crashes. Would we have begun crash testing and safety design or just assumed that our vehicles wouldn’t crash? Think about how deadly crashes would be on modern automobiles if we hadn’t failed so many times to date.

When we’re talking about modern products and services, the question becomes: how do we design for failure before our products are ever released to the public? It’s no longer sufficient to rely on the user to fail in order for the manufacturer to learn. All of the testing the airline industry puts into the components of a new jet is a testament to good product development, designing for failure under the worst conceivable conditions.

Computer software should be no different. Too often today, the phrase ”beta testing” is synonymous with “product marketing”. This plays a significant role in forcing underdeveloped prototype products into the hands of unsuspecting users too quickly, and I believe it’s what lies at the heart of our most detested software.

With the proper amount of requirements, documentation, and planning the time required for beta testing can be reduced. Nonetheless, even the designs of Leonardo Davinci and a software programmer with the foresight of Sun Tzu couldn’t possibly predict how every single user is going to interact with today’s complex software applications. Testing software will always be a necessary part of development.

So if testing is so critical, how should it be carried out? I would argue that it ought to be a controlled, continuous, and iterative process. You cannot have a handful of your test users sit down at any given time, test for an hour, write down their suggestions, and leave. Nor can you test with all of your users at once, as that would overwhelm your team’s capacity to evaluate and implement their suggestions.

If the US Constitution were drafted and ratified with the involvement of every member of every state government sitting in a giant meeting hall, we’d likely have no Constitution and no country at all. Moreover, if it were created behind closed doors solely by Thomas Jefferson and James Madison, we’d have arrived at the same result. Planned, iterative, and controlled development is a reasonable and prudent process.

Therefore, my software testing solution at present is to bring in groups of users and continually increase the size of the test group as changes are implemented and testing is carried out. Representatives from your group of critical stakeholders, the people who have the most to lose from a poorly designed application, are the first to test. After that, I increase the size of that group and add in a few non-critical users. The third and final phase is to open the door to all users for testing with the most refined and development prototype of the software at hand.

It’s important to note that users need to be encouraged to actively participate. Often they tend to wait until the last testing date and submit everything at once. Also, prior to opening the system up to all users, it’s beneficial to get the word out about your product. Much like the Federalist Papers did for the Constitution, you have to create an argument for your product and explain it to the least familiar and most opposed of your users.

Coupled with good planning, good testing can create some of the most innovative and user-friendly software in the computer industry. The developer can fail often and do so before the product arrives in the public’s hands. What this process amounts to is the re-humanization of computer software design. It forces the developer to adapt applications to people naturally, instead of forcing people to adapt to the applications.