Wednesday, January 11, 2023

"Aging Software"?--Tufekci Is Wrong?

NYTimes columnist Tufekci had a piece  discussing Southwest Airlines problems in managing their airplanes and personnel.  I just looked it up online on Thursday evening, finding to my surprise the Times has a featire in their comment system called NYTimes replies where she responded to some of the comment.

She puts the blame on "aging software" used to schedule pilots and crew.  I'm not sure why I immediately objected to the term, but here's my thoughts:

"Aging", which I am, means to me a deterioration of abilities, your body goes, your mind goes, you go. But software, once written (and debugged) remains the same, essentially forever. It's a set of ideas, of data, of information, which may be lost or destroyed, but will always do what it was capable of doing at its origin. 

Tufekci also uses the metaphor of building a structure, but using shortcuts, skimping on the foundation, etc.  Saving money now but setting the stage for problems later.  That's also wrong.   She mentions "technical debt", which is an interesting concept, but seems to me to conflate problems. 

I'd suggest the Southwest problem is a problem of "aging", but not in the sense I outlined above--deterioriation.  Consider the mature individual, the completed building, the proven software--each fits its environment, fulfills its function. There's a match of thing and context. Obviously the match isn't perfect; it may be flawed, corners were cut on the building or the software, the individual ends in the wrong occupation, with the wrong spouse, etc.)  As time passes, the building and the individual will deteriorate, they'll require maintenance to stay functional. But not the software, except as bugs appear. 

So the term "aging" has two sides: change for the worse in the entity discussed and change in the environment in which the entity operates, impairing the match between entity and environment.

For Southwest I suspect their software dates to the airline's early days, when it was doing point-to-point flights, basically within California.  It's expanded vastly over the years, getting lots of plaudits from customers.  The consensus seems to be they failed to spend enough on upgrading their software.  News media doesn't die into details, so we don't know whether the software ran into capacity limits, whether the system was never changed to use new technology (like generating text messages to personnel), whether the fundamental data model was flawed in light of the new environment and the impact of very bad weather, or whether all of the these factors were at work.

At the end there's a mismatch of capacity and environment. For humans the capacity declines and the environment changes. For software the capacity stays the same while the environment changes. 


No comments: