Estou lendo Righting Software e ele pertence a uma categoria curiosa de livros: os que não trazem ideias revolucionárias, mas um conjunto de óbvios surpreendentes. Surpreendentes não pela novidade, mas pela clareza. Às vezes, quase ofensivos. Em parte pelo conteúdo. Em parte pelo tom direto, seco e pouco condescendente do autor.
Juval Löwy não escreve como guru nem como otimista profissional. Escreve como arquiteto experiente, alguém que já viu sistemas crescerem, equipes sofrerem e organizações tropeçarem nos próprios atalhos. Ele parte de uma crítica simples: a indústria se acostumou a projetar sistemas em resposta a demandas funcionais, quando deveria projetá-los em resposta às vulnerabilidades inevitáveis.
Uma frase do livro resume bem esse espírito: décadas atrás, escrevíamos software para resolver problemas do mundo. Hoje, o desenvolvimento de software virou um problema de classe mundial. Não por falta de ferramentas, mas por um erro de foco. Demandas funcionais são visíveis, urgentes e políticas. Vulnerabilidades são estruturais, silenciosas e ignoradas. E quase sempre decidem o destino do sistema.
O ponto central é desconfortável: requisitos não são uma base confiável para design. Eles mudam cedo e mudam mal. O que não muda é o fato de que eles vão mudar. Arquitetar olhando para funcionalidades é arquitetar para o passado recente. Arquitetar olhando para vulnerabilidades é aceitar a instabilidade como dado de projeto.
No fim, Righting Software não é sobre escrever código melhor. É sobre desenhar sistemas que não entrem em colapso quando a realidade faz o que sempre fez: mudar. Arquitetura como criação de opções. Decidir menos cedo. Errar mais barato. Sofrer menos. Talvez o maior ajuste que o software precise hoje não seja técnico, mas moral: parar de tratar incerteza como exceção e começar a tratá-la como matéria-prima.