bnewman: (guitar)
[personal profile] bnewman posting in [community profile] bn_songbook
Zoe's original song tells the story of a set of heirloom crystal glasses that become fewer in number but dearer to memory as time passes. In software development, classes (modules of code) can also break if they are not carefully looked after over time — although, especially in a large enterprise, their number is more likely to increase than to decrease. The term "tech debt" refers to the ongoing cost of keeping code up-to-date even when it isn't actively being worked on or even used.

The guitar work here is my best attempt to capture the feel of what Zoe is doing in some alternate tuning, some of the chords are mostly conjecture.

lyrics by Benjamin Newman
ttto: "Elegy (Crystal Glass)" by Zoe Mulford
 
/ Am - G F G / Am C G E - /: D2 - - - / - - E - :/
 
This brittle class was written by the founder of our company
It was one of twelve that were built on Java 2
And it has unit tests, it has an interface
And docs that say precisely what it's supposed to do
A tidy bit of logic that contributes to the app
So why did no one see it was a trap?  Hey—
 
/ Am - G D / D2 - D2e D2eg / D2e - D2eg - / C D2 Am - /
 
Classes may break if they haven't been maintained
Coders make mistakes, and requirements change
If you lock your code up in a vault
You won't know when it'll fail, or who's at fault
 
This brittle class was modded by an intern straight from code camp
One of sixty that were tweaked to compile on Java 8
And it has unit tests, it has an interface
And the docs are still online, but they're out of date
A developer might read them and still find it less than clear
Why this bit of code is even here;  Hey—
 
Classes may break if they haven't been maintained
Teams and tools update, and environments change
Bring your colleagues and your code along
Or future you won't realize why it's wrong
 
/ D - Am - / D - D2 - / C - D2 - / - - Defg... /
 
So here's a toast to maintenance
Code that's well explained and comments that make sense
I understand this line
It used to run just fine
But not in the present tense...
 
This brittle class was marked by me on Wednesday for deletion
Leaving four hundred and two that run on Java 17
And it had unit tests, it had an interface
But to run the whole app now it takes a big machine
And something in this module made the whole thing really slow
After testing it I knew it had to go;  Hey—
 
Classes may break if they haven't been maintained
Your whole stack's at stake, time to make a change
Abandoned code you haven't cleaned up yet
Costs time to mind — that's why we call it debt!
 

Profile

bn_songbook: (Default)
Ben's Songs

March 2025

S M T W T F S
      1
2345678
9101112131415
16171819202122
23242526272829
3031     

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jul. 27th, 2025 11:35 pm
Powered by Dreamwidth Studios