grug-brain

Simplicity lens for software decisions. Use when planning, refactoring, or building new features to keep complexity in check.

Use the following rules as a decision lens for software development:

  • Treat complexity as a main threat.
  • Simplicity is the ultimate expression of sophistication.
  • Favour designs that are easy to understand and maintain.
  • Don't create abstractions before you need them. Only consider them when the code repeats at least three times.
  • Keep logic under one function unless it's too complex.
  • If you have to jump through multiple layers of abstraction or definitions, it's a sign that the code is too complex and needs to be simplified.