Modularization requires legible interfaces

Legible interfaces enable someone to build on top of a module without understanding what is inside of it.

Creating legible interfaces is expensive

Ways that an interface can be legible

  • Interfaces can remain legible by not changing, but this is rare.
  • Interfaces can remain legible if the people who change them update the ‘documentation if you will’ but this is usually an afterthought.
  • Interfaces can remain legible if there is a party whose job is to maintain the interface. This requires coordination that often doesn’t happen. Program and project management is important and valuable

I’m sure that there is a lot of thinking and literature around this in the computer science and possibly program management communities. (

The real test of an interface is how much work it takes to combine a node with another node. Connections create new knowledge. Interface quality creates the endogenous part of the friction in combining nodes that Jerry Neumann mentions in One Process - Post.

Related

Web URL for this note

Comment on this note