June 24, 2009

Platform architecture: orthogonality of interfaces

Over at the TAG (Web archtecture)  blug I posted an essay that wasn't even discussed at the TAG meeting I'm at. Bad form? Presumption? Undemocratic? I suppose. Take a look.

June 22, 2009

Democracy, the oracle, and the W3C TAG


Athenian treasury at Delphi
Originally uploaded by Larry

Recently on a travel/study cruise focused on ancient Greece and the classics, we toured the Temple of Apollo at Delphi, from which the Delphic oracle spoke.

When does someone consult the oracle? I carry a pocket oracle: an iPhone "Magic 8-Ball" application which I consult at times, usually when I can't make up my mind, but don't want to waste any more time thinking about the decision.

Did the ancients also consulted the oracle when the course of action wasn't clear? Having weighed the pros and cons, the choices seem balanced. But often making some decision is imperative.

In a tyranny, the tyrant can decide. But if there is a group decision process and a need for agreement, then sometimes some external force is still needed to help the group come to a timely conclusion. Even if the ancients couldn't agree on a decision, they could agree to consult the oracle, and the oracle's pronouncements could then be used as justification for the ultimate decision.

The treasuries at the Delphi site impressed me; they were large constructs to hold treasures given as gifts to the gods who provided help in deciding important issues. The treasuries at the Delphi site clearly represent a community contribution, a kind of endorsement, sign, of the oracle as an authority.

The W3C TAG is an Architecture Group to which I was elected. The W3C TAG produces "findings" -- readings of general principles for the World Wide Web. Our pronouncements might be used as justification one way or another to encourage consensus, in those cases where otherwise reasonable participants cannot come to a conclusion on a course of action, but where a coming to a decision is important. Standards are often about making difficult choices. Let Sir Pythia speak, and we Delphic priests will interpret (alas, not in elegant hexameter).

Why saying 'HTML5 is not a standard' matters

,,

(Repost of comment on W3C blog)

Let's focus on the goal: insuring that everyone "on the web" can reliably communicate. HTML was intended to be the "common language" that every device, browser, computer could read and interpret, even though there are other languages and systems and formats and features. Increasing the capabilities of the common language to include "web applications" is an important subsidiary goal, as long as the original purpose of HTML isn't lost.

It is important to avoid the tragedy of the commons, where individuals and organizations acting independently in their own self-interest can ultimately destroy a shared limited resource. The "commons" is "global interoperability".

W3C provides a forum where organizations that might otherwise be in competition can get together and agree on a common technical goals -- one that they all agree to implement -- and to document that agreement in a way that anyone who wishes to can participate in interoperability. I don't think the quibbles about "Standard" vs "Recommendation" matter. It's critical, though, that whatever is documented and published (and promoted as a "standard") actually represents agreement.

I don't see how it is helpful if the status of the agreement of the participants is obscured. Calling something a "standard" (even if qualified as "under development") before there is agreement doesn't distinguish between "proposed but not agreed", "agreed but incomplete", or even "agreed, but document not finished". How does this help reach agreement?

Is shipping an implementation of a proposal before there is agreement helpful? Perhaps as a way of resolving disagreement by "fait accompli", but if different vendors ship different, incompatible versions of their own interpretation of the "draft standard", that would be counter-productive. If vendors ship implementations and call them "standard", but in the end the feature doesn't ever become standard -- doesn't this encourage users to create content that only works in some browsers and not others? It becomes another instance of "best viewed by".

I can't see how continuing independent tracks of web development (one for browsers and another for XHTML/XML/SVG-based workflows) can evolve into a single web useful for all.

Whether something is called a "Standard" or not doesn't matter as much as whether doing so helps or hinders where we need to go. Let's focus on that.