Another topic that came up in “Ego is the Enemy” is the Latin phrase “Memento Mori”. Translated literally it means “Remember you will die.” I kind of view it as the adult version of the millenial’s YOLO – “You only live once”. YOLO is all about hedonistic pleasure – do whatever feels good because in the end it doesn’t matter, we’re all gonna die anyway. “Memento Mori” is more about putting things in perspective. Life is short and precious. It can end at any moment. Spend what little time you have on the things that are important to you and focus on what kind of legacy you want to leave behind.
I apply this lesson to coding in the form of empathy. I try to remind myself, that I’m not always going to be here and that eventually someone else is going to have to maintain everything I write. When I started I worked in the nuclear industry. Everything there has a 50 year lifespan. I started working in the Research and Technology Center. I thought I would be doing cutting edge research. Instead I ended up working on a 15 year old circuit board tester to test 40 year old circuit boards. The circuit boards were so old, the components were no longer manufactured. We had to buy them for a small fortune from some specialty company that had bought all the old Motorola Dies. The tester was so obsolete that the only parts we could find were used ones on Ebay. The software ran on an obsolete OS. It suddenly became my job to maintain this thing. That project really drove things home.
I was just reminded of this whole idea recently. I taught a Unit Testing and a DQMH Workshop back to back. This guy Ben, came to both workshops. The first day of each workshop, I asked everyone what the y wanted to get out of class. Both times Ben answered that he wanted to learn how to write better more maintainable code. Why? Because he wanted whoever came after him to be able to easily pick up where he left off. I was impressed. Bravo Ben.
The other place this showed up recently was at the recent CLA Summit. Sarah Zalusky gave a great presentation on Legacy Code. It was all about techniques on how to make it easier for the next guy. After that I kind of came up with a little phrase to help me remember:
Don’t let your legacy be Legacy code.