Last week a friend, at the woodshop I use, asked me if I could solve a problem he’d been having. I thought I’d share a bit of issue context, what I did to address it and the similarities to the software concept of technical debt.
Back before 2008, there was a large, thriving industry of automotive and RV customization in Northern Indiana. When the recession hit, many of these businesses closed, since the market for RVs dried up. Fortunately, this area has started to recover but the earlier collapse left many RV owners with parts they couldn’t replace, when something went wrong. Once the part broke, their investment was less functional than it was before and there was nothing they could do about it. I’ve heard this complaint from numerous folks, so this particular situation is not an isolated incident. Even name brand companies used specialized parts from these ‘mom-and-pop’ tooling shops.
My friend had an awning (I think the brand was Carefree – how ironic). One of the support mechanisms broke. He investigated finding a replacement for quite a while and resolved that he’d have to live with an awning that no longer functioned as designed. He asked me if there was something I could do, since he knew my background as a problem solver and gave me the broken fragments (he could find) of the awning slide. He also described the functionality of the parts that he couldn’t find.
Having worked with 3D printing for about a decade, I told him I’d give it a shot. I started by creating a prototype (in PLA) that he could try and once we agreed upon the design, I’d create him a couple real ones (in ABS).
It was a fairly simple design, so I modeled it in Microsoft 3D Builder. It took a couple of attempts, but he now has an awning that moves as effectively as it ever did, as well as a spare part.
The problem reminded me of the software portfolio management issue of technical debt. Organizations spend much time and money creating successful software that works great until it doesn’t. The business risk is just sitting out there waiting to bite us. If there is a problem, organizations may not know how to fix it, since the folks who wrote or performed the customization are no longer around. Sometimes the software that was used to create the solution is no longer supported and available. These issues (even if known) can be difficult to address, since the software is working and adding business value, on a daily basis. Any change may be viewed as riskier than just relying on ‘hope and prayer’.
When the worst occurs, people with the right tools and expertise may address the issue quickly – if you know where to find them. If not, you may just need to ‘trade it in’ and replace the functionality while the business limps along, assuming it can.
Organizations need to assess their software on a regular basis and understand the value generation, cost, risk relationship of their software investments. This should be part of any strategic planning or business continuity effort.
Here is a picture of the final product mounted on his awning. Hopefully it will give him as many more years of service as the original.