Deep and shallow modules:
The best modules are deep: they allow a lot of functionality to be accessed through a simple interface. A shallow module is one with a relatively complex interface, but not much functionality: it doesn't hid much complexity. Interface is a cost (you want to reduce it), functionality is a benefit (you want to increase it)
A Philosophy of Software Design
from John Ousterhout 📕
Filed under:
Related Notes
- The code that gets written is the code that’s easier to write. An...from Fernando Borretti
- Software with fewer concepts composes, scales, and evolves more eas...from oilshell
- Part of what makes LoRA so effective is that - like other forms of ...from Dylan Patel
- All you crazy MFs are completely overlooking the fact that software...from Steve Yegge
- The io_uring interface works through two main data structures: the ...from Glauber Costa
- Inventory should be kept at the lowest-value stage possible [[High...from Andrew S. Grove
- For large-scale software systems, Van Roy believes we need to embra...from Adrian Colyer
- More generally, Van Roy sees a layered language design with four co...from Adrian Colyer