terça-feira, junho 04, 2013

Do the simplest thing that could possibly work

Ontem na empresa surgiu uma excelente discussão sobre o ponto.

Pelo que andei fuçando, existe um grande debate (até hoje) sobre o que significa "Simplest". IMHO:

"Simplest" ≠ "Easiest" ≠ "Quickest"

Essa frase aqui do Ward Cunningham é boa para ilustrar:

We choose simple solutions first so that we can maintain focus on the customer's problem. Simple means easy to reason about. Easy serves as a synonym for simple so long as we remember that it is the thinking that should be easy. -- WardCunningham

(ênfases minhas)

Em termos de arquitetura, minha tradução para "mais simples" se resume a pensar em 4 aspectos:

  • Metáforas (mais fácil de explicar)
  • Simetria (mesma coisa o tempo todo = menos coisas para entender)
  • Componentes pequenos (menor = mais fácil de entender)
  • Protocolos (não preciso entender o "como")

Um comentário: