My usual response to particularly ill-considered ideas is to warn people that if they do these things, we will have to point at them and laugh while Oompa Loompas sing about how their downfall was the result of their own poor decisions. But after I got a compiler bug report where the test case wouldn’t even compile, and yielded warnings about 35% larger than the program source… Well. Time to step it up.
To the tune of Giggle at the Ghosties (aka The Laughter Song)
(The video link is to a remix, because the Hasbro site official version is really laggy for me.)
<seebs> When I was just a newbie and my code came crashing down…
<techie> Tell me he’s not…
<seebs> The coredumps and the crashes, they would always make me frown
<manager> He is.
<seebs> I’d edit lines at random
<seebs> To fix the bugs I saw
<seebs> But hacker folk said that wasn’t the way
<seebs> To fix my code at all
<msce> Then what is?
<seebs> He said see-eebs, you gotta run with -Wall
<seebs> Learn to read your logs
<seebs> You’ll see your bugs explained
<seebs> Fix those to make them disappear.
<seebs> Ha! Ha! Ha!
<everyone> * gasps
<seebs> So, fix up all your warnings,
<seebs> Patch your code ‘til morning,
<seebs> Track down every mystery,
<seebs> Understand its history,
<seebs> Follow code conventions,
<seebs> Document intentions,
<seebs> And when the compiler gets really picky and warns you about undefined behavior but you know what you think it’s gonna do because you used to do assembly on this hardware then you go back and fix it because the very idea of ignoring a red flag like that just makes you wanna… hahahaha… heh…
<manager> SO going on your performance review.
Date: 2013-01-24 13:32:55 -0600
Than you for this, it will make my errors slightly better for this song to go through my head.