I just stumbled on a very well done interactive post by Brett Victor explaining the ladder of abstraction concept and how to put the idea to work exploring and understanding complex systems.
The most exciting engineering challenges lie on the boundary of theory and the unknown. Not so unknown that they're hopeless, but not enough theory to predict the results of our decisions. Systems at this boundary often rely on emergent behavior — high-level effects that arise indirectly from low-level interactions.
When designing at this boundary, the challenge lies not in constructing the system, but in understanding it. In the absence of theory, we must develop an intuition to guide our decisions. The design process is thus one of exploration and discovery.
Great use of interactive elements to demonstrate the concept.