Practice: Simple Design
  • Simplicity is in the eye of the beholder

  • Writing analogy: cross out words which contain no information

Notes:

Simplicity is difficult to achieve. The design has to work. Avoid duplicated logic and dead code. If the code is easy to read by other team members, it is probably simple. One-liners are not necessarily simple.

Abstractions are not necessarily simple. I follow the advice of Eric Raymond in the The Cathedral & The Bazaar:

Smart data structures and dumb code works a lot better than the other way around.

In writing, simplicity is eliminating filler words. It's a fun exercise. You'll be surprised out how your writing improves after this simple exercise.