One of the most dangerous moments in a developer's career is when an abstraction works perfectly.

Not because success is bad.

But because perfect abstractions create an illusion.

The illusion is:

I don't need to know what's underneath.