Considered harmful

From Wikipedia, the free encyclopedia

Jump to: navigation, search

In computer science and related disciplines, considered harmful is a phrase popularly used in the titles of diatribes and other critical essays (there are at least 65 such works[1]). It was popularized by Edsger Dijkstra's letter Go To Statement Considered Harmful,[2] published in the March 1968 Communications of the ACM (CACM), in which he criticized the excessive use of the GOTO statement in programming languages of the day and advocated structured programming instead.[3] The original title of the letter, as submitted to CACM, was A Case Against the Goto Statement, but CACM editor Niklaus Wirth changed the title to the now immortalized Go To Statement Considered Harmful.[4]

Frank Rubin published a criticism of Dijkstra's letter in the March 1987 CACM where it appeared under the title 'GOTO Considered Harmful' Considered Harmful[5]. The May 1987 CACM printed further replies, both for and against, under the title '"GOTO Considered Harmful" Considered Harmful' Considered Harmful?[6]. Dijkstra's own response to this controversy was titled On a somewhat disappointing correspondence.[7]

According to linguist Mark Liberman, considered harmful was a journalistic cliché, used in headlines, well before the Dijkstra article. He cites the headline over a letter published August 12, 1949 in The New York Times: "Rent Control Controversy / Enacting Now of Hasty Legislation Considered Harmful".[8]

Contents

[edit] Variants

Some variants with replacement adjectives (considered silly, etc.) have been noted in hacker jargon.[9] Many variants dealt with computer-related issues, such as: "Weblogging Considered Harmful" [10] "'Reply-To' Munging Considered Harmful" [11] "XMLHttpRequest Considered Harmful" [12] "Letter 'O' Considered Harmful" [13] "Csh Programming Considered Harmful" [14] "Geek Culture Considered Harmful to Perl" [15]

Eric A. Meyer focused upon the letter, itself:

"Considered Harmful" Essays Considered Harmful [16]

Others extended Rubin's criticism, of Wirth's refutation cliche, into a recursive sequence, starting with:

"GOTO Considered Harmful" Considered Harmful' Considered Harmful
"GOTO Considered Harmful" Considered Harmful' Considered Harmful considered harmful
"GOTO Considered Harmful" Considered Harmful' Considered Harmful considered harmful considered harmful
. . .

There is no obvious limiting condition to end this infinite sequence (nor any standard punctuation convention with which to represent it).

This recursive notion was reminiscent of (and may have been inspired by) a series of earlier letters that appeared in "MAD" magazine, beginning with:

"The guy who writes your letters should write the rest of the magazine."

then, in a subsequent issue:

"The guy who writes your 'The guy who writes your letters should write the rest of the magazine.' letters should write the rest of the magazine."

and, later:

The guy who writes your "The guy who writes your 'The guy who writes your letters should write the rest of the magazine.' letters should write the rest of the magazine." letters should write the rest of the magazine.

Similar recursions were extended even further, in later issues of "MAD" magazine, during the late 1950s or early 1960s. These MAD magazine letters were published several years prior to Wirth's re-titling of the Dijkstra letter, and the further variations of it.

[edit] Related essays

[edit] See also

[edit] References

  1. ^ Jeffrey Overbey - Miscellaneous - Considered Harmful
  2. ^ Edsger Dijkstra (March 1968). "Go To Statement Considered Harmful" (PDF). Communications of the ACM 11 (3): 147–148. doi:10.1145/362929.362947. http://www.cs.utexas.edu/users/EWD/ewd02xx/EWD215.PDF. 
  3. ^ David R. Tribble (February 2005). "Go To Statement Considered Harmful: A Retrospective". http://david.tribble.com/text/goto.html. 
  4. ^ Edsger Dijkstra (June 2001). "What led to "Notes on Structured Programming"". http://www.cs.utexas.edu/users/EWD/transcriptions/EWD13xx/EWD1308.html. 
  5. ^ Frank Rubin (March 1987). ""GOTO Considered Harmful" Considered Harmful" (PDF). Communications of the ACM 30 (3): 195–196. doi:10.1145/214748.315722. http://www.ecn.purdue.edu/ParaMount/papers/rubin87goto.pdf. 
  6. ^ Donald Moore, Chuck Musciano, Michael J. Liebhaber, Steven F. Lott and Lee Starr (May 1987). "" 'GOTO Considered Harmful' Considered Harmful" Considered Harmful?" (PDF). Communications of the ACM 30 (5): 351–355. http://www.ecn.purdue.edu/ParaMount/papers/acm_may87.pdf. 
  7. ^ Edsger Dijkstra (May 1987). "On a somewhat disappointing correspondence". http://www.cs.utexas.edu/users/EWD/transcriptions/EWD10xx/EWD1009.html. 
  8. ^ Language Log: Considered harmful
  9. ^ Eric S. Raymond et al.. "The Jargon File". http://www.catb.org/~esr/jargon/html/C/considered-harmful.html. 
  10. ^ "Weblogging Considered Harmful". http://www.considered-harmful.org/. 
  11. ^ "Reply-To" Munging Considered Harmful". http://www.unicom.com/pw/reply-to-harmful.html. 
  12. ^ "XMLHttpRequest Considered Harmful". http://www.xml.com/pub/a/2005/11/09/fixing-ajax-xmlhttprequest-considered-harmful.html. 
  13. ^ "Letter 'O' Considered Harmful". http://www.j3-fortran.org/. 
  14. ^ "Csh Programming Considered Harmful". http://www.faqs.org/faqs/unix-faq/shell/csh-whynot/. 
  15. ^ "Geek Culture Considered Harmful to Perl". http://petdance.com/perl/geek-culture/. 
  16. ^ Eric A. Meyer. ""Considered harmful essays considered harmful"". http://meyerweb.com/eric/comment/chech.html. 
Personal tools
Languages