Software Engineering has been blessed, over the course of the past several decades, by exponential increases in available resources (Moore’s Law et simila). This has somewhat offset the inherent laziness that the author speaks of in his essay, in that while it requires effort to implement a feature (or an abstraction, is your case), but thereafter the increase in processing power essentially rapidly makes the performance penalty ‘free’. Now that Moore’s Law seems to be slowing down somewhat (though maybe that was just Intel’s monopoly position in CPUs showing, as AMD’s recent releases and the unending growth of GPU and ARM performance suggests), implementing additional features that carry a performance penalty will entail considering the effects of that slowdown in perpetuity, and therefore will be (hopefully) taken into account.
I’m not saying that people will revert to writing assembler onto the metal, but perhaps the whole trend of VMs inside VMs on dockers on compartmentalised OSes will slow down.
Honestly I didn't even consider the abstractions as a problem due to performance penalties in the vast majority of cases. I consider the abstractions a problem due to their cognitive penalty and the fact that you often need to put a square peg in a round hole (which requires a cognitive load both initially and in maintenance) due to incorrect abstractions. The fact that automatic optimizations (e.g. compilers) may get rid of these abstractions' performance costs doesn't mean their cognitive costs are removed.
I agree we shouldn't necessarily be writing in assembler, but we should be cautious of over-generalization. A math professor I had once said you should study problems in the right generality and no more. I think that software is the same. Abstractions have a cognitive cost and they are often not apparent until they are taken together. Keeping design simple and focused is a way to try to avoid those costs.
I’m not saying that people will revert to writing assembler onto the metal, but perhaps the whole trend of VMs inside VMs on dockers on compartmentalised OSes will slow down.