Considered harmful explained
Considered harmful is a part of a phrasal template "X considered harmful"., its snowclones have been used in the titles of at least 65 critical essays in computer science and related disciplines.[1] Its use in this context originated with a 1968 letter by Edsger Dijkstra published as "Go To Statement Considered Harmful".
History
Considered harmful was already a journalistic cliché used in headlines, well before the Dijkstra article, as in, for example, the headline over a letter published in 1949 in The New York Times: "Rent Control Controversy / Enacting Now of Hasty Legislation Considered Harmful".[2]
Considered harmful was popularized among computer scientists by Edsger Dijkstra's letter "Go To Statement Considered Harmful",[3] 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.[4] 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 "Goto Statement Considered Harmful".[5] Regarding this new title, Donald Knuth quipped that "Dr. Goto cheerfully complained that he was always being eliminated."[6]
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.[7] The May 1987 CACM printed further replies, both for and against, under the title GOTO Considered Harmful" Considered Harmful' Considered Harmful?.[8] Dijkstra's own response to this controversy was titled On a Somewhat Disappointing Correspondence.[9]
Snowclones
- . Global Variable Considered Harmful . ACM SIGPLAN Notices . 8 . 2 . February 1973 . 28–34 . 10.1145/953353.953355. 2388792 . free .
- Book: Letter O Considered Harmful . X3J3: ANSI Fortran Standards Committee . Bruce A. Martin . November 15–19, 1976 . Brookhaven National Laboratory, Upton, NY . proposal considered by X3J3 members. (Full proposal text was included in post-meeting distribution; see summary.)
- UNIX Style, or cat -v Considered Harmful . . 1983 . USENIX . January 25, 2020.
- This article is the namesake of a Cat-v.org Random Contrarian Insurgent Organization, which maintains a directory of "considered harmful" articles and hosts some Plan 9-related software. (Rob Pike was a main figure in the creation of Plan 9 and wrote extensively on bad designs found in UNIX.)[10]
- John McCarthy . Networks Considered Harmful for Electronic Mail . Communications of the ACM . 32 . 12 . 1389–1390 . December 1989 . 10.1145/76380.316015. free .
- C. Ponder . B. Bush . Polymorphism considered harmful . ACM SIGPLAN Notices . 27 . 6 . 1992 . 76–79 . 10.1145/130981.130991. 21140034 . free .
- RFC 1627: Network 10 Considered Harmful (Some Practices Shouldn't be Codified) . Eliot Lear . Erik Fair . Dave Crocker . Thomas Kessler . July 1994 . IETF . 10.17487/rfc1627 . free .
- Fragmentation Considered Harmful . CA Kent . JC Mogul . January 1995 . ACM SIGCOMM Computer Communication Review . 10.1145/205447.205456 . 25 . 75–87. 207997774 .
- Web site: Csh Programming Considered Harmful . Tom Christiansen . October 1996 . January 25, 2020. See C shell.
- Recursive Make Considered Harmful . Peter Miller . 1998 . AUUGN . 19 . 1 . 14–25 . dead . https://web.archive.org/web/20150330111905/http://miller.emu.id.au/pmiller/books/rmch/ . 2015-03-30 .
- Java's new Considered Harmful . Jonathan Amsterdam . February 2002 . Software Development Magazine.
- Web site: Sending XHTML as text/html Considered Harmful . Ian Hickson . September 2002.
- Web site: "Considered Harmful" Essays Considered Harmful . Eric A. Meyer . December 2002.
- 10.1109/INFCOM.2003.1208967 . J Yoon . M Liu . B Noble . IEEE INFOCOM 2003. Twenty-second Annual Joint Conference of the IEEE Computer and Communications Societies (IEEE Cat. No.03CH37428) . Random waypoint considered harmful . April 2003 . 1312–1321 vol.2 . 2. 978-0-7803-7752-3 . 10.1.1.129.5604 . 3779394 .
- IPv4-Mapped Addresses on the Wire Considered Harmful. IETF Internet-Draft . Jun-ichiro itojun Hagino . October 2003.
- Donald A. Norman . Don Norman . Human-centered design considered harmful . . July 2005 . 12 . 4 . 14–19 . 10.1145/1070960.1070976. 1698853 . See Human-centered design.
- Web site: Knight . James . Python's Super Considered Harmful . fuhm.net . https://web.archive.org/web/20231108034423/https://fuhm.net/super-harmful/ . 8 Nov 2023 . live.
- Web site: Batchelder . Ned . Python's super (considered harmful) . nedbatchelder.com . https://web.archive.org/web/20231108021013/nedbatchelder.com/blog/200709/pythons_super_considered_harmful.html . 8 Nov 2023 . en . 29 September 2007 . live.
- Web site: Hettinger . Raymond . Python's super considered super! . Deep Thoughts . https://web.archive.org/web/20231227145114/rhettinger.wordpress.com/2011/05/26/super-considered-super/ . 27 Dec 2023 . en . 26 May 2011 . live.
- Partially Overlapped Channels Not Considered Harmful . A Mishra . V Shrivastava . S Banerjee . W Arbaugh . June 2006 . ACM SIGMETRICS Performance Evaluation Review. 10.1145/1140103.1140286 . 34 . 63–74. 10.1.1.115.9060.
- Kapser . Cory . Godfrey . Michael W. . "Cloning Considered Harmful" Considered Harmful . 2006 13th Working Conference on Reverse Engineering . October 2006 . 19–28 . 10.1109/WCRE.2006.1.
- Web site: GnuTLS Considered Harmful . Howard Chu . February 2008. LDAP Mailing List.
- Web site: MD5 considered harmful today - Creating a rogue CA certificate. Alexander Sotirov . Marc Stevens . Jacob Appelbaum . Arjen Lenstra . David Molnar . Dag Arne Osvik . Benne de Weger . December 2008.
- Book: https://dl.acm.org/doi/10.1145/1518701.1518835 . Ethnography considered harmful . Andy Crabtree; Tom Rodden; Peter Tolmie; Graham Button . Proceedings of the SIGCHI Conference on Human Factors in Computing Systems . April 2009. 879–888 . 10.1145/1518701.1518835 . 9781605582467 . 13646185 .
- Web site: NULL considered harmful . Rich Felker (a.k.a. 'dalias') . July 2013 . January 25, 2020. See C (programming language) and musl, which the author maintains.
- Web site: mdoc considered harmful . . March 7, 2014 . October 4, 2020 . https://web.archive.org/web/20190918180405/https://lists.gnu.org/archive/html/groff/2014-03/msg00086.html . 2019-09-18 . live. Groff Mailing List.
- Web site: Star Trek Considered Harmful . Paul Ceruzzi . June 2015. National Air and Space Museum.
- Web site: Intel x86 considered harmful . . October 2015.
- Web site: Commandname Extensions Considered Harmful . Alex North-Keys . January 2016. talisman.org. See Filename extension.
- Web site: Electron considered Harmful . Drew DeVault . November 2016. See Electron (software framework).
- Web site: Tensor Considered Harmful . Alexander Rush . January 2019. Harvard NLP. See Tensor (machine learning).
- Web site: Return in Finally Considered Harmful . Irit Katriel . November 2024. See Exception handling syntax.
Notes and References
- Web site: Miscellaneous - Considered Harmful. August 17, 2009. https://web.archive.org/web/20090503144621/http://jeff.over.bz/?04_Miscellaneous%2F03_Considered_Harmful. 2009-05-03. dead.
- Web site: Language Log: Considered harmful . Mark Liberman. April 8, 2008 . August 17, 2009.
- . March 1968 . Go To Statement Considered Harmful . Communications of the ACM . 11 . 3 . 147–148 . 10.1145/362929.362947. 17469809 . The unbridled use of the go to statement has as an immediate consequence that it becomes terribly hard to find a meaningful set of coordinates in which to describe the process progress. ... The go to statement as it stands is just too primitive, it is too much an invitation to make a mess of one's program..
- Web site: Goto Statement Considered Harmful: A Retrospective . David R. Tribble . February 2005.
- (June, 2001)
- Yasumasa. Kanada. Events and Sightings: An obituary of Eiichi Goto. 92. IEEE Annals of the History of Computing. 27. 3. 2005. 10.1109/MAHC.2005.37. 675701.
- Frank Rubin . March 1987 . "GOTO Considered Harmful" Considered Harmful . Communications of the ACM . 30 . 3 . 195–196 . 10.1145/214748.315722 . 6853038 . dead . https://web.archive.org/web/20090320002214/http://www.ecn.purdue.edu/ParaMount/papers/rubin87goto.pdf . March 20, 2009 .
- Donald Moore . Chuck Musciano . Michael J. Liebhaber . Steven F. Lott . Lee Starr . May 1987 . " 'GOTO Considered Harmful' Considered Harmful" Considered Harmful? . PDF. Communications of the ACM . 30 . 5 . 351–355 . 10.1145/22899.315729 . 42951740 .
- (May, 1987)
- Web site: Cat-v.org Random Contrarian Insurgent Organization . cat-v.org.