Posts Tagged ‘perfeição’

Prática: abra mão de começar pela solução mais elegante

23 de agosto de 2010

Sintoma: um desenvolvedor começa a implementar uma funcionalidade e já no início, em algo simples e que resolveria o problema de maneira elegante, está com problemas em algo pequeno e aparentemente ilógico, que deveria funcionar. Por esse motivo a equipe não conseguem continuar com a funcionalidade, com a qual se debatem durante algumas horas.

Ação: deixe de lado a solução mais elegante temporariamente. Se possível siga a prática de baby steps. Procure ajuda em um fórum ou lista de discussão, e implemente uma solução mais simples e básica enquanto isso.

Se o desenvolvedor julga a solução daquele trecho de código algo simples e perde muito tempo para implementar, temos um indicador de um de dois possíveis motivos:

a) se a solução era tão simples quanto imaginado, ela não deveria ter demorado tanto tempo, portanto a solução não é tão simples assim: abra mão dela e implemente uma mais simples

b) com o cansaço mental em cima do problema, fica difícil ver um erro pequeno e geralmente bobo que impede o correto funcionamento.

Independente de qual dos dois for o problema, compartilhe ele de maneira assíncrona – lista ou fórum – com outros que estão com a cabeça fresca e não viciada no problema.

Listas e foruns

Listas e fóruns são úteis para buscar e discutir abordagens.

As metodologias ágeis deixam claro que tentar lançar o produto perfeito já na sua primeira versão é algo extremamente difícil e penoso. O mesmo é aceito amplamente para o design da aplicação, mas ainda temos dificuldade de aceitá-lo para qualquer pedaço de código, o baby step.

O produto perfeito

Duke Nuke Forever: em busca da qualidade técnica máxima

Praticar dojos também ajuda a não ficar impedido nesses instantes e evitar o desperdício uma vez que a prática de baby steps é reforçada o tempo todo.

Podemos buscar a perfeição técnica e de produto, mas não devemos começar com ela: alcança-la é um processo.

Anúncios