On Rusted Code

Published December 11, 2006
Advertisement
A certain somebody once said that code doesn't rust. In the six years after that remark, many people have rushed to defend this perspective, and many others have torn it to shreds.

Today, I'd like to add my own noise to the furor, not with any real hope of improving the situation, but mostly just as a way to vent.


Joel is right, in a very limited sense: code, left to its own devices, running in a vacuum with no changes to requirements or the surrounding platform, does not rust. However, the vast majority of code will refuse to obey such harsh restrictions.

OS upgrades and patches are released which, despite massive vendor effort, break certain apps. Sometimes buggy behavior at the OS/platform layer is deeply intertwingled with the app code, and fixing the bug in the platform actually introduces new bugs in the app. Sometimes protocols are revised, standardised, or simply created. More often than not, the customer comes back with a new set of demands and the spec of the entire application may need to be changed.

Once the variable of change is introduced, code becomes hideously fragile. The road to IT-nirvana is littered with the burnt-out husks of shattered maintenance programmers, whose sun-bleached bones rattle their skeletal fists, and say, "Damnit, Joel, code does too rust, you moron!"


I'm not quite to the point of being a permanent calcium deposit, but at times I feel close to death. I can't be too specific with details for the moment, although I hope to share some nice juicy horror stories in the coming years, as the situation becomes less delicate.


So, suffice it to say, when you can successfully remove over 1300 lines of unused, dead code from a header file, your code is officially rusted.
0 likes 2 comments

Comments

Will F
Quote:Original post by ApochPiQ
So, suffice it to say, when you can successfully remove over 1300 lines of unused, dead code from a header file, your code is officially rusted.


...

My advice would be to
1) Start polishing up your resume.
2) Write a letter of resignation and give it to your boss.
3) Send your story to the Daily WTF.
December 11, 2006 10:12 AM
ApochPiQ
The fact that I'm doing this cleanup right now is directly related to the fact that I won't be rushing to leave this job any time soon. But that's rather complicated.
December 11, 2006 11:14 AM
You must log in to join the conversation.
Don't have a GameDev.net account? Sign up!
Profile
Author
Advertisement
Advertisement