Also, "all the software stuff" still means down to assembler. So that'll be fun.
Yes, I know that's not what you meant, but why stop the fun now, just because I couldn't keep my terminology straight?
The understanding does not mean that they want to take the time investment of recreating all that work from scratch.
For instance,
I understand branch prediction, cache lines and inter-processor synchronization. But I'm no kernel developer.
I know what the assembler does, and its goals. But I haven't made one, and any I made would be sub-optimal
.. This proceeds through compilers, operating systems and up to the web stack.
I mean, writing a renderer that fully implements "HTML 5" along with ALL relevant standards - that's a massive software effort. I barely understand it, but I understand enough to get the job done.
But
No matter how much you know, there's always going to be a part of the stack that you can't develop for: you can't know everything.
that was my point.
Funnily enough, so am I. So I can't really help you with that.
This is simply a direct counter to your argument that "every non-idiot thinks full stack means everything since the stone age"
I appreciate your apology above.