w3c / AB-public

Advisory Board repository for materials not meant to be restricted to W3C Members
https://w3c.github.io/AB-public/
17 stars 15 forks source link

The point of standards is to create and ensure interoperability #112

Closed cwilso closed 9 months ago

cwilso commented 1 year ago

As per a discussion during the AB FTF in August 2023, I believe something to the effect of the title line should go in the Vision - we should make it clearer that the motivation for building technical standards is creating interoperability.

dwsinger commented 1 year ago

I think that Standards enable an open field with multiple implementers, through public specifications and interoperability. Interop is a consequence of the desire to have an open multi-vendor field

swickr commented 1 year ago

I believe a goal of a W3C standard is that the specification be sufficiently clear and free to implement that implementions from different developers interoperate out of the box. When we find that something was ambiguous to an implementor that led to an interoperability fail we strive to clarify the specification.

frivoal commented 1 year ago

How about replacing:

We believe proven interoperable implementation is a requirement for broad adoption of standards. To ensure reliable interoperability, we require multiple implementations and open test suites for our standards.

with:

The goal of standards is interoperability. To achieve reliable interoperability, we require multiple implementations and open test suites for our standards.

TzviyaSiegman commented 11 months ago

@cwilso and @frivoal do you want to add this sentence?

dwsinger commented 11 months ago

I'm hesitant. I'm not sure it's the fundamental point, and I'm not sure it's the only point.

Standards create choice for buyers, they enable complex markets to be decomposed into smaller pieces which can be individually competitive, they enable organizations with different foci and expertise to create viable multi-vendor ecosystems (e.g. consumer devices and business services like servers that support them) and so on.

Doubtlessly interoperability is a major enabler of those and other goals, but I don't think it's the goal per se, and I am not sure it's singular.

cwilso commented 11 months ago

I do still believe this belongs here. I think making clear that the purpose of writing down a standard is to ensure interoperability is, in fact, a critical point. (Versus, say, claiming compliance with a "standard" that does not guarantee interoperability as a marketing asset.)

David, to your point, standards create choice for buyers because they ensure interop. If they don't ensure interop, buyers (users) will be locked into a choice - similar to how at one point users were locked in to using IE because it was the only browser that "worked" on their websites.

I still owe an explicit proposal on how to say this. Florian's suggestion above isn't bad, but I'd like to try to improve on it.

dwsinger commented 11 months ago

Maybe I'm splitting hairs, but one of the points of standards is to create multi-vendor markets – for which interoperability is an essential component. (Another point might, for example, be replacability, that even if there is a single vendor, if that vendor fails in some way, the interfaces and operations are all publicly specified and can be substituted.)

We have, in the past picked the wrong place to put the standard interface, and failed to get multiple implementations on both sides. We did enable interoperability, but we didn't enable a multi-vendor eco-system, so we were not 'done'.

Interoperability is an (essential) means to an end, not an end in itself.

cwilso commented 11 months ago

This feels like hair-splitting. I get that what you are saying is in the difference between "the goal of standards is interop" and "a critical requirement for standards is interop", but I'm not sure I entirely agree; every time we have not focused on interop, we have failed at interop.

dwsinger commented 11 months ago

maybe. If we don't have interop, we don't have a viable standard, for sure.

but as I say, there are failure modes where we nonetheless have interop, and if that's the case, then interop can't be the goal itself, but a critical enabler.

cwilso commented 9 months ago

Upon reflection, as the filer of this issue I am content with the Operational Principle on Interoperability.