No último post, defendemos a máxima de que a complexidade é custo e, por isso, deve ser combatida (ou resolvida). Entretanto, para que fique claro, somos a favor do simples, não do simplório.
Tudo deve ser feito tão simples quanto possível; mas não mais simples – Albert Einstein
[tweet]Enquanto o simples combate a complexidade, o simplório a evita.[/tweet] O simples soluciona o complexo, o simplório disfarça.
Enquanto o simples reduz custos, geralmente de manutenção, o simplório aumenta. Aliás, o simplório algumas vezes se “disfarça” de simples e parece sofisticado. Entretanto, no fim, é mais um indício de amadorismo remunerado.
REVISÃO: No fim, mais do que o amadorismo remunerado, acreditamos que soluções simplórias são produto do incompetente motivado – [tweet]bem mais perigoso que o amador remunerado, o incompetente motivado pode “quebrar” uma empresa[/tweet] (mas esse é tema para outro post)
Na categoria das complexidades dos custos de solução técnica, alternativas simplórias, no lugar de evitar custos no longo prazo, os criam.
Dentre as soluções técnicas simplórias que encontramos com mais frequência em nossas consultorias estão soluções caseiras para caching, mensageria, log e backup. Todas cobrando preços bem altos, geralmente quando o negócio não pode pagar.
Na categoria das complexidades dos custos de legado, alternativas simplórias mantem sistemas no ar por mais tempo do que deveriam.
Dentre os problemas mais frequentes envolvendo legados, que encontramos em nossas consultorias, estão projetos de migração inacabados que acabam mantendo sistemas antigos ativos por mais tempo do que seria necessário. Abordagens simplórias não mapeiam de forma suficiente a abrangência do legado nos processos de negócio e na infraestrutura em função de uma “pressa artificial” (há abordagens simples que ajudam a resolver esse problema).
Por fim, na categoria das complexidades dos custos de domínio, alternativas simplórias entregam soluções rebuscadas que custam mais caro do que o cliente está disposto a pagar, entregando menos do que o cliente precisa.
Há uma tendência ao tecnicismo difícil de entender.
Complexidade é custo! Soluções simplórias são custo! A simplicidade é o último grau da sofisticação. Simplicidade agrega valor (ou, pelo menos, não destrói).