Follow

The world wide web. The place with the most standards and the least adherence to them.

Why do they even publish those RFCs if nobody sticks to them?

· · Web · 0 · 1 · 1

@ffried I think people are generally good at sticking to the TCP, UDP, and HTTP standards.

It's just that in the lifecycle of tech, "publish RFC" happens about a decade before the industry settles on that RFC (plus the 10 other RFCs that patch/extend the first one).

@cj Mostly true. "Low level" standards are mostly met. But I'd consider query encoding to be part of the HTTP standard, yet everyone does it differently.

E.g. are `[` and `]` encoded in query or not? So `array[]=0&array[]=1` or `array%5B%5D=0&array%5B%5D=1`?
According to the RFC it's the latter.

@ffried Yeah, I guess it depends on whether standards are viewed as de facto or de jure. People can't even agree on that, so by default the "standards" concept inherits this flaw: is a standard defined by the letter of the law or the in-the-wild convention?

@cj IMHO every software should stick to what is defined in the corresponding RFC (or whatever the form of documentation). If something is not covered -> write an RFC that extends the first and covers it. If another software comes across the same (previously uncovered) topic, it is then covered.

Can't be that hard, right?

@ffried You'd think, but there's a lot of reasons why things deviate: RFCs are finalized after implementations already exist, inherent ambiguities of the English language (despite having MUST, SHOULD, MAY, etc), and self-contradictions in the spec.

And that doesn't even finish the category of "unconscious decisions to deviate from other implementations". Which means just getting people to stop making conscious decisions to deviate from the spec is not sufficient.

Sign in to participate in the conversation
Mastodon for Tech Folks

This Mastodon instance is for people interested in technology. Discussions aren't limited to technology, because tech folks shouldn't be limited to technology either!