3 ms·
Has Postel himself backtracked though? Because while Joel is an authority of sorts, Postel was too...
by mongol 3y ago
Has Postel himself backtracked though? Because while Joel is an authority of sorts, Postel was too...
- coldtea 3y agoThat would be relevant if the criterion was "what some authority believes". Joel merely states what reality showed about Postel's law over decades. It's a thing developers know from experience, if Joe Random had said the above quote, it would still be true.
- mongol 3y agoThe success of internet's core protocols tells a different story
- coldtea 3y agoEverything can be a success if its the only game in town or a free option, even Javascript. And we shouldn't conflate adoption success with design quality either. That said, it's not like TCP is a great example of Postel's law, and surely not in the crude way it's understood and practiced by its advocates. The RFC says: "As a simple example, consider a protocol specification that contains an enumeration of values for a particular header field -- e.g., a type field, a port number, or an error code; this enumeration must be assumed to be incomplete. Thus, if a protocol specification defines four possible error codes, the software must not break when a fifth code shows up. An undefined code might be logged (see below), but it must not cause a failure." Which is hardly the "anything goes" ticket people imagine it to be. E.g. TCP would still break on a badly formed header and consider it an error. Besides, the advice is good for a transmission control protocol, especially one involving in-between nodes that will not care for the enumeration values like ports and such like the start/end nodes do, and just need to pass them through. It's horrible for other types of software. Language parsing would be a great example where it should not be followed. And of course the most famous related shit show is HTML handling in browsers. HTML might be succesful, but it's hardly because of following the Postel principle.
- mongol 3y ago> HTML might be succesful, but it's hardly because of following the Postel principle. I think if webbrowsers were not lenient with HTML parsing the web would have been adopted much slower in the initial years. Also, HTML5 can be seen as a confirmation that XHTML2 with a strict parsing would not be successful. I followed the WHATWG mailing lists quite closely when that effort began. This is evidence for the applicability of Postel's law at least in the case of HTML.
- zaphar 3y agoNearly all of the internet's core protocols reject bad/malformed packets. They don't do a best effort to figure out what the sender "intended" they just reject the packet. Some of the most popular instances of doing a best effort to figure out the intent of the sender are also poster children for protocol level security flaws. If we've learned anything from deploying, managing, and developing on top of the core internet protocols it's this: 1. Be very conservative in what you send. 2. Reject anything that isn't what you expected to get. If you squint you can sort of see that being a valid interpretation of Postel's law but it's not the standard interpretation in practice.