>_”The nice thing about standards is that there are so many to choose from.” -_ __Andrew S. Tanenbaum, Computer Networks (2003)__
Andrew’s quote may be one of the most overused statements in modern IT. Why do cliche and stereotypes exist? Because they are mostly true. Similarly, Tanenbaum’s statement holds true in many areas. When it comes to user interfaces, we certainly like our standards.
Microsoft, of course, has an extensive set of guidelines for developing on the Windows platform. Not to be outdone, every other major operating system has their own including Mac?s Aqua, Unix?s KDE, Java, and the open source GNOME. Unlike last week, I won?t go into too much depth about each one and leave that instead as an exercise for you. The two more interesting guidelines of the group are GNOME and Java. GNOME is unique because it is an open source project and HCI?s role in open source projects is a topic that?s worthy of a week?s discussion in itself. Java is unique because unlike Windows or Aqua, it is designed to function across platforms, thus potentially directly conflicting with the platform guidelines.
Whilst searching for interface guidelines and standards, I came across an interesting new standard currently being developed for Automotive Multimedia Interfaces (AMI) by numerous automotive firms. Standards, of course, do not only apply to user interfaces on desktop screens. While I will discuss the usefulness of standards in the context of graphical user interfaces, the core concepts could certainly be transferred.
Are standards really that useful? Let?s study the commonly perceived advantages of standards. For the scope of this article, we will talk about platform standards. Later on, we might talk about building internal standards for custom applications or entire companies.
To prep for this article I thought about standards for the whole week. For a while I had this notion that building software was like writing a novel, and standards were the rules of grammar. It’s possible to work outside of the queen’s rules for English grammar, but you risk not being understood. I eventually gave up on this idea since there were so many ways to be understood outside the rules.
My next idea was that standards were like the 5 paragraph essay. In high school they teach this form of writing where every piece must have an intro, 3 supporting paragraphs and a conclusion. The last line of your intro is the thesis and the leading sentence of each paragraph kicks off a supporting point. This was more like it. The 5 paragraph essay enforces a generally understood structure, but it is clearly not the only structure that can be understood. It is useful in high school because it let writers and non-writers put words on the page without having to agonize over structure. Applying this analogy to UI design, UI standards help put your interface into a generally understandable form, though by no means the only or best form possible.