Hacker News new | ask | show | jobs
by Humjob 3643 days ago
This is a great example of an entrenched incumbent/monopolist backlash against an earnest attempt to cut costs and increase the efficiency of government. This same story happens every day throughout the world in numerous ways, and solving it so the 'good guys' win is in my opinion one of the of the most important things a country can do to improve its institutions.

I've spoken to a number of developers who work in DC, and they pretty much tell the same story: huge tech companies/consulting firms who want to lock in a long-term contract use unnecessarily complex technologies and solutions (I'm looking at you, Java EE) that create big legacy codebases which are very difficult to switch away from, ensuring that the contractor has a job forever. Furthermore, once they've got the government agency 'by the balls' (AKA, the contractor has built a complex, poorly documented monster which only it can understand), it can charge a ridiculous amount of money for maintenance and new feature development.

4 comments

You have correctly identified that this is a fight against the system dynamics which lead to government waste. Please please please actually contact your representative to give them rhetorical ammunition in the fight against it.
Lots of successful websites use J2EE though. Picking on that seems kind of unfair. It's not like giant codebases written in Ruby or JavaScript or PHP are somehow easier to maintain or switch away from.
You're absolutely right. It's the people involved that make or break the codebase, and transitively, the project itself.
> huge tech companies/consulting firms who want to lock in a long-term contract use unnecessarily complex technologies and solutions

And the small ones often do it by pushing projects to use their proprietary solution.

Often times, you don't even need to use particularly weird solutions. The timeframe for some of these projects is so long that whatever you pick going in is going to be obsolete or at least obsolescent on go-live. But that's fine, either locking in maintenance or assuring a subsequent modernization effort.