Subject: [Stackevo] Stepping on the toes of giants

From: Martin Thomson <[email-masked]>
Date: Wed, 1 Nov 2017 17:13:43 +1100

I spent a little time last week on reworking the primary thesis of one
of my more well-known drafts.

https://datatracker.ietf.org/doc/html/draft-thomson-postel-was-wrong

I think that this is the group of people who are likely to be most
interested in this.

The best feedback (out of many, many emails) I had on this draft was
from Mark.  He pointed out that I was being too strong in my emphasis
on fatal errors.  And that was right.  What is missing was a proper
emphasis on looking after your protocol after publication of an RFC.

In reading back through Postel's work, I realized that his earliest
mention of the Robustness Principle is preceded by a frank admission
of fallibility.  In effect he was saying: please excuse the
shortcomings of this spec, and please fix them for yourselves.

I don't want to diminish the value of recognizing the possibility that
a spec could be incomplete, or that it could contain errors.  The
ability to see that possibility - and the honesty to admit it - is
admirable.

Later iterations of Postel's statement omit the fallibility premise,
which I think is a huge mistake.  I was pointed at IAB RFC 1958, which
further enshrines the problematic statement as having its own merit.

In this light the Robustness Principle is a bigger mistake than I had
previously thought.  In a sense, it's shipping software and expecting
users to work around your bugs.  And it's encouraging others to do the
same.  No one does that any more with software.  And if you look
around, protocols don't receive that treatment either, at least from
the IETF.

The draft now concentrates on the subject of maintenance.  It's still
a draft, but I'd be interested in what people here think of the
change.