Hi Ray, thanks for the comment, keep them coming. I think that layered abstractions are a necessary part of writing software at scale. The idea behind the "frosted glass" metaphor is that it should be easy to detect mismatches between adjacent layers. This, I think, mitigates a lot of the (very real) problems you've described; if we understand the essence of an abstraction, we feel more confident in using it and in discarding it when it's no longer useful.
I don't have any other material that specifically discusses this, other than the earlier simplicity of a fractal post. It is, however, touched on throughout the manuscript. I'll give some thought as to whether there's more to say on the subject.
Hi Ray, thanks for the comment, keep them coming. I think that layered abstractions are a necessary part of writing software at scale. The idea behind the "frosted glass" metaphor is that it should be easy to detect mismatches between adjacent layers. This, I think, mitigates a lot of the (very real) problems you've described; if we understand the essence of an abstraction, we feel more confident in using it and in discarding it when it's no longer useful.
I don't have any other material that specifically discusses this, other than the earlier simplicity of a fractal post. It is, however, touched on throughout the manuscript. I'll give some thought as to whether there's more to say on the subject.