303: Compiling

Explain xkcd: It's 'cause you're dumb.
Jump to: navigation, search
'Are you stealing those LCDs?' 'Yeah, but I'm doing it while my code compiles.'
Title text: 'Are you stealing those LCDs?' 'Yeah, but I'm doing it while my code compiles.'

[edit] Explanation

Programming is essentially writing instructions for a computer to follow, in a specific programming language, which is designed to be human readable to make the programmers' job easier. However, for the computers to follow these instructions, they need to be translated into machine code — a "language" that computers "speak". Such conversion from human-readable source code into computer-executable files is performed by (compilers), and takes certain time — depending on the size of the project and the power of the computer doing the compilation, it may measure in hours. As of 2015 the Linux Kernel contains over 19 million lines of code, a massive job for any compiler.

In general, programming languages are implemented in two ways: interpreters and compilers. Interpreters convert the code at the time when it is currently running (PHP for one example), but compilers convert the source code all at once into executable files. After compiling, the resulting code will run much faster than interpreted code, since it has already been translated into the proper binary language. However, compiling code can take a long time, especially if the compiler is set up to correct syntax errors. When Cueball is caught wasting time at work, he argues that such pastime is not any worse than any other at this moment, as no modifications can be made to the code that he should otherwise be working on until it finishes compiling, anyway.

The title text takes this a step further. Cueball claims that all activities are equally benign while the code is compiling — and that includes committing illegal acts, such as stealing LCD monitors.

[edit] Transcript

The #1 Programmer Excuse for Legitimately Slacking Off: "My code's compiling."
[Two programmers are sword-fighting on office chairs in a hallway. An unseen manager calls them back to work through an open office door.]
Manager: Hey! Get back to work!
Cueball: Compiling!
Manager: Oh. Carry on.

comment.png add a comment! ⋅ Icons-mini-action refresh blue.gif refresh comments!


I was sooo amused when I heard about the most common error report when Delphi was released to the linux platform: "the compile button doesn't do anything"...

The "fix" was to introduce a checkbox that defaulted to not close the compile window once complete :-)

For being so open-sourced they are quite close-minded ;-)

Usually interpreters don't create any code but use the source language as instructions to the interpreter. The situation is complicated by the existence of compilers which compile to an intermediate code (Java byte code for example), then compile the byte code to machine code.

Jstout (talk) 21:54, 13 December 2013 (UTC) 07:04, 10 November 2013 (UTC)Nicklas

"Liquid Crystal Display Displays" This bothers me. 19:59, 13 March 2014 (UTC)

https://en.wikipedia.org/wiki/RAS_syndrome -- Wesha (talk) 19:36, 11 May 2015 (UTC)
Made it into a wiki link and removed Displays. Kynde (talk) 20:10, 28 March 2014 (UTC)
Personal tools


It seems you are using noscript, which is stopping our project wonderful ads from working. Explain xkcd uses ads to pay for bandwidth, and we manually approve all our advertisers, and our ads are restricted to unobtrusive images and slow animated GIFs. If you found this site helpful, please consider whitelisting us.

Want to advertise with us, or donate to us with Paypal?