A few snippets from Design Principles Behind Smalltalk. I have skipped those maxims that apply only to programming language design, and focused instead on the principles that are broad enough to prove useful in all fields of design.
- If a system is to serve the creative spirit, it must be entirely comprehensible to a single individual.
- A system should be built with a minimum set of unchangeable parts; those parts should be as general as possible; and all parts of the system should be held in a uniform framework.
- [Languages exist] to provide a framework for communication.
- Languages and systems that are of sound design will persist, to be supplanted only by better ones.