4 ms·
First rule of network programming: conservative sending, liberal receiving
by hyuen 6y ago
First rule of network programming: conservative sending, liberal receiving
- ncmncm 6y agoThat has turned out to be a really terrible rule. It makes it very hard, sometimes impossible to upgrade a protocol, because some peer somewhere will try to interpret your new thing if it were a broken old thing; so security holes get enshrined. It is much better to fail fast, and make it easy to see why. The only people who benefit from enabling crap implementations, in the end, are makers of crap implementations. Their stuff should fail as soon as possible, so they have to fix it. In some cases, it is acceptable have a "permit crap" mode that can be turned on in cases where the other end is not negotiable. But ideally the crap fails to work the first time it is plugged in, and returned to the manufacturer. Stuff that causes no end of trouble gets replaced eventually, but somebody has to expose the trouble, and it is best to have lots of company so the culprit is blamed.
- samoa42 6y ago> That has turned out to be a really terrible rule. maybe in the ivory tower of web shit, but it is essential for internet/society. like you said > in cases where the other end is not negotiable. aiming for robustness is key if you want to enable a diverse ecosystem.