On a project I worked on, the government had this idea that we should put an inference engine (essentially an AI) into our software (which ran on a military radio). The idea was that it would be able to process XML-coded regulatory instructions and be able to develop a spectrum-use strategy that followed the appropriate regulations. It added unfathomable complexity, along with a Prolog interpreter, to what was otherwise a tractable system.<p>My guess is that the "500 million lines," to the extent it isn't pure fiction, is not actual program logic. Rather, it's data files capturing the legal and regulatory distinctions between the 50 states, all the different providers, etc.
When I do front-end web code, I get 300-500 lines of code a day on a day when I sit back and think to myself: “Wow I really hit that hard today”, and other days where I have to prep graphics, correspond with co-workers, or produce mockups I end up writing considerably less code.<p>I am aware that writing templates, or using LESS or SCSS can let you <i>generate</i> more lines in output from a much smaller input, but they can't be counting the final output as what will have to be re-written.<p>I'm not mathematician, but let's say 500 lines of usable code is a good day, that means for this project that would require one million days worth of 'hitting it hard' and not doing any graphics work, correspondence, or any extraneous tasks - JUST code writing.<p>The timeline for this project was what, 3 years? So in order for 1 million human-days of writing code to take place in 3 years (1095 days), that would require what, 913 monkeys bashing away at keyboards non-stop for 8 hours a day? I mean it <i>is</i> feasible, but that's a gargantuan undertaking and I can't see how something so large could possibly be designed to run an application with so few features.
I'm in the video game industry working on AAA console titles, and the last game I worked on sits right around a million lines for the runtime executable, and maybe another 1-2 million for all the supporting toolchains.<p>I worked on a game once that was about 4 million lines, and it had continuously evolved for about a decade at that point.<p>If the 500 million line comment is true, it probably counts all the lines in all the supporting documentation, xml configuration files (which could be huge), etc.<p>I'd bet my life's savings that it's not actually half a billion lines of executable code.
Foursquare had about 1.2M lines of code about a year ago (the last time I counted). And that's counting everything: code, tests, HTML & CSS, 3 mobile clients, various toolchain/support projects.<p>500M seems impossible.<p>EDIT: It occurs to me that I'm only counting code we wrote ourselves. We, unsurprisingly, use a bunch of open source libraries & third party tools. If you counted up all the lines of code in all those things maybe you get to 500M? Maybe?
I recall that at least some of the site's code is generated, which can sometimes result in code many times longer than equivalent hand-written code. Still, why would they could the lines of codegen and not the original code?<p>In any case, the figure seems outrageous. If it is that long, I think the site is doomed, and will have to be rewritten from the top.
Perhaps it was written in the esoteric programming language Whitespace?
<a href="https://en.wikipedia.org/wiki/Whitespace_%28programming_language%29" rel="nofollow">https://en.wikipedia.org/wiki/Whitespace_%28programming_lang...</a>
No freaking way. 500 people can't write 1 million lines of code in 7 months. Maybe if you counted some kind of ORM generated code but even that seems ridiculous. Even 500 MB of code doesn't make any sense.
One way to get to that number is to count all the code that interfaces with Healthcare.gov. For example, we know that Healthcare.gov interfaces with Social Security, IRS, and Homeland Security databases. I suspect, but have not seen it documented, that it could also be interfacing with one or many databases in each of the 36 states it covers as the federal exchange. Add up the complexity of all these systems and SWAG the number of lines of code.<p>Another way to get there could be metaprogramming. If you have a Java code writing C code writing web pages [1], you'll get progressively larger number of lines of code depending on where you take the count.<p>Another way could be needless, but legally mandated, duplication. For example since insurance is state-regulated, what if the law mandates data isolation per state--so there are 36 separate data stores: one for each state. That would give you 36 times as many "lines of code" if you were extremely literal in adding it all up.<p>These are all silly of course. But everything surrounding PPACA seems like it has to be silly, so why not this?<p>[1] I don't actually believe this is the stack.