30 abril 2011

Gestão Pública e Agile: Quem deve mudar?



Tenho andado cada vez mais sem paciência com burocracias, regras sem sentido e culturas organizacionais enferrujadas. Mas sei que volta e meia perco um pouco da razão e pareço arrogante e radical com algumas ironias e sarcasmos. Por isso vou tentar me controlar um pouco nesse comentário.

O que me fez levantar da cama pra escrever nesse sábado foi o texto tuitado pelo @julioprotzek sobre a opinião de um advogado americano a respeito de porque Agile não funciona no setor público.

Já discuti muito esse assunto. É sempre um ponto levantado quando se fala sobre ágil em órgãos púbicos - coisa que fiz um bocado nos dois últimos anos.

Em poucas palavras o argumento é que como processos ágeis não são preditivos - não se comprometem desde o início com o resultado exato que o projeto vai ter no final - eles não se encaixam na estrutura de decisão que as entidades governamentais usam para contratar.

O governo precisa saber exatamente quanto vai custar, quando vai ficar pronto, e o que vai receber, nos mínimos detalhes. Isso por dois motivos: primeiro porque ele precisa comparar os fornecedores candidatos de forma imparcial e transparente, e segundo porque, se alguma coisa der errado, ele precisa ter alguém para responsabilizar.

(Interessante ver que os problemas são os mesmos aqui e lá)



A princípio, o argumento parece fazer sentido, mas acho que possui uma incoerência muito profunda.


As mudanças que a tecnologia da informação vem impondo ao mundo têm nos ensinado muito a respeito das velhas formas que usamos para 'administrá-lo'. O conflito entre pirataria e direitos autorais, entre o conceito trabalhista protestante e a ética hacker, entre a 'liberdade' de imprensa e as mídias sociais e as próprias relações econômicas, comerciais e legais num mundo onde as fronteiras geográficas importam (bem!) menos que as virtuais.

Enfim, o mundo está reaprendendo a viver, agora que a tecnologia expões teias de aranha bem densas na formas como estávamos acostumados a organizar a sociedade.

O processo de criação e engenharia não fica de fora dessa. Métodos iterativos de trabalho, baseados em feedback e confiança, equipes auto-organizadas e processos decisórios participativos são alguns exemplos de mudanças que Agile vem nos apresentando.

Continuar usando técnicas industriais para desenvolver software não vai funcionar! Chega de bater cabeça!

Então quando se diz que Agile não se encaixa nos processos de gestão que órgão públicos utilizam, pergunto: quem deve mudar?

Só pra não perder a oportunidade de ser um pouco sarcástico, deixo esse vídeo muito muito pertinente, em que tropecei agora a pouco quando estava na frente do computador quase quase desistindo de escrever esse texto. Enjoy!



Tuite esse texto.

19 março 2011

Mensagens de commit

Pra muita gente, pensar em mensagens de commit é uma coisa chata. Quando estamos descobrindo uma solução no código, o ato de parar um momento pra "commitar" e ainda ter que pensar numa forma rápida e clara pra descrever o último passo pode parecer quebrar a linha de raciocínio. O mais comum é que a ansiedade em voltar pro código faça o programador deixar essas mensagens em branco ou escrever qualquer baboseira.

Não faça isso!

Quem sofre é a pessoa que precisa depois achar o ponto certo pra reverter uma mudança, pra 'mergear' dois branches, ou pra recuperar uma peça de código que se jogou fora, mas então se percebeu que era útil.

Além disso, faço uma relação direta entre essas paradinhas e a organização pessoal das tarefas. Uma paradinha pra consolidar e deixar clara a finalização de um baby-step na evolução do código é muito muito muito útil. Sobre essa relação entre as mensagens de commit e o processo de organização (GTD, TDD, Pomodoro) prefiro recomendar que assistam à apresentação da cozinha ;-)

Minha dica:

Antes de mais nada, acostume-se com a necessidade de dar paradinhas frequentes e refletir sobre o que foi feito. Se você ainda não faz isso é porque ainda tem muito o que melhorar em suas habilidades técnicas como programador.



A hora de "commitar" é a mesma hora de atualizar seus micro-planos (em cartões, folhas de papel, aquivos txt, mind-maps, whatever), progressos, estimativas, etc.

Além disso, quando for pensar na mensagem de commit, uma boa recomendação é adotar o estado de espírito de quem está tuitando algo, mandando um email "dipé", comunicando o status da tarefa, ou batendo um chat com uma pessoa que está não em outro lugar, mas em outro tempo. Imagine que vc está mandando um SMS para o cara que está revisando o histórico do controle de versão, procurando o ponto exato onde se fez uma determinada mudança.


Como vários outros aspectos da programação, isso é apenas uma questão de disciplina e auto-aperfeiçoamento, que obviamente depende da boa vontade e da intenção em fazer um trabalho bem feito.

Da próxima vez que for comitar código, pense nisso.

o/

24 janeiro 2011

Arrumando a cozinha - Parte 3/3

De pouquinho em pouquinho, consegui enfim terminar de gravar a terceira e última parte da apresentação.

Essa é a parte que, tardiamente, costura as técnicas apresentadas no 1o episódio com a viagem do 2o.

Ficou com menos de 10min, caso isso ajude a te convencer ;-)



Arrumando a cozinha - Parte 3

Aqui está a primeira e a segunda parte, pra quem ainda não viu.

Já que estou chegando ao fim, cabe uma micro-retrospectiva pessoal sobre a apresentação:
- Acho que a analogia que apresentei deve estar cheia de problemas, mas acho que ela, no mínimo, esbarra de leve em algumas coisas bem fundamentais do movimento Ágil.
- Não gostei nada da apresentação que fiz pessoalmente na AgilBrazil2010 (que foi o que motivou essa gravação). Aprendi (mais uma vez) que a qualidade da apresentação, do discurso, das palavras, da postura, etc. são tão (ou mais) importantes quanto o conteúdo. Preparação prévia é fundamental para fazer uma boa apresentação!
- O 1o episódio ficou grande demais e talvez um pouco lento. Acho que aprendi a enxugar um pouco o conteúdo depois dele. Talvez eu o regrave algum dia...
- Acho que a parte 2, embora seja a que mais me interessa, ficou meio mal colocada no meio... Talvez a apresentação toda tivesse ficado mais digerível se essa parte tivesse ficado mais 'leve'...
- Alguns errinhos pequenos sobraram nas narrativas, nas passagens de slides, na codificação de video, e em outros pequenos aspectos. Mas nada que comprometa, acho eu... De qq forma, acho melhor entregar assim que ficar lapidando pro resto da vida... ;-)
- Me desculpem os que não gostaram da música (e até pediram pra tirar). Foi uma preferência pessoal que decidi manter.

De um modo ou de outro, posso dizer que o processo todo foi uma experiência muito legal. Desde a idéia inicial, passando pela estruturação das idéias até a gravação deste último episódio. Fui muito legal (mesmo que vcs não tenham gostado, hehehe).

Bom, cabe dizer por fim que se vc tiver gostado da apresentação, um comentário, crítica ou sugestão são sempre uma ótima forma de retribuir ;-)

01 dezembro 2010

O sorteio do iPod !!!

Gostaria então de agradecer penhoradamente às 10 pessoas que se voluntariaram para experimentar o plugin Besouro e contribuir com o meu trabalho de mestrado, conforme o anúncio que publiquei a 2 semanas!

0 Eduardo Santos Marques
1 Fabricio Nogueira Buzeto
2 Ian Gallina
3 Bruno Rolim
4 Mariana Vivian Bravo
5 Daniel Cukier
6 Laécio Freitas Chaves
7 Adolfo Gustavo Serra Seca Neto
* Hugo Corbucci
8 Saulo Arruda

Vale lembrar que ainda estou aceitando doações de Katas, mesmo sem o sorteio do iPod! Se quiserem colaborar, ou souberem de alguém que ainda pode fazer isso, estou às ordens... E feliz!  :-)

Estou tentando terminar um artigo para submeter à XP2011 até segunda feira, sobre esse experimento. Não vou conseguir analisar os dados de vcs até lá, mas fica o aviso aí... De qq forma, qndo tiver terminado a análise vou submeter os resultados do experimento em outras confs/journals e qndo minha dissertação for terminada aviso aqui tb...

Agora vamos ao que interessa ;-)

Conforme prometido, faremos agora o sorteio do iPod.

Vai funcionar assim:
   - Numerei os participantes aí em cima de 0 a 8 (o Hugo abriu mão do ipod, por isso ficou sem número), conforme a data de preenchimento do formulário, ao final do experimento.
   - No dia 04/dez, sábado próximo, vou pegar o número do bilhete ganhador do 1o prêmio no concurso 4507 da loteria federal.
   - Será o vencedor aquele cujo número corresponder a (número_sorteado MOD 9) :-D

É isso! A sorte está lançada! Que vença o mais sortudo :-P
Mais uma vez obrigado!

o/

17 novembro 2010

Doe um Kata e ganhe um iPod!

Savle!

Estou tentando terminar meu projeto de mestrado, e preciso da sua ajuda, caso vc saiba programar com TDD.



A idéia do trabalho é simples. Implementei um plugin para o Eclipse, o qual chamei de Besouro. Ele é 100% open-source e bastante útil para os pesquisadores que estudam TDD em todo o mundo. Portanto, considere que vc não está ajudando só a mim ;-)

O Besouro tenta aprimorar o sistema de regras do Zorro para avaliar automaticamente se o programador está ou não utilizando TDD. Ele observa as atividades realizadas no Eclipse e reconhece episódios que servirão para derivar uma medida quantitativa (uma porcentagem) que indica QUANTO TDD o cara usou.

Para isso, preciso que as pessoas utilizem o plugin, observem a classificação apresentada e registrem suas discordâncias com o sistema. As instruções detalhadas do experimento encontram-se AQUI.


Para motivar um pouco mais a participação (pouca gente contribuiu até agora), estou sorteando um iPod shuffle novinho em folha entre aqueles que me mandarem o kata até o dia 30 de novembro de 2010.

O limite máximo de participantes é de 20 pessoas, sendo que as pessoas que já me doaram o Kata antes desse anúncio estão automaticamente inscritas. Então, na prática, só temos mais 11 vagas!

Pense bem: a resolução do kata, contando com o tempo de leitura das instruções e instalação do plugin (que é bem fácil) não dura mais que 30min e suas chances serão de, no mínimo, 1 em 20...  Se é que vão aparecer 20 pessoas :-(

Mesmo que vc já tenha um iPod, vc pode dar ele de presente pra alguém de presente ;-)

E...  pense bem...  O importante é dar uma força para o trabalho, dar uma olhada no plugin e programar um pouco ;-)

Obviamente, todos aqueles que participarem terão meu agradecimento público nesse blog e nos agradecimentos da minha dissertação. :-)

Vamos lá o/

ps: vou organizar o sorteio publicamente depois, provavelmente baseado na loteria federal ou algo assim...

13 setembro 2010

Arrumando a cozinha - Parte 2

Aqui vai a segunda parte da apresentação.

Essa é a parte 'filosófica' do conteúdo. Acho que ela ficou meio confusa quando apresentei na AgileBrazil, então mudei um pouquinho, pra passar mais superficialmente na metafísica da qualidade. Resolvi fazer outra apresentação depois, específica sobre MoQ.

Tomei cuidado também pro video ficar mais curto e dinâmico um pouco. Espero que não tenha ficado rápido demais.

( Feedback é uma ótima foma de retribuir, caso gostem ;-] )

Arrumando a cozinha - Parte 2 from Bruno Pedroso on Vimeo.

27 julho 2010

Arrumando a cozinha - Parte 1

Resolvi enfim gravar a primeira parte da palestra que eu fiz na AgileBrazil.



Alguns links que comento durante o vídeo:
  • o livro do DavidAllen sobre GTD (em pt): link1, link2
Espero que vcs gostem.
Por favor, dêem feedback, pros próximos episódios sairem melhores um pouco ;-)

\o