User Tools

Site Tools


principles:postel_s_law

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
principles:postel_s_law [2021-09-02 20:18] – old revision restored (2021-03-25 15:35) 65.21.179.175principles:postel_s_law [2021-10-18 21:43] (current) – +++ restored +++ christian
Line 7: Line 7:
 ===== Context ===== ===== Context =====
 /* fill in contexts here: */ /* fill in contexts here: */
-  * [[contexts:Object-Oriented Design]] +  * [[contexts:Object-Oriented Design]] 
 +  * [[contexts:API Design]]
  
  
-===== Definition =====+ 
 +===== Principle Statement =====
  
 > "Be conservative in what you do, be liberal in what you accept from others."((Jon Postel: //[[http://tools.ietf.org/html/rfc761|RFC 761: Transmission Control Protocol]]//)) > "Be conservative in what you do, be liberal in what you accept from others."((Jon Postel: //[[http://tools.ietf.org/html/rfc761|RFC 761: Transmission Control Protocol]]//))
Line 20: Line 22:
 ===== Rationale ===== ===== Rationale =====
  
 +
 +
 +===== Strategies =====
 +
 +
 +===== Caveats =====
 +
 +See section [[#contrary principles]].
  
  
Line 27: Line 37:
 ===== Evidence ===== ===== Evidence =====
 /* Comment out what is not applicable and explain the rest: */ /* Comment out what is not applicable and explain the rest: */
-/*[[wiki:Proposed]] +/
-[[wiki:Examined]] +  * [[wiki:Proposed]] 
-[[wiki:Accepted]] +  [[wiki:Examined]] 
-[[wiki:Questioned]]*/+  [[wiki:Accepted]] 
 +  [[wiki:Questioned]] 
 +*/
  
  
Line 40: Line 52:
  
 ==== Contrary Principles ==== ==== Contrary Principles ====
 +
 +  * [[principles:Fail fast]] (FF): While FF is (amongst others) about checking for erroneous parameters, Postel's Law is about not being too strict with parameters. It says that the design should allow for uncommon or strangely arranged (yet meaningful) input data. This does not contradict FF as Postel's Law does not demand to process meaningless or erroneous data.
  
 ==== Complementary Principles ==== ==== Complementary Principles ====
  
-  * [[principles:Rule Of Repair]] 
   * [[principles:Principle Of Least Surprise]]   * [[principles:Principle Of Least Surprise]]
  
Line 49: Line 62:
  
  
-===== Example =====+===== Examples =====
  
  
Line 65: Line 78:
   * Joel Spolsky: //[[http://www.joelonsoftware.com/articles/fog0000000306.html|A Hard Drill Makes an Easy Battle]]//   * Joel Spolsky: //[[http://www.joelonsoftware.com/articles/fog0000000306.html|A Hard Drill Makes an Easy Battle]]//
   * Eric S. Raymond: //[[http://www.catb.org/~esr/writings/taoup/html/ch01s06.html#id2878538|The Art of Unix Programming: Rule of Repair]]//   * Eric S. Raymond: //[[http://www.catb.org/~esr/writings/taoup/html/ch01s06.html#id2878538|The Art of Unix Programming: Rule of Repair]]//
 +
 +===== Discussion =====
 +
 +Discuss this wiki article and the principle on the corresponding [[talk:principles:Postel's Law|talk page]].
 +
principles/postel_s_law.1630606680.txt.gz · Last modified: 2021-09-02 20:18 by 65.21.179.175