Funny Thing Happened on my way to the Airport

Home The Savvy PM Blog Funny Thing Happened on my way to the Airport

bp 33 Monday, I was headed to the airport to catch a flight.  A funny thing happened…and I was reminded how sticky technical debt can be.

Southwest Airlines is an industry-leader and a fantastic organization.  I’m reading The Southwest Airlines Way right now and learning a lot about their keys to success: shared goals, shared knowledge, and mutual respect.  Great stuff!  But, even SW Airlines makes mistakes…

Back to Monday…we’re leaving for the airport.  Flight is scheduled for a 12:25 departure.  We receive a text that states the flight is delayed about an hour.  So, should we remain comfortably at home for a while, or drive on to the airport?  First, let’s confirm the flight change.  I check the flight status on Southwest’s website.  The latest update states “on time” with a 12:25 departure.  Hmm.  I check the mobile app on my phone.  12:25.  Now, my eyebrow is officially raised.  We call and speak with a friendly human at Southwest.  She confirms no change – the flight will depart at 12:25.  We should leave for the airport now!

Airlines are forced to deal with change, delays, and schedule tweaks.  Change is a constant background to this industry of air travel.  As more and more modes of communication become available, the airlines have creatively expanded how they communicate schedule changes to Customers, like you and me.  Monday is a good example: we used 4 methods to retrieve the same flight data.  The problem?  One of those modes gave a different message.  Three reported “12:25”.  One reported “1:30”.

From a programmer’s perspective, it’s easy to tie this example back to the concept of technical debt.  Imagine the complexity added to The System each time an additional mode of communication is added.

  • How many places did you patch the code when the last mode was added?
  • Did the team ever go back and clean it up?  Got an updated list?
  • Is the code of high quality, or is it “buggy”?
  • Will adding a new means of communicating updates to the Customer break something else in the code?
  • What corner cases will cause inconsistent messages to go out to Customers?

I’ve been on all sides of technical debt.  I’ve stumbled into it as a Customer.  I’m sure I created it back in my programming days.  It’s sticky, like that stuff that comes on the back of a new credit card.  Fortunately, this example did not cause me to miss my flight!