[IxDA] Re: [IxDA] Capitalization in username

19 Sep 2010 - 3:16pm
489 reads
Brian Forte


>>We're currently having a debate around capitalization in usernames (not >>display names). > >I think the best policy is the one originally prescribed for browsers >in dealing with HTML: Be generous in what you accept; be strict in >what you emit.

Although Berners-Lee did include this notion in his [Axioms of Web architecture][0], the Robustness Principle is a lot older than HTML.

It's commonly credited to [Jon Postel's][1] 1980 RFC on the Transmission Control Protocol: [RFC 761][2]. Section 2.10 of that RFC is as follows:

2.10. Robustness Principle TCP implementations should follow a general principle of robustness: be conservative in what you do, be liberal in what you accept from others.

This form of words appears to be the most widely quoted.

That said, Nick Gall's article of 2005/05/25, ['My history of the (Internet) Robustness Principle'][3] cites another Postel RFC -- RFC 760 DOD Standard Internet Protocol -- which uses a wordier and more computing-specific phrasing:

3.2. Discussion The implementation of a protocol must be robust. Each implementation must expect to interoperate with others created by different individuals. While the goal of this specification is to be explicit about the protocol there is the possibility of differing interpretations. In general, an implementation should be conservative in its sending behavior, and liberal in its receiving behavior. That is, it should be careful to send well-formed datagrams, but should accept any datagram that it can interpret (e.g., not object to technical errors where the meaning is still clear).

Gall also mentions two older Internet Experiment Note (IEN) specs, dating to August and December 1979 respectively, that used the same wording as RFC 760 above.

In an earlier article, ['Loosely Coupled Consistency'][4], 2004/05/17 Gall makes the point that the Robustness Principle is essentially a re-statement of the difference between Signal Processing and Information Processing:

Signal Processing differs from Information Processing in that it expects information to be noisy, imperfect, inconsistent, etc, whereas Information Processing is based on an expectation of perfect "digital" information.

Finally, Theo Honohan, the first to add a comment to Gall's history, makes the (to my mind, pertinent) connection between Postel's words and [Rudolf Carnap's][5] famous 'plea for tolerance':

Let us be cautious in making assertions and critical in examining them, but tolerant in permitting linguistic forms.

-- 'Empiricism, Semantics, and Ontology' Revue International de Philosophie (1950)

(This plea was equally famously [taken strong objection to][6] by W V Quine, BTW.)

>That is, the site should consistently capitalize (or not) names, but >allow people to enter them in a case-insensitive manner.

I believe Carnap's thinking is at least as useful with regards this question as Berners-Lee's or Postel's.

Don't impose unhelpful restrictions on the user (be cautious in making assertions). At the same time, examine user input with all due care (be... critical in examining [such input]) while being as open as is possible when parsing said input (be... tolerant in permitting linguistic forms).

Hope this is at least diverting if not helpful.


Brian Forte.








words, edits, type, layout, code

Syndicate content Get the feed