Principles Of Design

Some random thoughts on designing systems

  • put the processing where the knowledge is, don’t move the knowledge to the processing
  • Where there’s 2, there’s N
  • Be more general
  • keep it in the problem space as long as possible
  • Sufficiently detailed documentation is executable
  • DRY is good
  • always align authority and responsibility

(more will be added, along with explanations)

Updated: