– Alfred North Whitehead
Abstractions are produced and consumed. You can make your abstractions better, but that doesn't mean you won't have to deal with leaky abstractions done by others.
Also, having depth in understanding is not only good in cases of leaky abstractions. It's also good to have a better breadth of options for what's out there. If layer B is built on layer A, but you just know B, you might end up building layer C on top of B that's very much like A, but worse in bloat and convolution. Like making a server that serves requests passed as files via NFS because you didn't know TCP sockets existed.
The software that has brought new things to the table has mostly been built close to the hardware, far away from the apex of the software stack. Stuff like redis, the AI boom, none of that is built in wasm or electron.
Until they do. Had to deal with this recently. Not easy.
I got physically unwell when I read "the purest and best form of progress is is something like half of the internet being wordpress". That's like saying standardizing on crystal meth is progress.
I get the general sentiment, but I wouldn't confuse "popularity" with "progress".
I think we primarily make progress as engineers (and a species) by making better abstractions.
Yes there are some leaky abstractions, SQL is a great example. But there are plenty of systems that don't leak (e.g. harddrives with constantly dying sectors), and the more you think about all the abstractions the more you have to admit that nobody could get their job done if they had to understand every bit of the computer and the cloud platform and the software.
I think progress is made by standardizing on the right abstractions. What the purest and best form of progress is is something like half of the internet being wordpress. Progress is building tremendous things with the least amount of learning expense necessary.
AI will help get us there. Some day soon AI will write queries and it'll do it better than most companies need before they're profitable.