Editing 2730: Code Lifespan

Jump to: navigation, search

Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision Your text
Line 10: Line 10:
  
 
==Explanation==
 
==Explanation==
 +
{{incomplete|Created by a BOT PROGRAMMED 50 YEARS AGO. Do NOT delete this tag too soon.}}
  
This comic contrasts two scenarios involving [[Ponytail]] writing a computer program: in the first panel, she has taken great care to future-proof her code, while in the second, she decides not to under the assumption it will soon be deprecated and/or replaced. The captions below each panel note that, ironically, code that ''was'' written with future-proofing in mind will often quickly cease to be used, defeating the purpose of future-proofing, while the code that was ''not'' will often be used much longer than the original programmer(s) intended. This is a {{w|Catch-22 (logic)|''Catch-22''}} situation that many developers have experienced; the first one even has a name, {{w|YAGNI}}.
+
This comic contrasts two scenarios involving [[Ponytail]] writing a computer program: in the first panel, she has taken great care to future-proof her code, while in the second, she decides not to under the assumption it will soon be deprecated and/or replaced. The captions below each panels note that, ironically, code written with future-proofing in mind will often quickly cease to be used — defeating the purpose of future-proofing — while the code that was not will often be used much longer than the original programmer(s) intended.
  
The second panel could be an allusion to the {{w|Year 2000 problem}}, although it is important to note that problem was not simply due to developers not thinking ahead but also because the developers were working with extremely limited computer resources at the time, promoting the use of 2-digit years.
+
The second panel is an allusion to the {{w|Year 2000 problem}}, although it is important to note that the problem was not simply due to developers not thinking ahead but also because the developers were working with extremely limited computer resources at the time, promoting the use of 2-digit years.
  
 
The title text is a modular sentence with two parentheticals, each containing two alternative phrases. This allows for four permutations of the sentence, each of which may be said by programmers. The following two permutations may be the hoped-for ideals of software developers:
 
The title text is a modular sentence with two parentheticals, each containing two alternative phrases. This allows for four permutations of the sentence, each of which may be said by programmers. The following two permutations may be the hoped-for ideals of software developers:
Line 20: Line 21:
 
* "Surely no one will spend a huge amount of effort painstakingly preserving and updating this garbage I wrote in 20 minutes."
 
* "Surely no one will spend a huge amount of effort painstakingly preserving and updating this garbage I wrote in 20 minutes."
  
However, reality often falls short of such hopes, in that insufficient numbers of people recognize code intended for re-use, and far more people than intended will attempt to maintain and adapt sloppy work. The former can occur because of uncertain or unclear assumptions which aren't clear when the time comes to re-use code capable of it, and the latter sometimes happens because the corner-cutting peculiarities of hasty work are often seen as far deeper necessities than they actually are. The remaining two permutations express these far less hopeful outlooks:
+
However, reality often falls short of such hopes, in that insufficient numbers of people recognize code intended for re-use, and far more people than intended will attempt to maintain and adapt sloppy work. The latter sometimes happens because the corner-cutting peculiarities of hasty work are often seen as far deeper necessities than they actually are. The remaining two permutations (the ones that would be read first, being first to first or last to last) of the title text sentence express this far less hopeful outlook:
  
 
* "Surely no one will recognize how flexible and useful this architecture is."
 
* "Surely no one will recognize how flexible and useful this architecture is."
Line 26: Line 27:
  
 
==Transcript==
 
==Transcript==
 +
{{incomplete transcript|Do NOT delete this tag too soon.}}
  
:[Two almost identical panels side by side depict a conversation between Ponytail and Cueball.]
+
:[Two situations are depicted between Ponytail and Cueball.]
  
 
:[Ponytail standing next to Cueball, with her palm raised.]
 
:[Ponytail standing next to Cueball, with her palm raised.]

Please note that all contributions to explain xkcd may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see explain xkcd:Copyrights for details). Do not submit copyrighted work without permission!

To protect the wiki against automated edit spam, we kindly ask you to solve the following CAPTCHA:

Cancel | Editing help (opens in new window)