On Tuesday 23 March 2004 07:57, Greg Connor wrote:
There is a "theme" or "philosophy" that starts with early HTTP specs,
perhaps even earlier, that goes something like, "Be as strict as possible
in what your device does, but be as permissive as you can when other
devices are not compliant."
It sounds great as an idea, but now I am starting to think that maybe "be
permissive" is what got us where we are today with email standards that are
often abused and rarely checked (like RFC 2821 HELO being a fqdn).
[snip]
Anyway... I'm not saying we should necessarily be strict, but I wanted to
provide a quick counterpoint to "allowing others to be sloppy doesn't hurt
the rest of us"...
The quote and philosophy goes back to TCP (RFC 793 - "be conservative in what
you do, be liberal in what you accept from others") and is widely attributed
to the late great Jon Postel, father of RFC's, DNS, IANA numbers and most of
what made the internet actually work, especially in the early days, to the
extent that he has an obituary RFC
http://www.usc.edu/webcast/events/postel/
http://www.faqs.org/rfcs/rfc2468.html
http://gtm.vlsm.org/in-iana.html
The point you make is a good one that is made by others too
http://www.manageability.org/blog/archive/20030411%
23be_liberal_in_what_you/view
http://www.dynamicobjects.com/d2r/archives/002518.html
The line that makes sense (to me) is that _specifications_ should be as strict
as possible (but without limiting future extensions), but _implementations_
should be a little more forgiving.
Cheers
--
Tim