And layers are for software, e.g. the 7 layer (OK 4-5) OSI network stack. It seems that the author of the original article may have been high when they wrote it.
Yeah, I guess the question is, do you know what your goal is. Here the author is doing low level kernel stuff inside SunOS, and I can understand the "too many layers" issue there. However, he does SERIOUSLY jump the rails when he starts talking about the NSPR stuff. Maybe you do end up with deep stacks on Mozilla, and that will affect performance in the aggregate. However -- and this goes back to the "Optimize the common, not the bad" rule -- Mozilla tweaks its performance by making sure it doesn't have to do anything much heaver than O n^log3 routines above those deep stack calls.
However, it is exactly that layering that gives you both code longevity and developer productivity during the actual project.
RE: Optimization AntiPatterns
Yeah, I guess the question is, do you know what your goal is. Here the author is doing low level kernel stuff inside SunOS, and I can understand the "too many layers" issue there. However, he does SERIOUSLY jump the rails when he starts talking about the NSPR stuff. Maybe you do end up with deep stacks on Mozilla, and that will affect performance in the aggregate. However -- and this goes back to the "Optimize the common, not the bad" rule -- Mozilla tweaks its performance by making sure it doesn't have to do anything much heaver than O n^log3 routines above those deep stack calls.
However, it is exactly that layering that gives you both code longevity and developer productivity during the actual project.