Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

A New Design Principle #4

Closed
annevk opened this issue Oct 3, 2017 · 1 comment
Closed

A New Design Principle #4

annevk opened this issue Oct 3, 2017 · 1 comment

Comments

@annevk
Copy link

annevk commented Oct 3, 2017

I think https://www.w3.org/TR/html-design-principles/#interoperability is much preferable to this principle (though maybe not the exact words used).

  1. "Undefined inputs" is a problem in the sense that the format/protocol should have an answer for all inputs. (That also gives you an extensibility story.)
  2. "Fail noisily" is problematic as we don't necessarily want to expose end users to failures. And consider legacy clients encountering a new feature (undefined input?) should not necessarily fail or throw either.

To elaborate on 1, not dealing with erroneous/undefined inputs is common in IETF documents and causes all sorts of problems for:

That has been far more harmful than "be liberal" has ever been. After all, you cannot even be liberal if all inputs have defined behavior.

@martinthomson
Copy link
Collaborator

The latest draft is a more fundamental statement about the robustness principle, that I think is now compatible with the HTML design principles. One thing that I think is exemplified in the WHATWG specifications you cite here is that they are actively maintained. A lot less is said about error reporting, though I still believe it to be critical in understanding where things went off the rails.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants