Reading these lines in Clive Thompson's Coders reminded me of my former colleague C and his phrase for the encasement strategy that is referred to here. C called it shellacking the turd.
.. “It was the hackiest shit imaginable,” jokes Alan Williams, one of Guarino’s teammates. But if you spend enough time around complex old systems, “you realize that the fastest, shortest way to a deep, solid, elegant integration is just by putting another layer of dirt on top.” In the world of coding, this sort of fix is what’s known as an “encasement strategy”—fixing a hairy, complex system by boxing it in. But sometimes it is the only option you have..
When the legacy code is just about impossible to unravel never mind understand or improve it, you encase it or do as C would say more colorfully. Have seen this strategy work well on many occasions. The real trick is to get the client over the giant hump of denial and to the plane of acceptance that this is only option they have.
What is true for irredeemable code is also true for some relationships in a person's inner circle. They are too close to ignore or discard but there is no way to get on the same page with this folks, no way to make interaction with them tolerable, so you adopt an encasement strategy - something we all see in action on the holidays or whenever people get together after a hiatus. There is an unstated expectation that this time will be different, time would have sanded off those rough edges and somehow it would be easier. But such is not the case so whoever is wiser needs to start encasing and minimize contact with the core.
Comments