Dirty Socks and Technical Debt

Dirty Socks and Technical Debt


Last month I spent two weeks traveling to Mexico City, Bogotá, São Paulo, and Rio de Janeiro with Geeks on a Plane Latin America. This was my second GOAP trip; my first was last year’s trip to Eastern Europe. GOAP is an amazing professional and personal experience and I highly recommend it to everyone.

Socks dryingOnce our group of geeks arrived in Mexico City, I discovered I forgot to pack socks, so the only pair of socks I had with me were the ones I had on my feet when I left home. Not a big deal, as I figured I’d just buy a few more pairs when we had a few free moments.

What I had forgotten to account for was the jam-packed GOAP agenda. There’s a lot to do and very little downtime, and when there is downtime there’s tons of awesome stuff to see and do. So after the first day I still found myself sockless. I didn’t want to offend my fellow geeks with nefarious foot odor, so I hacked my way to clean socks: I hand washed them with soap in the hotel sink and used the hairdryer to dry them. Not an ideal solution, but it worked.

I convinced myself I would only do this until I had a chance to buy more socks, but I was lying to myself. I had found a solution that worked well enough, and so I kept putting off going to the store for socks. So every night when I got back to the hotel, I washed my socks. But a good hacker doesn’t just ship solutions, he or she iterates on those solutions to make them better. And I did, a little bit; I started letting my socks air-dry overnight and using the hairdryer to finish them off in the morning so it would take less time. And I only almost lit my socks on fire once!

Threadbare socksI was paralyzed because I knew exactly what the ideal solution looked like (spoiler alert: acquire more socks) but my current solution was “good enough” and as a bonus it made me feel a little bit clever. In my experience, the hardest part of engineering management is finding the balance between building new stuff and paying down technical debt. And here I was paying for my hacky solution with my time because I didn’t want to slow down for a moment and fix the root cause of my problem. By the end of the trip, my socks were threadbare from the vigorous washing and a lack of proper detergent.

Don’t forget that a key part of being a good hacker is learning from your solutions and iterating to improve them. Otherwise you end up with a solution that requires constant care, might catch on fire, and breaks down over time.

Photos by Robert S. Donovan and Caitlin Regan

Brandon West
More Posts by Brandon
As Director of Developer Relations for SendGrid, Brandon's focus is on empowering developers to build things, gathering feedback for new features and improvements, and fostering a cooperative developer community for anything that needs email integration.
Follow Brandon