When 'It Works' Becomes the Problem
A while back I worked on a system built entirely on .NET 4.8, MSSQL Server, SSIS, and Windows Server 2019. Everything was locked into the Microsoft stack, Visual Studio, AD, and tools that only worked on Windows.
The system had been running for years with zero documentation and tons of hardcoded logic. The team knew it deeply but had been working in isolation so long that questioning anything felt like drag. It wasn’t broken so why fix it?
I raised some flags about how hard onboarding new developers would be, how easy breakable the codebase had become and how risky it was to be so deeply tied to one vendor. The response? Shrugs and silence. It worked so why fix it?
Then we suddenly needed to port it to .NET core, this brought out a lot of difficulties. Third party libraries had not been ported, we had all window specific code, Windows authentication, Windows services etc. Deployment would also be an issue. Basically a headache and we could not switch over because the codebase was so reliant on Windows platform.
That taught me to avoid deep vendor lock in. Being all in on one platform feels easier short term but it kills flexibility in the long run. It makes change harder, makes hiring harder and it makes your stack age faster than you think.
The client had no technical background, so they never pushed back. The team was comfortable. The system ran. Everything seemed fine from the inside.
From the outside it felt like watching something slowly crumble. Not broken today but in the meanwhile technical debt piling up year after year.
I usually enjoy improving legacy code. But this one was different. It wasn’t just the code it was the mindset. Resistant to change and suspicious of improvement.
If there’s a takeaway here, it’s this “just because something works doesn’t mean it’s working well”. Stability is not the same as sustainability. And the longer you wait to modernize the harder it gets.
If I ever catch myself clinging to old tools just because “they still work” I hope someone calls me out (or slaps me).