3 ms·
my servers are either debian or ubuntu, and my laptop is a mac. You do realize that the OS isn't a single monolithic code base. It's a bunch of smaller code bas
by jshen 17y ago
my servers are either debian or ubuntu, and my laptop is a mac. You do realize that the OS isn't a single monolithic code base. It's a bunch of smaller code bases that work together, which is precisely the point I was making.
- davidw 17y agoWant to take a guess at how many lines of code are in the Linux kernel?
- jshen 17y agothat's the exception, not the rule right? It's also a example of something that I would absolutely write thorough tests for. I'm also curious how modular it is. Does a kernel hacker have to keep the structure of that whole set of code in his/her head? I'm guessing there are a lot of clean seams in it that in practice reduce the actual lok related to a project down to a much smaller number.
- jshen 17y agoThis is from linus' chapter in "open sources" "With the 2.0 kernel linux really grew up a lot. This was the point we added loadable kernel modules. This obviously improved modularity by making an explicit structure for writing modules. Programmers could work on different modules without risk of interference."
- plinkplonk 17y agoMeaningless. You made an explicit statement that you thought all code bases with more than 10 k lines have "questionable design", using a piddly little rails app as an example. When someone pointed out that linux kernel had millions of lines now you are retreating to "but it is modular". Programming languages have had modules since the eighties. If someone points out a 25,000 line module what will you say? Each function has less than 10 k lines? The point is that there are well designed code bases (the design includes modularization) with sizes well above 10 k lines , which directly contradicts your point. I've worked on well designed enterprise systems with a few million lines of code.
- jshen 17y agoYou've flipped my statement which changes its meaning. I said I'd question the design of any code base that large. Some would pass that questioning. I did not say that all large code bases have questionable design. I won't debate a strawman anymore so I'll move on. Btw, are device drivers counted in that millions of lines of code? If so those are very independent things. This thread was about test coverage, how many of those millions of lines of kernel code are covered by a unit test? EDIT: so you agree with my original assertions that large test suites may not be worth the cost?
- plinkplonk 17y ago"how many of those millions of lines of kernel code are covered by a unit test? " Not many. And yet the kernel is an awesome piece of code. That was the point. I don't have the time to debate test-driven/test-coverage fanatics either.