Posts Tagged ‘Martin Fowler’
Evento: Agile Brazil 2010
Semana passada estive no Brazil Agile 2010, um grandioso evento organizado e focado na comunidade ágil brasileira.
O evento foi dia 24 e 25 e contaram, além de renomes nacionais, com visitas internacionais como Martin Fowler, Philippe Kruchten e outros.
Os dois dias foram regados a várias palestras em várias áreas:
- Interesse geral,
- Engenharia,
- Relatos,
- Gestão,
- Entre outros.
Eu assisti praticamente tudo de Engenharia, apenas uma que foi interesse geral.
O custo/benefício do evento foi grande, como disse Oenning em seu blog: “…muito bem organizado para um evento tão barato e sem fins lucrativos.”
Não vou abordar aqui as palestras e workshops, dê uma olhada na hashtag #agilebrazil (twitter) e no site oficial. Acredito que os palestrantes estarão postando suas apresentações em seus blogs assim como o Giovani Bassi.
Para finalizar gostaria de deixar aqui uma metáfora muito interessante que foi apresentado pelo Klaus sobre um papel fundamental no desenvolvimento de software: The Code Cleaner.
Vamos comparar o desenvolvimento de software com a preparação de um prato de alimento. Cada entrega de parte do software será o prato pronto.
Você acabou de comprar um apartamento, tudo limpo e pronto para utilização. Esta é a aquisição de um projeto.
Agora você vai precisar fazer o primeiro prato de comida. A forma mais rápida é usar todos os ingredientes e utensílios para fazer o prato e deixar a louça suja na pia.
Certo, um já foi, vamos para o próximo. Você faz o segundo da mesma forma, e consegue sair rapidinho.
No terceiro você não tem mais pratos, tem que cozinhar e comer nas panelas mesmo. A produtividade começa alta e vai caindo, caindo… Talvez nem tenha um fim pra chegar.
Quando acaba a louça limpa só no delivery… E lá vem pizza, china in box… E como tem que ser rápido, então come e larga o lixo na sala mesmo.
Depois de poucos meses vivendo assim, eu acho que um mês já é mais que suficiente, começam a morar com você famílias de ratos e baratas. O ambiente vai ficando cada vez mais imundo, mais imundo e mais imundo.
Imagina isso depois de 1 ano, qual seria a solução? Ah meu amigo! Só implodindo o apartamento e criando outro.
Muitas vezes é isso mesmo que temos que fazer: reconstruir o apartamento. Não é difícil encontrar a expressão “ah! aqueles códigos não davam para entender, só apagando e fazendo de novo”… E quando já é algo funcionando tem a frase “em time que está ganhando não se meche” e enquanto isso nem os ratos mais se acham lá dentro.
O “limpador de código” (code cleaner) faz justamente o papel de lavar a louça, ou seja, limpar aqueles códigos impuros e fazer a refatoração, abençoada refatoração. O Klaus enfatizou que se uma pessoa conseguir dar 0,8% de produtividade a equipe por mês limpando os códigos, ela se paga em um ano.
Com o “limpador” a produtividade vai cair menos e ficar estacionada no alto, pois a louça estará sempre limpa, ou pelo menos a maioria dela.
Se um tempo do dia fosse designado apenas para isto já ajudaria muito na agilidade no desenvolvimento de software, nem precisaria de uma pessoa totalmente dedicada.
Abrs e até quarta-feira no próximo post de design pattern.
“As pessoas dizem que estão fazendo software iterativo, mas na verdade estão usando o processo cascata. Os sintomas são:
a) Estamos fazendo uma iteração de análise seguida de duas iterações de projeto…
b) O código dessa iteração está repleto de erros, mas vamos limpá-lo no final.” Martin Fowler
