Princípio da Menor Surpresa
Se uma feature necessária tem um alto fator de espanto, pode ser necessário redesenhá-la.
Quando dois elementos de uma interface entram em conflito, ou são ambíguos, o comportamento deve ser aquele que menos surpreende o usuário.
Na prática
- Nomeie funções pelo que fazem, não por como fazem
- Configurações devem ter defaults sãos — o caso comum não deveria exigir configuração
- Erros devem apontar para a causa, não para o sintoma
rmsem flag não deveria deletar recursivamente
Onde aplicar
- APIs e CLIs — flags e argumentos previsíveis
- Configuração — convenção sobre configuração
- UI — o botão faz o que o label diz
“The system should behave in a way that most users will expect it to behave.” — IEEE