// HACKER NEWS — CYBERSECURITY
Bad Code Is Kudzu
Kudzu is a plant that was once introduced from East Asia to the eastern United States as a way to combat soil erosion.
But, kudzu, once introduced, grows aggressively and can overtake sidewalks, houses, foundations, and even trees.
The only way to kill kudzu is to prune it aggressively, as a concentrated strategy enacted together by all the people who live near where the kudzu grows.
You know where I’m going with this. An app feature, once added to a codebase, can be extremely hard to remove.
Even simple features become very sticky because not only do you have to remove the code, but what’s worse is that people start writing code on top of your code, and before you know it, you are two years deep into an implemented feature no one wants.
Deleting code is hard, particularly because it’s a thankless task that usually doesn’t go on promo packets, which is why we end up shipping hundreds of thousands of lines of sparkle emoji magic wand AI features, but deleting code is silent.
But in this new era, we must delete code even harder, because if we don’t constantly remove complexity, we are going to drown in generated kudzu slop that overtakes codebases.
In the era where it’s easy to add stuff, leave yourself a plan to remove the features you added, particularly since it’s much easier than before, too.
For example, in May, I added a feature to add hashtag bubbles to my blog. I’m a millennial, social hashtags are my love language. I thought I would use them all the time, I thought my site visitors would use them all the time to beautifully navigate my sage writings. I used a combination of elegant machine learning techniques.
I left it alone for a few months to see if users actually used it in production, and the answer was a resounding no.