Bad Code Isn’t Technical Debt, It’s an Unhedged Call Option
1–10 of 25 posts
Re: Bad Code Isn’t Technical Debt, It’s an Unhedged Call Option
#2When someone mentions "unhedged Call Option" (as in the title), it usually means long call, not short call.
Re: Bad Code Isn’t Technical Debt, It’s an Unhedged Call Option
#3Premature prevention of technical debt is the root of all evil.
Re: Bad Code Isn’t Technical Debt, It’s an Unhedged Call Option
#4Re: Bad Code Isn’t Technical Debt, It’s an Unhedged Call Option
#5Unless you're being paid by the hour or don't care when the product ships, it's always a good idea to just to the simplest implementation that works. Premature prevention of technical debt is the root of all evil.
"Premature prevention of technical debt is the root of all evil."
If you are wittily comparing the reduction of technical debt with optimization, I am confused. Optimization often increases technical debt by adding complexity, so "premature" optimization is a little like buying a call option rather than selling one. The word "premature" gives us an out, of course, but overall I would say that optimization and the reduction technical debt are not isomorphic.
Re: Bad Code Isn’t Technical Debt, It’s an Unhedged Call Option
#6The "Error establishing a database connection" I'm getting on this link is incredibly ironic.
Re: Bad Code Isn’t Technical Debt, It’s an Unhedged Call Option
#7Unless you're being paid by the hour or don't care when the product ships, it's always a good idea to just to the simplest implementation that works. Premature prevention of technical debt is the root of all evil.
The simplest solution is harder and takes longer.
I think easiest or quickest is what is really meant in this formulation, but rarely do either of these result in simplest. I start with the former and strive to iterate towards the latter, because the former starts cheaper but ends up more expensive in the long run.
Simplification is an optimization.
Re: Bad Code Isn’t Technical Debt, It’s an Unhedged Call Option
#8Unless you're being paid by the hour or don't care when the product ships, it's always a good idea to just to the simplest implementation that works. Premature prevention of technical debt is the root of all evil.
IF you are young and naive, you could argue that this was an honest mistake. In every other case, trying to push to a client the "simplest thing that works" it is either professional negligence or borderline fraudulent cost externalization.
Not being paid by the hour is not a valid excuse. It is a symptom of either naivety or shady business practices.
Re: Bad Code Isn’t Technical Debt, It’s an Unhedged Call Option
#9Unless you're being paid by the hour or don't care when the product ships, it's always a good idea to just to the simplest implementation that works. Premature prevention of technical debt is the root of all evil.
Unfortunately, in practice the "simplest implementation that works" is understood as the crappiest implementation that seems to work. IF you are young and naive, you could argue that this was an honest mistake. In every other case, trying to push to a client the "simplest thing that works" it is either professional negligence or borderline fraudulent cost externalization. Not being paid by the hour is not a valid exc…
Trying to push to a client the crappiest implementation that seems to work is certainly everything you say that it is - but that's not the same thing as delivering the simplest implementation that works.