# Considered harmful

Considered harmful is a part of a phrasal template "something considered harmful". As of 2009, its snowclones have been used in the titles of at least 65 critical essays in computer science and related disciplines. 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".
Considered harmful was popularized among computer scientists by Edsger Dijkstra's letter "Go To Statement Considered Harmful", 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. 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". Regarding this new title, Donald Knuth quipped that "Dr. Goto cheerfully complained that he was always being eliminated."
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. The May 1987 CACM printed further replies, both for and against, under the title '"GOTO Considered Harmful" Considered Harmful' Considered Harmful?. Dijkstra's own response to this controversy was titled On a Somewhat Disappointing Correspondence.

## Snowclones

* William Wulf and Mary Shaw (February 1973). "Global Variable Considered Harmful". ACM SIGPLAN Notices. 8 (2): 28–34. doi:10.1145/953353.953355. S2CID 2388792.
* Bruce A. Martin (November 15–19, 1976). "Letter O Considered Harmful". proposal considered by X3J3 members. Brookhaven National Laboratory, Upton, NY: X3J3: ANSI Fortran Standards Committee. (Full proposal text was included in post-meeting distribution; see summary.)
* Rob Pike and Brian Kernighan (1983). "UNIX Style, or cat -v Considered Harmful". USENIX. Retrieved 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.)
* John McCarthy (December 1989). "Networks Considered Harmful for Electronic Mail". Communications of the ACM. 32 (12): 1389–1390. doi:10.1145/76380.316015.
* C. Ponder; B. Bush (1992). "Polymorphism considered harmful". ACM SIGPLAN Notices. 27 (6): 76–79. doi:10.1145/130981.130991. S2CID 21140034.
* Eliot Lear; Erik Fair; Dave Crocker; Thomas Kessler (July 1994). RFC 1627: Network 10 Considered Harmful (Some Practices Shouldn't be Codified) (Technical report). IETF. doi:10.17487/rfc1627.
* CA Kent; JC Mogul (January 1995). "Fragmentation Considered Harmful". ACM SIGCOMM Computer Communication Review. 25: 75–87. doi:10.1145/205447.205456. S2CID 207997774.
* Tom Christiansen (October 1996). "Csh Programming Considered Harmful". Retrieved January 25, 2020. See C shell.
* Peter Miller (1998). "Recursive Make Considered Harmful". AUUGN. 19 (1): 14–25. Archived from the original on March 30, 2015.
* Jonathan Amsterdam (February 2002). "Java's new Considered Harmful". Software Development Magazine.
* Ian Hickson (September 2002). "Sending XHTML as text/html Considered Harmful".
* Eric A. Meyer (December 2002). ""Considered Harmful" Essays Considered Harmful".
* J Yoon; M Liu; B Noble (April 2003). Random waypoint considered harmful. IEEE INFOCOM 2003. Twenty-second Annual Joint Conference of the IEEE Computer and Communications Societies (IEEE Cat. No.03CH37428). Vol. 2. pp. 1312–1321 vol.2. CiteSeerX 10.1.1.129.5604. doi:10.1109/INFCOM.2003.1208967. ISBN 978-0-7803-7752-3. S2CID 3779394.
* Jun-ichiro itojun Hagino (October 2003). "IPv4-Mapped Addresses on the Wire Considered Harmful". IETF Internet-Draft.
* Donald A. Norman (July 2005). "Human-centered design considered harmful". Interactions. 12 (4): 14–19. doi:10.1145/1070960.1070976. S2CID 1698853. See Human-centered design.
* Knight, James. "Python's Super Considered Harmful". fuhm.net. Archived from the original on November 8, 2023.
** Batchelder, Ned (September 29, 2007). "Python's super (considered harmful)". nedbatchelder.com. Archived from the original on November 8, 2023.
** Hettinger, Raymond (May 26, 2011). "Python's super considered super!". Deep Thoughts. Archived from the original on December 27, 2023.
* A Mishra; V Shrivastava; S Banerjee; W Arbaugh (June 2006). "Partially Overlapped Channels Not Considered Harmful". ACM SIGMETRICS Performance Evaluation Review. 34: 63–74. CiteSeerX 10.1.1.115.9060. doi:10.1145/1140103.1140286.
* Kapser, Cory; Godfrey, Michael W. (October 2006). "Cloning Considered Harmful" Considered Harmful. 2006 13th Working Conference on Reverse Engineering. pp. 19–28. doi:10.1109/WCRE.2006.1.
* Howard Chu (February 2008). "GnuTLS Considered Harmful". LDAP Mailing List.
* Alexander Sotirov; Marc Stevens; Jacob Appelbaum; Arjen Lenstra; David Molnar; Dag Arne Osvik; Benne de Weger (December 2008). "MD5 considered harmful today - Creating a rogue CA certificate".
* Andy Crabtree; Tom Rodden; Peter Tolmie; Graham Button (April 2009). "Ethnography considered harmful". Proceedings of the SIGCHI Conference on Human Factors in Computing Systems. pp. 879–888. doi:10.1145/1518701.1518835. ISBN 9781605582467. S2CID 13646185.{{cite book}}: CS1 maint: multiple names: authors list (link)
* Rich Felker (a.k.a. 'dalias') (July 2013). "NULL considered harmful". Retrieved January 25, 2020. See C (programming language) and musl, which the author maintains.
* Eric S. Raymond (March 7, 2014). "mdoc considered harmful". Groff Mailing List. Archived from the original on September 18, 2019. Retrieved October 4, 2020.
* Paul Ceruzzi (June 2015). "Star Trek Considered Harmful". National Air and Space Museum.
* Joanna Rutkowska (October 2015). "Intel x86 considered harmful" (PDF).
* Alex North-Keys (January 2016). "Commandname Extensions Considered Harmful". talisman.org. See Filename extension.
* Drew DeVault (November 2016). "Electron considered Harmful". See Electron (software framework).
* Alexander Rush (January 2019). "Tensor Considered Harmful". Harvard NLP. See Tensor (machine learning).
* Irit Katriel (November 2024). "Return in Finally Considered Harmful". GitHub. See Exception handling syntax.