Wednesday, February 8, 2017

Jeff Desjardins — How Many Millions of Lines of Code Does It Take?

Google wins.

Visual Capitalist
How Many Millions of Lines of Code Does It Take?
Jeff Desjardins


Ignacio said...

Technical debt and not enough refactoring to save costs is what create those insane code bases many times, not necessarily complexity. Is like a growing cancer, a lot of boiler plate and poor practices due to management constraints. Considering how much Java Google runs it doesn't not strike that it has such overbloated codebase, considering the love of Java development for boilerplate and redundancy.

This will be a HUGE problem in a few decades, considering most modern systems depend on such code bases. And this is not a problem that can be easily solved just throwing more programmers at it (in fact that can make things WORSE a lot of times).

Paradoxically the solution will have to come from automated complex language processing and code generation techniques to clean up all that mess as doing it manually is going to be impossible due to all the espagueti code out there.

Joe said...

I question some of those, I think there's a few sliding errors.
5 million lines just to fix I wouldn't think there'd be that many lines in the entire application, let alone a 'fix'. 4.5 million for the Xbox dvd player? Shit, if windows 7 included that dvd player as part of it's 40 million lines, that's more than 10% of the code just for a flippin DVD player? wtf indeed.

I was a bit amused by Windows 7 using 10 million lines less than vista. Explains a lot.

Ah technical debt, gotta love it. Instead of taking the time to refactor, nah, let's just slap a bandaid on and get on with things for now... then you hire a new grad to sort it all out later..

Andrew said...

When I get into a new project, it's not unusual for the complexity to grow and the code base to fall by 50%. Lines of code is a terrible way to measure complexity of behavior, though it may not be a bad way to measure clarity of thought and effectiveness of management (inversely).

Who knows what's being counted in any of this. These days, dependencies are great. Not that they HAVE to be, but it's often easier to just use something that exists than it is to extract the bit you want or write something new in order to make something work. I think that repurposing of code in that way is what life is also about.

Bob said...

What about the effect of Object Oriented languages?