Postel's law
expressionnetworkingprogramming
'Be conservative in what you do, be liberal in what you accept from others' - the robustness principle from the TCP specification.
Jon Postel wrote the maxim into the 1980 TCP specification, and it shaped a generation of interoperable protocol implementations. Decades later the field partially recanted: tolerating malformed input lets errors and attacks hide, so modern guidance (including RFC 9413) argues for stricter validation. The law endures as the axis of one of protocol engineering's longest-running debates.
Be conservative in what you send, be liberal in what you accept. Jon Postel wrote it into the early TCP specification, and it is probably the most consequential single sentence in the design of the internet, because it let independently written implementations interoperate before anyone had conformance test suites.
The modern reassessment is that the second half caused enormous long-term harm. Accepting malformed input means the malformed input becomes normal: senders never learn they are broken, receivers accumulate compensating code, and after twenty years the de facto protocol is whatever the most popular implementations happen to tolerate. HTML is the canonical example, where liberal parsing produced years of incompatible error recovery before HTML5 finally specified exactly how to handle broken markup.
Security made the argument sharper. Every leniency is a place where two implementations may disagree about what a message means, and request smuggling, certificate parsing bugs and a long list of injection classes all live in exactly that gap. Current practice leans the other way: specify strictly, reject early, and fail loudly, which is why newer protocols define parsing precisely rather than leaving room for kindness.
Also known as: robustness principle, be liberal in what you accept