Live data from Hacker News

Technical Debt Is Like a Tetris Game

fluentcpp.com

51–60 of 122 posts

Re: Technical Debt Is Like a Tetris Game

#51

Technical Debt is a bullshit term for people who want to get away with not finishing their work and still want to sound like they are reasonable.

> ...people who wants to get away with not finishing their work

In my experience the people making the debt don't use the term as much as the people pointing out the pile of ignored work.

Re: Technical Debt Is Like a Tetris Game

#52
post #48

> But technical debt becomes a problem when it gets out of control. Accumulating technical debt consists in piling up hacks on a piece of code, making it harder and harder to maintain. Every incremental change requires an intense reflexion and is more and more likely to cause regressions. Can anyone explain to me what reflexion means in this context?

In German it means to think about something. I'm assuming the author isn't a native English speaker.

But to reflect on something exists in English as well, just spelled differently.

Re: Technical Debt Is Like a Tetris Game

#53

Technical Debt is a bullshit term for people who want to get away with not finishing their work and still want to sound like they are reasonable.

> ...people who wants to get away with not finishing their work In my experience the people making the debt don't use the term as much as the people pointing out the pile of ignored work.

Yes.

... or wants to get away with shitty work because they don't want to admit they don't know how to do it right and be vulnerable ...

Re: Technical Debt Is Like a Tetris Game

#55
>Even if you leave a few holes in, it’s ok if you manage to have compact rows above them that will clear out and allow to fill the holes later. This is similar to technical debt, that is ok to build up if it’s under control and you have a plan to pay it back later.

That's a very low-tier understanding of Tetris. At an intermediate level of play, you'll want to deliberately leave gaps that you could clear at any time, but you choose to wait until it is strategically advantageous to do so.

At an advanced level of play, you'll want to leave oddly-shaped gaps that can only be cleared with a Clever Hack which not everyone is able to understand, let alone perform. (T-Spin)

Similar concepts do exist in programming, they are cynically referred to as "Job Security" but I doubt that the author intended to encourage that sort of behavior.

Re: Technical Debt Is Like a Tetris Game

#56
post #45

Tech debt is more nuanced than explained by most analogies. In reality there is a lot of tech debt you can get away for free and never have to pay back. The code can be a mess but the functionality works and doesn't need updating. Other tech debt can infect and cripple a system if it isn't contained early. If you demonstrate that you know how to prioritize the most important tech debt then it is easier to convince ma…

If it never costs you anything, it's just a design decision, not technical debt. Plenty of projects never upgraded C versions, so old C is maybe not technical debt. But plenty of projects are upgrading python versions now, so old python is often technical debt.

No, there is an important difference. It's technical debt because you might have to pay it back, but it might also turn out that you will be switching directions altogether and in that case the debt gets forgiven.

Re: Technical Debt Is Like a Tetris Game

#57

Analogies create a false sense of meaning. Nothing new is gained other than an isomorphism. There is no logical transfer of new information because the analogy only works if you already understand both concepts. Additionally, analogies may over simplify concepts but usually people are too enamored by the isomorphism to really see it. Think about this famous analogy: "Life is like a box of chocolates. You never know w…

[deleted]

Re: Technical Debt Is Like a Tetris Game

#58

The best analogy for technical debt is debt - that is where it got the name from! Just like financial debt, technical debt is not necessary a bad thing, but a tool - and something to manage, control and track. And just like financial debt, taking out too much technical debt without paying it back can crush you. There is nothing wrong with taking out a mortgage (and thus getting into debt) to buy a house - you just ne…

In this analogy, game development is like taking on crippling amounts of debt, declaring bankruptcy, and then starting a new company to do it all over again.

Re: Technical Debt Is Like a Tetris Game

#59
post #32

Earlier quoted context omitted.

The difference though is that financial debt is very easy to measure and quantify but technical debt is not. I like the Tetris analogy because that game has a type of debt that anyone who has played it can understand, yet is not as easily quantifiable as financial debt.

I wonder if there was a time in history where financial debt was not well understood. This would have to be either before the invention of algebra, or possibly also during a time of very poor education.

> or possibly also during a time of very poor education.

So, you mean today? The number of students that take on crippling amounts of student loans without truly understanding how it will affect them is staggering to me. The ease of obtaining credit before a person truly understands how devastating 20%+ interest rates are is also pretty telling. Financial debt is easy to get wrong, and is only compounded by the fact we don't teach this as a basic course in primary schools.

Re: Technical Debt Is Like a Tetris Game

#60
post #32

Earlier quoted context omitted.

The difference though is that financial debt is very easy to measure and quantify but technical debt is not. I like the Tetris analogy because that game has a type of debt that anyone who has played it can understand, yet is not as easily quantifiable as financial debt.

It's like financial debt, but we can can't tell you what the interest rate is.

That's a good point. I think of any given project as a CDO. There are good, productive debts and bad, stinking, potentially crushing debts in there. What matters is not that there is debt - I think there will always be - but what the blend is.

If the debts were thoughtful and deliberate with understood risks, they might make perfect sense.

If the debts were taken by people who couldn't evaluate them and had no business making that decision, it's going to be bad.

Odds are the first are well-understood and maybe even documented. The second may explode when the underlying assumptions or risk changes.

Ref: https://www.investopedia.com/terms/c/cdo.asp

Post reply on HN