<story><title>Technical Debt: Why it&apos;ll ruin your software</title><url>https://labcodes.com.br/blog/articles/tech-debt.html</url></story><parent_chain><item><author>solomatov</author><text>In my experience, I have seen much more problems because of over engineering by well meaning people than because of technical debt.&lt;p&gt;Simple but under engineered systems are much easier to rewrite than to simplify over engineered ones.</text></item></parent_chain><comment><author>spamizbad</author><text>One thing I&amp;#x27;ve learned is that what often looks like overengineering is actually &lt;i&gt;under&lt;/i&gt;engineering -- it&amp;#x27;s much &amp;quot;easier&amp;quot; to throw together a complicated system than really think things through and develop something that accomplishes the same objectives in a simpler (but possibly more &lt;i&gt;complex&lt;/i&gt;) manner.</text></comment>
<story><title>Technical Debt: Why it&apos;ll ruin your software</title><url>https://labcodes.com.br/blog/articles/tech-debt.html</url></story><parent_chain><item><author>solomatov</author><text>In my experience, I have seen much more problems because of over engineering by well meaning people than because of technical debt.&lt;p&gt;Simple but under engineered systems are much easier to rewrite than to simplify over engineered ones.</text></item></parent_chain><comment><author>spaetzleesser</author><text>I think a lot of today&amp;#x27;s massively tested, microservice and dependency injected systems will end up as huge piles of technical debt in the future. If you think modifying a COBOL codebase today is hard, wait another 20 years and see how much &amp;quot;fun&amp;quot; it will be to rework today&amp;#x27;s systems once their platforms are viewed as outdated.</text></comment>