According to a Sunday, Oct. 20, 2013 New York Times article, the Obama administration frantically tapped federal tech contractors to find out if they could fix the problems on President Obama’s online health insurance marketplace by Nov. 1, 2013.
If the Obama administration is hoping to solve their problems by finding a few developers with lightning typing speeds, it's akin to asking, "How many monkeys does it take to rewrite 5 million lines of code in ten days?"
"Five million lines of code" wasn't a random figure plucked from a hat. It's a number an anonymous specialist predicted might "need to be rewritten before the Web site runs properly." According to a classic published in 1975, "The Mythical Man-Month: Essays on Software Engineering" by Fred Brooks, an average developer can only write ten lines of flawless code a day. Assuming the accepted industry standard productivity metric is correct, to write five million lines of code in ten days would require at least 50,000 developers.
However, even if the Obama administration has managed to find and contract with 50,000 developers in the last week, rewriting code requires a bit more beyond merely deleting bad code and inserting good code. At the least, every line of bad code would have to be identified and isolated from the approximate 500 million lines of code reported on the site. That would leave basics which include but are not limited to analysis of new code, making sure that all of the new code works with the old code, testing the entire product and implementation.
In an interview, back in 2005, CNN quoted Brooks' warning that the more engineers stirring the code pot, the slower and more difficult the project would become. In a nutshell, increasing the number of folks who need to be trained, retrained, and repartitioned increases communication problems and guarantees lots of down time.
Today, Slate's Matthew Yglesias explained it thus:
Imagine a programming task that will take a skilled programmer a year to complete. Now imagine a boss who wants the project done in a month. The programmer says, 'I can't do it that fast." So the boss says, "Let's hire 11 more skilled programmers—we have 12 months' of work to do, and I want the job finished in one month, so I need 12 guys.
Brooks' point is that this doesn't really work. Not that you can't do collaborative software development projects (obviously you can—they happen all the time), but the complexity of the work really spirals upward once you start adding more people, because coordinating what everyone's doing is a difficult task all on its own.
The vast problems may explain why Obama provided a 1-800 number to call but failed to discuss how he was going to fix the Obamacare portal in today's speech. Arguably, rewriting code for Healthcare.gov will surely be the recoding horror of all times.
A question to ask the Obama administration is: "How long would it take for 50,000 tech monkeys to rewrite 5 million lines of code?" The short answer may well be, "How much longer does the Obama administration have left in office?"