DRMacIver's Notebook

The No Genies Conjecture

The No Genies Conjecture

A thing I often end up explaining to people is that in testing you can go broad or you can go deep: Example-based testing tends to be deep, property-based testing tends to be broad. There’s no real way to go broad and deep at once other than doing a stupid amount of work.

A similar dichotomy is between physical and digital tools. Physical tools tend to be flexible but limited power, while digital tools tend to be powerful but inflexible. There are very few tools that are both powerful and flexible without you having to do an awful lot of work.

Roughly there’s a “pick two” thing going on between:

  1. Powerful
  2. Flexible
  3. Easy to use

If you’re lucky you get one of these. If you’re really lucky you get two. You basically never get all three.

Except in fiction. A genie’s wishes are powerful, flexible, and easy to use.

Thus, one might reasonably term the statement that you cannot have all three of these things at once as the conjecture that genies do not exist.