June 24, 2017 3:50 pm
The other day I was reading some developer documentation about nodes while I had Jonathan Coulton’s ‘Sunshine’ from the album ‘Solid State’ in my head. ‘The road we’re on’ became ‘the node we’re on’ and the next thing I know I’m writing a parody about the runtime, and errors that could have been detected by the compiler in other languages or with stricter compiler settings but instead aren’t detected until runtime. I didn’t end up using the ‘node’ line. The first verse barely needed changing, so for fun I tried to keep as many words from the original as I could in the rest of the parody as well. Whether that’s a good thing depends on your taste and how well you know the original. Feel free to sing it if that’s a thing you can do!
We were blind to every sign
That we should have seen
In a clearly broken line
Machine to machine
Our mistakes were the future
But no one could tell
Lots of errors to detect
The tests didn’t show
The things compilers could have checked
We just let it go
Walked away as assumptions
Crumbled and fell
We bust our arse
To find the errors the machine could parse
Catch it just-in-time
Here in the runtime
Cast the pointer to a type it’s not (runtime)
Walk the edge case of the code we’ve got (runtime)
Every bit was filed away
There’s memory to fill
There’s no message that could say
Receiver is nil
We don’t heed any warnings
Try it and bail
Cast from Any type to this
The object’s a tease
Reflect to find out what it is
A sudden unease
If the data’s corrupt
Then when did it fail?
We soldier on (just a flesh wound)
Heap space and registers are almost gone (memory use ballooned)
Watch the stack unwind (maybe we’re doomed)
Here in the runtime
Cast the pointer to a type it’s not (runtime)
Walk the edge case of the code we’ve got (runtime)
The caller of the method must not do this
Everything’s your fault, you have been remiss
Code is fine, the world has something amiss
All the tests have slipped away
Just garbage I/O
I won’t last another day
And neither will O
EOF of a stateless mutable thing
The data’s blitzed (blame the new hire)
There’s nothing left that can remember it (cut the red wire)
But this is fine (halt and catch fire)
Here in the runtime
Cast the pointer to a type it’s not (runtime)
Walk the edge case of the code we’ve got (runtime)
Cast the pointer to a type it’s not (runtime)
Walk the edge case of the code we’ve got (runtime)
∎
I’m not so sure about ‘EOF of a stateless mutable thing’ and whether it would be better stateful or immutable. It doesn’t exactly make sense (does anything, when it’s that far gone?) but it sounds cool, and a lot like the original. I’ll release it like this and patch it in production if necessary. 😉
Posted by Angela Brett
Categories: The Afterlife
Tags: code quality, JoCo, Jonathan Coulton, music, parody, programming, Solid State, song, Sunshine
Mobile Site | Full Site
Get a free blog at WordPress.com Theme: WordPress Mobile Edition by Alex King.
Next year’s on-boat karaoke? (Assuming they don’t lose the hard drive again)
LikeLiked by 1 person
By joeym on June 29, 2017 at 9:01 pm
If there are even karaoke files for Solid State songs (and if they don’t have the backing vocals with the original lyrics.) I know that for Artificial Heart, he remembered just before the cruise that there weren’t any karaoke files, and asked fans for help, who put them together quickly just before the cruise or even while on board.
LikeLike
By Angela Brett on June 29, 2017 at 9:05 pm
I have decided not to let the lack of backing vocals stop me: https://youtu.be/ZTwIiNmtKKc
LikeLike
By joeym on July 1, 2017 at 5:06 am
Eee! That was a fun time.
LikeLike
By Angela Brett on July 1, 2017 at 2:26 pm
[…] Wait, I’m following a dog-care manual by mistake. I’ll have to do more research on how to treat humans. Meanwhile, listen to this. Joey is unfortunately only one human, so he did not sing the backing vocals in Runtime: […]
LikeLike
By In which Joey sings the last two parodies I wrote | Creative Output on July 14, 2017 at 5:34 pm