# Modularization enables pieces to be used in many different technologies
Modularization is almost never complete because technologies are [[Complex System]]s. Even electricity sockets, the paragon of modularization, can have hidden assumptions.
There is always a tradeoff between moving fast and modularization. Modularization requires legible interfaces and [[Creating legible interfaces is expensive]]. The more different technologies depend on these interfaces, the harder it becomes to change them because it requires changing all the pieces inside the module that are coupled to that interface. [[It is hard to change interfaces]].
It’s not quite modularization but there are also technologies that can create or enable many different pieces, like 3D printers or CNC mills. This suggests something for [[Design for roadmapping system]] along the lines of [[The tech tree is trying to both capture the current state of hierarchical heuretics and the recombination of heuretics over time]].
### Examples
* Computer chips
* Batteries
* Wall electricity
* USB cables
* Bolts
* Unix Command Line tools
### Examples of bad modularization
### Related
* [[§Tech Tree Model of Heuretics]]
* [[Modularization enables the higher level technology to improve continuously even if pieces improve discretely]]
* [[Modularization requires legible interfaces]]
* [[Creating legible interfaces is expensive]]
* [[The tech tree is trying to both capture the current state of hierarchical heuretics and the recombination of heuretics over time]]
* [[Complex systems catastrophically fail through a series of failures that would be survivable on their own]]
* [[cookHowComplexSystems2002]]
* [[The Architecture of Complexity]]
<!-- #evergreen -->
[Web URL for this note](http://notes.benjaminreinhardt.com/Modularization+enables+pieces+to+be+used+in+many+different+technologies)
[Comment on this note](http://via.hypothes.is/http://notes.benjaminreinhardt.com/Modularization+enables+pieces+to+be+used+in+many+different+technologies)