Jump to content

Considered harmful: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
No edit summary
 
(31 intermediate revisions by 19 users not shown)
Line 1: Line 1:
{{short description|Phrase used in titles of diatribes and other critical essays}}
{{Short description|Phrase used in titles of critical texts}}
{{Use mdy dates|date=December 2019}}
{{Use mdy dates|date=December 2019}}
{{CS1 config|mode=cs1}}


[[File:Achievements considered harmful.jpg|thumb|"Achievements considered harmful?" presentation at the 2010 [[Game Developers Conference]]]]
[[File:Achievements considered harmful.jpg|thumb|"Achievements considered harmful?" presentation at the 2010 [[Game Developers Conference]]]]
Line 26: Line 27:
| pages = 147–148
| pages = 147–148
| doi = 10.1145/362929.362947
| doi = 10.1145/362929.362947
| s2cid=17469809
| url = https://homepages.cwi.nl/~storm/teaching/reader/Dijkstra68.pdf
| url = https://homepages.cwi.nl/~storm/teaching/reader/Dijkstra68.pdf
| quote=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.}}</ref><ref name="ewd215">{{Cite EWD|215}}</ref>
| quote=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.}}</ref><ref name="ewd215">{{Cite EWD|215}}</ref>
published in the March 1968 ''Communications of the [[Association for Computing Machinery|ACM]]'' (CACM), in which he criticized the excessive use of the [[GOTO]] [[statement (programming)|statement]] in [[programming language]]s of the day and advocated [[structured programming]] instead.<ref>{{cite web | url = http://david.tribble.com/text/goto.html | title = Go To Statement Considered Harmful: A Retrospective | author = David R. Tribble |date=February 2005}}</ref> 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 "Go To Statement Considered Harmful".<ref>{{cite EWD|1308|What led to "Notes on Structured Programming"}} (June, 2001)</ref> Regarding this new title, [[Donald Knuth]] quipped that "[[Eiichi Goto|Dr. Goto]] cheerfully complained that he was always being eliminated."<ref>{{Citation|first=Yasumasa|last=Kanada|title=Events and Sightings: An obituary of Eiichi Goto|page=92|journal=IEEE Annals of the History of Computing|volume=27|issue=3|year=2005|doi=10.1109/MAHC.2005.37}}</ref>
published in the March 1968 ''Communications of the [[Association for Computing Machinery|ACM]]'' (CACM), in which he criticized the excessive use of the [[GOTO]] [[statement (programming)|statement]] in [[programming language]]s of the day and advocated [[structured programming]] instead.<ref>{{cite web | url = http://david.tribble.com/text/goto.html | title = Goto Statement Considered Harmful: A Retrospective | author = David R. Tribble |date=February 2005}}</ref> 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".<ref>{{cite EWD|1308|What led to "Notes on Structured Programming"}} (June, 2001)</ref> Regarding this new title, [[Donald Knuth]] quipped that "[[Eiichi Goto|Dr. Goto]] cheerfully complained that he was always being eliminated."<ref>{{cite journal|first=Yasumasa|last=Kanada|title=Events and Sightings: An obituary of Eiichi Goto|page=92|journal=IEEE Annals of the History of Computing|volume=27|issue=3|year=2005|doi=10.1109/MAHC.2005.37|s2cid=675701}}</ref>


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".<ref name="rubin87goto">{{cite journal|author=Frank Rubin |date=March 1987 |url=http://www.ecn.purdue.edu/ParaMount/papers/rubin87goto.pdf |title="GOTO Considered Harmful" Considered Harmful |journal=Communications of the ACM |volume=30 |issue=3 |pages=195–196 |doi=10.1145/214748.315722 |url-status=dead |archiveurl=https://web.archive.org/web/20090320002214/http://www.ecn.purdue.edu/ParaMount/papers/rubin87goto.pdf |archivedate=March 20, 2009 }}</ref> The May 1987 CACM printed further replies, both for and against, under the title "'"GOTO Considered Harmful" Considered Harmful' Considered Harmful?".<ref name="acm_may87">{{cite journal |author1=Donald Moore |author2=Chuck Musciano |author3=Michael J. Liebhaber |author4=Steven F. Lott |author5=Lee Starr |date=May 1987 | url = http://cacm.acm.org/magazines/1987/5/10097-acm-forum/abstract |format=PDF| title = " 'GOTO Considered Harmful' Considered Harmful" Considered Harmful? | journal = Communications of the ACM | volume = 30 | issue = 5 | pages = 351–355 | doi = 10.1145/22899.315729 }}</ref> Dijkstra's own response to this controversy was titled ''On a Somewhat Disappointing Correspondence''.<ref name="ewd1009">{{cite EWD|1009|On a Somewhat Disappointing Correspondence}} (May, 1987)</ref>
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''.<ref name="rubin87goto">{{cite journal|author=Frank Rubin |date=March 1987 |url=http://www.ecn.purdue.edu/ParaMount/papers/rubin87goto.pdf |title="GOTO Considered Harmful" Considered Harmful |journal=Communications of the ACM |volume=30 |issue=3 |pages=195–196 |doi=10.1145/214748.315722 |s2cid=6853038 |url-status=dead |archiveurl=https://web.archive.org/web/20090320002214/http://www.ecn.purdue.edu/ParaMount/papers/rubin87goto.pdf |archivedate=March 20, 2009 }}</ref> The May 1987 CACM printed further replies, both for and against, under the title ''{{'"}}GOTO Considered Harmful" Considered Harmful' Considered Harmful?''.<ref name="acm_may87">{{cite journal |author1=Donald Moore |author2=Chuck Musciano |author3=Michael J. Liebhaber |author4=Steven F. Lott |author5=Lee Starr |date=May 1987 | url = http://cacm.acm.org/magazines/1987/5/10097-acm-forum/abstract |format=PDF| title = " 'GOTO Considered Harmful' Considered Harmful" Considered Harmful? | journal = Communications of the ACM | volume = 30 | issue = 5 | pages = 351–355 | doi = 10.1145/22899.315729 |s2cid=42951740 }}</ref> Dijkstra's own response to this controversy was titled ''On a Somewhat Disappointing Correspondence''.<ref name="ewd1009">{{cite EWD|1009|On a Somewhat Disappointing Correspondence}} (May, 1987)</ref>


==Snowclones ==
==Snowclones ==
* {{Cite journal | author = [[William Wulf]] and [[Mary Shaw (computer scientist)|Mary Shaw]] | title = Global Variable Considered Harmful | journal = ACM SIGPLAN Notices | volume = 8 | issue = 2 | date = February 1973 | pages = 28–34 | doi = 10.1145/953353.953355}}
* {{Cite journal | author = [[William Wulf]] and [[Mary Shaw (computer scientist)|Mary Shaw]] | title = Global Variable Considered Harmful | journal = ACM SIGPLAN Notices | volume = 8 | issue = 2 | date = February 1973 | pages = 28–34 | doi = 10.1145/953353.953355| s2cid = 2388792 | doi-access = free }}
* {{Cite book | contribution = Letter O Considered Harmful | publisher = X3J3: ANSI [[Fortran]] Standards Committee |author = Bruce A. Martin | date = November 15–19, 1976 | place = Brookhaven National Laboratory, Upton, NY | title = proposal considered by X3J3 members}} ''(Full proposal text was included in post-meeting distribution; see [[fortran#Humor|summary]].)''
* {{Cite book | contribution = Letter O Considered Harmful | publisher = X3J3: ANSI [[Fortran]] Standards Committee |author = Bruce A. Martin | date = November 15–19, 1976 | place = Brookhaven National Laboratory, Upton, NY | title = proposal considered by X3J3 members}} ''(Full proposal text was included in post-meeting distribution; see [[fortran#Humor|summary]].)''
* {{cite journal | url = http://harmful.cat-v.org/cat-v/ | title = UNIX Style, or cat -v Considered Harmful | author = [[Rob Pike]] and [[Brian Kernighan]] | year = 1983 | journal = USENIX | accessdate=January 25, 2020}}
* {{cite journal | url = http://harmful.cat-v.org/cat-v/ | title = UNIX Style, or cat -v Considered Harmful | author = [[Rob Pike]] and [[Brian Kernighan]] | year = 1983 | journal = USENIX | accessdate=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 from Bell Labs|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.)<ref>{{cite web |title=Cat-v.org Random Contrarian Insurgent Organization |url=http://cat-v.org/ |website=cat-v.org}}</ref>
* {{Cite journal | author = John McCarthy | title = Networks Considered Harmful for Electronic Mail | url = http://www-formal.stanford.edu/jmc/harmful.html | journal = Communications of the ACM | volume = 32 | issue = 12 | pages = 1389–1390 |date=December 1989 | doi=10.1145/76380.316015}}
* {{cite techreport| title = RFC 1627: Network 10 Considered Harmful (Some Practices Shouldn't be Codified) | author=Eliot Lear | author2=Erik Fair | author3=Dave Crocker | author4=Thomas Kessler | date=July 1994 | publisher=IETF | doi=10.17487/rfc1627 | doi-access=free }}
* {{Cite journal | author = John McCarthy | title = Networks Considered Harmful for Electronic Mail | url = http://www-formal.stanford.edu/jmc/harmful.html | journal = Communications of the ACM | volume = 32 | issue = 12 | pages = 1389–1390 |date=December 1989 | doi=10.1145/76380.316015| doi-access = free }}
* {{cite journal | title = Fragmentation Considered Harmful |author1=CA Kent |author2=JC Mogul |date=January 1995 | journal = ACM SIGCOMM Computer Communication Review | doi = 10.1145/205447.205456 | volume = 25 | pages = 75–87}}
* {{Cite journal |author1=C. Ponder |author2=B. Bush | title = Polymorphism considered harmful | journal = ACM SIGPLAN Notices | volume = 27 | issue = 6 | year = 1992 | pages = 76–79 | doi = 10.1145/130981.130991|s2cid=21140034 | doi-access = free }}
* {{cite tech report| title = RFC 1627: Network 10 Considered Harmful (Some Practices Shouldn't be Codified) | author=Eliot Lear | author2=Erik Fair | author3=Dave Crocker | author4=Thomas Kessler | date=July 1994 | publisher=IETF | doi=10.17487/rfc1627 | doi-access=free }}
* {{cite journal | title = Fragmentation Considered Harmful |author1=CA Kent |author2=JC Mogul |date=January 1995 | journal = ACM SIGCOMM Computer Communication Review | doi = 10.1145/205447.205456 | volume = 25 | pages = 75–87|s2cid=207997774 }}
* {{cite web | url = http://harmful.cat-v.org/software/csh | title = Csh Programming Considered Harmful | author = Tom Christiansen | date=October 1996 | accessdate=January 25, 2020}} See [[C shell]].
* {{cite web | url = http://harmful.cat-v.org/software/csh | title = Csh Programming Considered Harmful | author = Tom Christiansen | date=October 1996 | accessdate=January 25, 2020}} See [[C shell]].
* {{cite journal | url = http://miller.emu.id.au/pmiller/books/rmch/ | title = Recursive Make Considered Harmful | author = Peter Miller | year = 1998 | journal = AUUGN | volume = 19 | issue = 1 | pages = 14–25 | url-status = dead | archiveurl = https://web.archive.org/web/20150330111905/http://miller.emu.id.au/pmiller/books/rmch/ | archivedate = 2015-03-30 }}
* {{cite journal | url = http://miller.emu.id.au/pmiller/books/rmch/ | title = Recursive Make Considered Harmful | author = Peter Miller | year = 1998 | journal = AUUGN | volume = 19 | issue = 1 | pages = 14–25 | url-status = dead | archiveurl = https://web.archive.org/web/20150330111905/http://miller.emu.id.au/pmiller/books/rmch/ | archivedate = 2015-03-30 }}
Line 44: Line 48:
* {{cite web | url = http://hixie.ch/advocacy/xhtml | title = Sending XHTML as text/html Considered Harmful | author = Ian Hickson |date=September 2002}}
* {{cite web | url = http://hixie.ch/advocacy/xhtml | title = Sending XHTML as text/html Considered Harmful | author = Ian Hickson |date=September 2002}}
* {{cite web | url = http://www.meyerweb.com/eric/comment/chech.html | title = "Considered Harmful" Essays Considered Harmful | author = Eric A. Meyer |date=December 2002}}
* {{cite web | url = http://www.meyerweb.com/eric/comment/chech.html | title = "Considered Harmful" Essays Considered Harmful | author = Eric A. Meyer |date=December 2002}}
* {{cite conference | doi = 10.1109/INFCOM.2003.1208967 |author1=J Yoon |author2=M Liu |author3=B Noble | conference = [[IEEE INFOCOM]] 2003. Twenty-second Annual Joint Conference of the IEEE Computer and Communications Societies (IEEE Cat. No.03CH37428) | title = Random waypoint considered harmful |date=April 2003 | pages = 1312–1321 vol.2 | volume = 2| isbn = 978-0-7803-7752-3 | citeseerx = 10.1.1.129.5604 | s2cid = 3779394 }}
* {{Cite journal |author1=C. Ponder |author2=B. Bush | title = Polymorphism considered harmful | journal = ACM SIGPLAN Notices | volume = 27 | issue = 6 | year = 1992 | pages = 76–79 | doi = 10.1145/130981.130991}}
* {{cite journal | url = http://tools.ietf.org/html/draft-itojun-v6ops-v4mapped-harmful-02 | title = IPv4-Mapped Addresses on the Wire Considered Harmful|website=IETF Internet-Draft | author = Jun-ichiro itojun Hagino |date=October 2003}}
* {{cite book | doi = 10.1109/INFCOM.2003.1208967 | title = Random Waypoint Considered Harmful |author1=J Yoon |author2=M Liu |author3=B Noble |date=April 2003 | pages = 1312–1321 vol.2 | journal = Infocom | volume = 2| isbn = 978-0-7803-7752-3 | citeseerx = 10.1.1.129.5604 }}
* {{cite journal |author=Donald A. Norman | author-link=Don Norman |title=Human-centered design considered harmful |journal=[[ACM Interactions|Interactions]] |date=July 2005 |volume=12 |issue=4 |pages=14–19 |doi=10.1145/1070960.1070976| s2cid=1698853 }} See [[Human-centered design]].
* {{cite journal | title = Partially Overlapped Channels Not Considered Harmful |author1=A Mishra |author2=V Shrivastava |author3=S Banerjee |author4=W Arbaugh |date=June 2006 | journal = Sigmetrics | doi = 10.1145/1140103.1140286 | volume = 34 | pages = 63|citeseerx = 10.1.1.115.9060}}
* {{cite web |last1=Knight |first1=James |title=Python's Super Considered Harmful |url=https://fuhm.net/super-harmful/ |website=fuhm.net |archive-url=https://web.archive.org/web/20231108034423/https://fuhm.net/super-harmful/ |archive-date=8 Nov 2023 |url-status=live}}<!-- Undated, but archived as early as 22 Feb 2006: https://web.archive.org/web/20060222010524/https://fuhm.net/super-harmful/ -->
** {{cite web |last1=Batchelder |first1=Ned |title=Python's super (considered harmful) |url=https://nedbatchelder.com/blog/200709/pythons_super_considered_harmful.html |website=nedbatchelder.com |archive-url=https://web.archive.org/web/20231108021013/nedbatchelder.com/blog/200709/pythons_super_considered_harmful.html |archive-date=8 Nov 2023 |language=en |date=29 September 2007 |url-status=live}}
** {{cite web |last1=Hettinger |first1=Raymond |title=Python's super() considered super! |url=https://rhettinger.wordpress.com/2011/05/26/super-considered-super/ |website=Deep Thoughts |archive-url=https://web.archive.org/web/20231227145114/rhettinger.wordpress.com/2011/05/26/super-considered-super/ |archive-date=27 Dec 2023 |language=en |date=26 May 2011 |url-status=live}}
* {{cite journal | title = Partially Overlapped Channels Not Considered Harmful |author1=A Mishra |author2=V Shrivastava |author3=S Banerjee |author4=W Arbaugh |date=June 2006 | journal = ACM SIGMETRICS Performance Evaluation Review| doi = 10.1145/1140103.1140286 | volume = 34 | pages = 63–74|citeseerx = 10.1.1.115.9060}}
*{{cite conference |last1=Kapser |first1=Cory |last2=Godfrey |first2=Michael W. |title="Cloning Considered Harmful" Considered Harmful |conference=2006 13th Working Conference on Reverse Engineering |date=October 2006 |pages=19–28 |doi=10.1109/WCRE.2006.1}}
* {{cite web | url = http://www.openldap.org/lists/openldap-devel/200802/msg00072.html | title = GnuTLS Considered Harmful | author = Howard Chu | date=February 2008|website=LDAP Mailing List}}
* {{cite web | url = http://www.win.tue.nl/hashclash/rogue-ca/ | title = MD5 considered harmful today - Creating a rogue CA certificate|author1=Alexander Sotirov |author2=Marc Stevens |author3=Jacob Appelbaum |author4=Arjen Lenstra |author5=David Molnar |author6=Dag Arne Osvik |author7=Benne de Weger |date=December 2008}}
* {{cite web | url = http://www.win.tue.nl/hashclash/rogue-ca/ | title = MD5 considered harmful today - Creating a rogue CA certificate|author1=Alexander Sotirov |author2=Marc Stevens |author3=Jacob Appelbaum |author4=Arjen Lenstra |author5=David Molnar |author6=Dag Arne Osvik |author7=Benne de Weger |date=December 2008}}
* {{cite web | url = https://dl.acm.org/doi/10.1145/1518701.1518835 | title = Ethnography considered harmful | author = Andy Crabtree; Tom Rodden; Peter Tolmie; Graham Button | date=April 2009}}
* {{cite book | chapter-url = https://dl.acm.org/doi/10.1145/1518701.1518835 | chapter = Ethnography considered harmful | author = Andy Crabtree; Tom Rodden; Peter Tolmie; Graham Button | title = Proceedings of the SIGCHI Conference on Human Factors in Computing Systems | date=April 2009| pages = 879–888 | doi = 10.1145/1518701.1518835 | isbn = 9781605582467 | s2cid = 13646185 }}
* {{cite web | url = https://ewontfix.com/11/ | title = NULL considered harmful | author = Rich Felker (a.k.a. 'dalias') | date=July 2013 | accessdate = January 25, 2020}} See [[C (programming language)]] and [[musl]], which the author maintains.
* {{cite web | url = http://tools.ietf.org/html/draft-itojun-v6ops-v4mapped-harmful-02 | title = IPv4-Mapped Addresses on the Wire Considered Harmful | author = Jun-ichiro itojun Hagino |date=October 2003}}
* {{cite web | url = https://lists.gnu.org/archive/html/groff/2014-03/msg00086.html | title = mdoc considered harmful | author = [[Eric S. Raymond]] | date=March 7, 2014 | accessdate=October 4, 2020 | archive-url = https://web.archive.org/web/20190918180405/https://lists.gnu.org/archive/html/groff/2014-03/msg00086.html | archive-date = 2019-09-18 | url-status = live|website=Groff Mailing List}}
*Cory J. Kapser and Michael W. Godfrey (October 2006), "'Cloning Considered Harmful' Considered Harmful". doi:10.1109/WCRE.2006.1
* {{cite web | url = https://ewontfix.com/11/ | title = NULL considered harmful | author = Rich Felker (a.k.a. 'dalias') | date=July 2013 | accessdate = January 25, 2020}} See [[C (programming language)]].
* {{cite web | url = http://blog.nasm.si.edu/space/star-trek-considered-harmful/ | title = Star Trek Considered Harmful | author = Paul Ceruzzi |date=June 2015|website=National Air and Space Museum}}
* {{cite web | url = http://blog.nasm.si.edu/space/star-trek-considered-harmful/ | title = Star Trek Considered Harmful | author = Paul Ceruzzi |date=June 2015}}
* {{cite web | url = https://blog.invisiblethings.org/papers/2015/x86_harmful.pdf | title = Intel x86 considered harmful | author = [[Joanna Rutkowska]] | date=October 2015}}
* {{cite web | url = http://www.openldap.org/lists/openldap-devel/200802/msg00072.html | title = GnuTLS Considered Harmful | author = Howard Chu | date=February 2008}}
* {{cite web | url = https://www.talisman.org/~erlkonig/documents/commandname-extensions-considered-harmful/ | title = Commandname Extensions Considered Harmful | author = Alex North-Keys | date=January 2016|website=talisman.org}} See [[Filename extension]].
* {{cite web | url = https://lists.gnu.org/archive/html/groff/2014-03/msg00086.html | title = mdoc considered harmful | author = [[Eric S. Raymond]] | date=March 7, 2014 | accessdate=October 4, 2020 | archive-url = https://web.archive.org/web/20190918180405/https://lists.gnu.org/archive/html/groff/2014-03/msg00086.html | archive-date = 2020-10-03 | url-status = live}}
* {{cite web | url = https://drewdevault.com/2016/11/24/Electron-considered-harmful.html | title = Electron considered Harmful | author = Drew DeVault | date=November 2016}} See [[Electron (software framework)]].
* {{cite web | url = https://blog.invisiblethings.org/papers/2015/x86_harmful.pdf | title = Intel x86 considered harmful | author = Joanna Rutkowska | date=October 2015}}
* {{cite web | url = http://nlp.seas.harvard.edu/NamedTensor | title = Tensor Considered Harmful | author = Alexander Rush | date=January 2019|website=Harvard NLP}} See [[Tensor (machine learning)]].
* {{cite web | url = https://drewdevault.com/2016/11/24/Electron-considered-harmful.html | title = Electron considered Harmful | author = Drew DeVault | date=November 2016}}
* {{cite web | url = https://github.com/iritkatriel/finally/blob/main/README.md | title = Return in Finally Considered Harmful | author = Irit Katriel | date=November 2024}} See [[Exception handling syntax]].
* {{cite web | url = https://www.talisman.org/~erlkonig/documents/commandname-extensions-considered-harmful/ | title = Commandname Extensions Considered Harmful | author = Alex North-Keys | date=January 2016}}
* {{cite web | url = http://nlp.seas.harvard.edu/NamedTensor | title = Tensor Considered Harmful | author = Alexander Rush | date=January 2019}}
* {{cite web | url = https://motherboard.vice.com/en_us/article/evzjww/here-are-the-citations-for-the-anti-diversity-manifesto-circulating-at-google | title = Google's Ideological Echo Chamber | author = James Damore | date=July 2017}} an internal memo on Google's diversity efforts that went viral within the company and was later posted to several websites, was distributed under the internal link "go/pc-considered-harmful," a reference to the author's perceived issues with political correctness.
* {{cite journal |author=Donald A. Norman | author-link=Don Norman |title=Human-centered design considered harmful |journal=[[ACM Interactions|Interactions]] |date=July 2005 |volume=12 |issue=4 |pages=14 |doi=10.1145/1070960.1070976}}


==References==
==References==
{{Reflist}}
{{Reflist}}

==External links==
*[http://harmful.cat-v.org harmful.cat-v.org] - A site that collects 'considered harmful' essays and rants on various topics. Named after a presentation by [[Rob Pike]] titled "[http://harmful.cat-v.org/cat-v/ <code>cat -v Considered Harmful</code>]".


{{DEFAULTSORT:Considered Harmful}}
{{DEFAULTSORT:Considered Harmful}}
Line 72: Line 75:
[[Category:Snowclones]]
[[Category:Snowclones]]
[[Category:Edsger W. Dijkstra]]
[[Category:Edsger W. Dijkstra]]
[[Category:Computer humor]]
[[Category:Computer humour]]
[[Category:Computer science papers]]

Latest revision as of 21:32, 14 November 2024

"Achievements considered harmful?" presentation at the 2010 Game Developers Conference

Considered harmful is a part of a phrasal template "X 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.[1] Its use in this context originated with a 1968 letter by Edsger Dijkstra published as "Go To Statement Considered Harmful".

History

[edit]

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][4] 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.[5] 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".[6] Regarding this new title, Donald Knuth quipped that "Dr. Goto cheerfully complained that he was always being eliminated."[7]

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.[8] The May 1987 CACM printed further replies, both for and against, under the title '"GOTO Considered Harmful" Considered Harmful' Considered Harmful?.[9] Dijkstra's own response to this controversy was titled On a Somewhat Disappointing Correspondence.[10]

Snowclones

[edit]

References

[edit]
  1. ^ "Miscellaneous - Considered Harmful". Archived from the original on May 3, 2009. Retrieved August 17, 2009.
  2. ^ Mark Liberman (April 8, 2008). "Language Log: Considered harmful". Retrieved August 17, 2009.
  3. ^ Edsger Dijkstra (March 1968). "Go To Statement Considered Harmful" (PDF). Communications of the ACM. 11 (3): 147–148. doi:10.1145/362929.362947. S2CID 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.
  4. ^ Dijkstra, Edsger W. EWD-215 (PDF). E.W. Dijkstra Archive. Center for American History, University of Texas at Austin. (transcription)
  5. ^ David R. Tribble (February 2005). "Goto Statement Considered Harmful: A Retrospective".
  6. ^ Dijkstra, Edsger W. What led to "Notes on Structured Programming" (EWD-1308) (PDF). E.W. Dijkstra Archive. Center for American History, University of Texas at Austin. (transcription) (June, 2001)
  7. ^ Kanada, Yasumasa (2005). "Events and Sightings: An obituary of Eiichi Goto". IEEE Annals of the History of Computing. 27 (3): 92. doi:10.1109/MAHC.2005.37. S2CID 675701.
  8. ^ Frank Rubin (March 1987). ""GOTO Considered Harmful" Considered Harmful" (PDF). Communications of the ACM. 30 (3): 195–196. doi:10.1145/214748.315722. S2CID 6853038. Archived from the original (PDF) on March 20, 2009.
  9. ^ 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. doi:10.1145/22899.315729. S2CID 42951740.
  10. ^ Dijkstra, Edsger W. On a Somewhat Disappointing Correspondence (EWD-1009) (PDF). E.W. Dijkstra Archive. Center for American History, University of Texas at Austin. (transcription) (May, 1987)
  11. ^ "Cat-v.org Random Contrarian Insurgent Organization". cat-v.org.