Ao criar uma solução nova ou não padronizada, o arquiteto / desenvolvedor geralmente encontra um meio-termo entre o que deseja e o que é necessário, levando em consideração as restrições fornecidas. E sempre existe a possibilidade de, no final das contas, não fazer o que se esperava ou obter uma solução longe de ser ótima.
E se “queríamos o melhor, mas acabou como sempre” acontecer por causa de requisitos não contabilizados ou alterados, isso pelo menos pode ser explicado. Mas às vezes há um buraco na velha e torna-se irritante não perceber o erro de uma criança simplesmente por causa dos olhos turvos ou das armadilhas do uso real da tecnologia da moda.
E para minimizar a possibilidade de tais erros, em muitas empresas existe a prática de proteger uma solução arquitetônica antes de iniciar o desenvolvimento direto de um novo grande projeto. Isso pode ser organizado como uma reunião, uma revisão arquitetônica ou apenas uma discussão em uma sala para fumantes. Tudo depende da estrutura de pessoal e do porte da empresa, bem como dos processos de desenvolvimento definidos.
Mas o que fazer se a empresa tiver um ou dois desenvolvedores ou se a experiência deles não for suficiente para uma avaliação especializada da solução proposta? Ou eles simplesmente não têm tempo ou desejo de mergulhar nas dificuldades das outras pessoas?
Você provavelmente já deve ter adivinhado que estamos falando sobre o uso do Habr como uma plataforma onde você pode obter ajuda real de pessoas experientes.
De fato, ótimos comentários podem ser obtidos por meio de comentários públicos. Além disso, escrever um artigo para Habr é muito mais fácil e conveniente do que se preparar para a defesa no comitê de arquitetura. Não há necessidade de combinar a data e a hora em que você pode retirar as pessoas do processo principal. E eles, por sua vez, não precisam ser incluídos imediatamente no contexto para poderem participar da discussão de detalhes.
“No devido tempo” tive a oportunidade de participar dos trabalhos da comissão de arquitetura de uma grande empresa. E a sensação após o término de cada reunião sempre foi dupla. Por um lado, é ótimo obter uma nova experiência e, muitas vezes, uma ajuda real. Mas também aconteceu que a discussão usual de uma questão aparentemente mesquinha se transformou em uma batalha verbal, cujos ecos chegaram depois de vários dias.
Lembro-me especialmente da experiência de participar do processo de unificação dos componentes utilizados. Demorou mais de um ano e meio para reconciliar a interface e a implementação de uma pequena biblioteca e exigiu várias reescritas completas de toda a implementação. Como resultado, muito tempo perdido para trazer o código a um estado utilizável que satisfizesse todos os consumidores e acabou com o desejo de fazer algo assim novamente.
Por outro lado, um artigo sobre Habré passa a ser a opção ideal quando a empresa não tem competência para organizar a discussão de um tema complexo. E o mais importante, não importa qual solução e conselho você receba durante a discussão do artigo, ninguém o força a segui-los!