Technical Debt for Non-Software Developers
Warning - this post is not about Scrum. It is about Technical Debt in my home!!! Please do not judge me!!
So what is Technical Debt -
Technical Debt: the typically unpredictable overhead of maintaining the product, often caused by less than ideal design decisions, contributing to the total cost of ownership. May exist unintentionally in the Increment or introduced purposefully to realize value earlier. - https://www.scrum.org/resources/scrum-glossary
When helping teams I often get asked "but what is Tech Debt?" and I tend to say something along the lines of "it is the decisions we make, consciously or sub-consciously, in order to complete work that we later feel we could have done better. It could be intentional or we have then learned new things which make the work we did not the best"
So, I thought I'd show you an example of Technical Debt in my house; something that I choose to do but at the time I had the best intentions
18 months ago, we had our bathroom refitted and it needed an extractor fan fitted to expel the steam from the shower etc... SO, I cut a hole in the wall and fitted the extractor fan. In order to finish the job, I had to fit a grille on the outside to stop birds or squirrels making their home in there. I put this job off for over a year - too much to do plus I didn't fancy standing on a roof at a 45-degree angle with a nasty drop off it to put the grille in properly.
Here is my working environment. Please note the angle of the roof, the hardness of the paving slabs and the slipperiness of the roof tiles ( you can't see those, but they were VERY Slippery)
In order to do the job correctly I would need to:
- Get onto the roof, taking the drill and necessary things I'd need (Screws, screwdriver, rawlplugs, pencil /or sharpie, grille)
- Position the grille in the right place. (about 6ft / 1.82 m from the highest point of the roof)
- I would be standing on the tips of my toes.
- Mark each separate screw holes (4 spaces) - Please note that he wall is made up of uneven stone, which means that I can't just drill into the mortar.
- Drill each hole.
- Put a rawlplug in each hole.
- Re-seat the grille on the wall and then hope that each hole matches up to the screw positions.
- Screw the grille in place.
- Put silicone sealant around into the gaps between the grille and the brick face, to close any gaps between the two.
- Then get off the roof without falling.
(Approximately 30-40 minutes or so work.)
OR I could....
- Get on the roof, take some glue and the glue gun.
- Position the grille in the right place. (Still about 6ft / 1.82 m from the highest point of the roof)
- I would still be standing on the tips of my toes!
- Glue the grille onto the wall.
- Twisting it into the correct position.
- Smooth off the glue, filling in any of the gaps.
- Get off the roof.
(Approximately 10-20 minutes or so work.)
Guess What I Did?
Of course I took the easier option and here it is successfully delivered!
....AND whilst smoothing the glue to fill the gaps, I happened to look at the instructions on the glue and read that it was suitable for internal use only!!
I had a choice
- Take it off
- Clean up the grille
- Then drill the necessary holes and fit it as per the instructions.
- Worry about it later, and if it lasts a winter then I'll sort it out next spring.
I chose to leave it - so now my house has technical debt.
I know, that in 18 months - 2 years, I'll be back on the roof fitting a new grille (I will have had to have bought a new one as the screw placings will be filled with glue) and then drill into the stone to fit again.
OR will I ? Maybe if I got some external glue that might help... or what if I put some some more of the same glue back on the existing grill just to stick it back on for a few more months...
Do you see how Technical Debt creates additional work and bad decision is added to bad decision?
We make conscious or unconscious decisions which may not lead to the best choices and that can often end up creating more work in correcting those choices