Main Page

Explain xkcd: It's 'cause you're dumb.
Jump to: navigation, search

Welcome to the explain xkcd wiki!
We have an explanation for all 2137 xkcd comics, and only 20 (1%) are incomplete. Help us finish them!

Latest comic

Go to this comic explanation

Wanna See the Code?
And because if you just leave it there, it's going to start contaminating things downstream even if no one touches it directly.
Title text: And because if you just leave it there, it's going to start contaminating things downstream even if no one touches it directly.


Ambox notice.png This explanation may be incomplete or incorrect: Created by a DEAD BODY. Brief explanation. Do NOT delete this tag too soon.

This comic is a continuation of the Code Quality series. Cueball declares that he has written a script to automate some (presumably time-consuming or tedious) task, which pleases Ponytail at first... until she remembers how messy Cueball's code tends to be, and gets worried.

Cueball offers to show her the code, but Ponytail (who often makes snarky quips about Cueball's code quality) remarks that it sounds like he's creepily inviting her to see a dead body. Magnanimously, Cueball accepts the comparison, noting that his code does have at least one similarity to a deceased corpse: although unpleasant, if Ponytail allows it to go unchecked, it causes problems which will get increasingly worse over time.

Ponytail then makes a near threatening comment where she says that he is lucky that people understand both that his code causes more problems than it solves and that dead bodies create more problems than they solve. Most likely this means that they understand that killing him would cause more problems than it solves (the problem solved would no doubt be his code).

This may be a reference to the concept of technical debt in software development: the idea that an initially poor implementation accrues a sort of "compound interest" over time, becoming increasingly difficult to repair the longer it is left unfixed. This happens because any future development might have to take unorthodox or unrecommended measures to work around the problems that are already there, making the system increasingly complex and fragile the more that is added to it.

In the "dead body" analogy, a recently-deceased corpse is easier to deal with than one that has been left for a few weeks, which will be decayed, unpleasantly smelly, and will likely have attracted disease-spreading vermin.

In the title text, "downstream" has a double meaning, as it is a term that applies to a situation where a dead body would decompose in or near some river, and as well to a software engineering concept: In the river situation, the dead body will contaminate the water or groundwater that it feeds from and have consequences for organisms that come in contact with that water. In the software engineering analogue, "downstream" refers to software derived from, or depending on, "upstream" software like the cadaver that Cueball devised. The causality with flowing water and software is reasonably comparable: both can be seen as a stream of atoms that are (almost) endlessly divisible and recombinable.


[Cueball is walking, talking to a voice offscreen]
Cueball: I wrote a script to automate that thing.
Voice offscreen: Oh cool!
Voice offscreen: ...Wait, you wrote it?
Voice offscreen: Oh no.
[Cueball and Ponytail are standing next to each other]
Cueball: Wanna see the code?
Ponytail: I would, if you hadn't said that in the tone of voice of "Wanna see a dead body?"
[Cueball and Ponytail are standing next to each other]
Cueball: My code is sort of similar to a dead body, in that you can either come look at it now, or wait a few weeks until it becomes a problem.
Ponytail: And because you're lucky that the people around you understand that they create more problems than they solve.

Is this out of date? Clicking here will fix that.

New here?

Last 7 days (Top 10)

Lots of people contribute to make this wiki a success. Many of the recent contributors, listed above, have just joined. You can do it too! Create your account here.

You can read a brief introduction about this wiki at explain xkcd. Feel free to sign up for an account and contribute to the wiki! We need explanations for comics, characters, themes and everything in between. If it is referenced in an xkcd web comic, it should be here.

  • There are incomplete explanations listed here. Feel free to help out by expanding them!
  • We sell advertising space to pay for our server costs. To learn more, go here.


Don't be a jerk.

There are a lot of comics that don't have set-in-stone explanations; feel free to put multiple interpretations in the wiki page for each comic.

If you want to talk about a specific comic, use its discussion page.

Please only submit material directly related to (and helping everyone better understand) xkcd... and of course only submit material that can legally be posted (and freely edited). Off-topic or other inappropriate content is subject to removal or modification at admin discretion, and users who repeatedly post such content will be blocked.

If you need assistance from an admin, post a message to the Admin requests board.