On naming and cache
There are only two hard things in Computer Science: cache invalidation and naming things.
-- Phil Karlton
On reusing code
There are two "rules of three" in [software] reuse:
a. It is three times as difficult to build reusable components as single use components, and
b. a reusable component should be tried out in three different applications before it will be sufficiently general to accept into a reuse library.