você está aqui: Home  → Coluna do Cesar Brod


De acordo com as Leis 12.965/2014 e 13.709/2018, que regulam o uso da Internet e o tratamento de dados pessoais no Brasil, ao me inscrever na newsletter do portal DICAS-L, autorizo o envio de notificações por e-mail ou outros meios e declaro estar ciente e concordar com seus Termos de Uso e Política de Privacidade.

Programação orientada à imprensa

Por Cesar Brod

Data de Publicação: 03 de Setembro de 2008

Já escrevi bastante sobre Scrum, Extreme Programming e outros processos e metodologias em meus artigos. Hoje vou falar de outros métodos bem humorados de programação, que coloco todos na categoria POABB - Programação Orientada à Água Batendo na Bunda.

Se eu me lembro bem, minhas primeiras lições neste método aconteceram quando eu era analista de suporte para aplicações financeiras e os clientes das empresas onde eu trabalhava eram Bancos e Bolsas de Valores. Parar o link entre uma operadora internacional de cartões de crédito e um banco já era, lá pelos meados dos anos 80, algo praticamente impossível de ser feito. A instalação de uma nova versão de software que impactasse, justamente, na comunicação através deste link tinha que ser feita em alguma madrugada de final de semana ou, melhor ainda, de um feriado prolongado, com o gerente do CPD do banco segurando a ampulheta e o chicote. Quem é desta época, lembra bem. Com o tempo, cada vez mais foram surgindo sistemas tolerantes a falhas e ambientes mais controlados de migração de sistema e testes. Já são muitos os bancos que possuem ambientes de informática completamente duplicados, preparados para a troca quase imediata dos serviços entre eles, de maneira que o cliente, na maioria das vezes, nem perceba as mudanças ou manutenções de sistemas.

O trabalho com o sistema financeiro fez com que eu aprendesse a lidar com a pressão de ser obrigado a ter algo funcionando em um período muito delimitado de tempo. Quando eu tinha o cargo de gestor de TI na Univates nossa equipe tinha a missão de substituir um sistema acadêmico que a cada três dias caía, já que a base de dados usada não suportava as transações geradas por um número, na época, perto de 2.000 alunos. Faríamos a virada no mês de julho de 2000, logo após o processamento do vestibular (já feito no novo sistema). Na quinta-feira antes do processo de migração, que duraria três dias, pois eu havia "negociado" a parada do sistema já a partir da madrugada da sexta-feira, reuni-me com o pro-reitor administrativo na época, Prof. Eloni Salvi. Mostrei para ele o que iria funcionar, o que ainda não iria funcionar e quais eram os riscos. Ele respondeu-me: "Tu estás me dizendo que estamos em uma kombi velha, sem freios, descendo um barranco, com um muro lá embaixo. Do outro lado do muro tu estás me entregando um carro novo, que ainda falta colocar estepe, espelhos retrovisores e outras coisas, mas que pelo menos anda. Toca ficha!". O sistema em questão era o Sagu, que ainda vai muito bem (obrigado!) na Univates e outras instituições de ensino brasileiras. Demos o nome de "Processo Mata o Velho" aos três dias de migração do sistema antigo para o novo. Tudo parte do método de POTM - Programação Orientada ao Tempo de Morte (e morte aqui pode ser a do programa antigo, gerente de desenvolvimento, etc).

Uma metodologia sobre a qual não existe literatura formal, mas que é bastante conhecida em ambientes de programação, é a POG - Programação Orientada à Gambiarra (outra das POABB). Não tem jeito. Mesmo que o cliente especifique tudo direitinho e o sistema seja montado de acordo, não é raro que, na hora de colocar tudo em produção "faltou aquela coisinha" que envolveria atrasar a entrega do projeto ou fazer aquela gambiarrazinha que a gente conserta depois. Muitas gambiarras acabam fazendo aniversário e algumas delas são tão boas que acabam gerando idéias que não surgiram durante todo o processo de desenvolvimento. Outras serão devidamente eliminadas em um bom processo de refactoring (que, aliás, deve ser um hábito freqüente).

Tem também a POPG - Programação Orientada ao Prazo do Gringo. Se não me engano, foi lá por 2002 que a Univates comprou uma estação meteorológica que, para funcionar, precisava de um software mais caro do que a mesma. Eu e o Fábio Wiebbeling não nos conformamos com o negócio e descobrimos na Suíça o Professor Andreas Müller, autor do Meteo. O Andreas topou vir para o Brasil sem cobrar por seus serviços, desde que arcássemos também com as despesas de viagem da esposa dele. Tudo isto saiu mais barato que a alternativa. O problema é que o Andreas tinha uma semana aqui no Brasil e, junto com o Vilson Gärtner, decidiu reescrever tudo o que estava escrito em C para C++. Eles me contaram isto em uma quinta-feira. Na sexta seria feita a apresentação do sistema e no sábado o casal Müller retornaria para a Suíça. O Meteo é quem ainda alimenta os dados da estação metorológica da Univates. Na época, o novo release do Meteo foi chamado de "Lajeado", em nossa homenagem!

Mas uma das POABB mais legais é a POI - Programação Orientada à Imprensa. É a que acontece quando um jornalista vai fazer uma matéria sobre o sistema em desenvolvimento. É, talvez, o melhor método para melhorar as interfaces gráficas dos programas. Ainda tem a Programação Orientada à Reunião de Checagem de Entregas, a Orientada à Visita do Chefe, entre tantas outras.

Brincadeiras à parte, o que se aprende com tudo isso é que é importante e, quando bem aplicado, motivador o estabelecimento de prazos firmes de entrega. Pra quem gosta de Scrum, estes prazos são estabelecidos em ciclos de trabalho, os Sprints. Nada impede que o tema de um Sprint que lidará especificamente com a melhoria da interface de usuário seja: "Preparo do sistema para apresentação a jornalistas". Funcionando como motivação, tá ótimo!

Grande abraço pro Bruno, Henrique, Raul, Aline e Ivo, um pessoal cobra em Scrum e POI!

Sobre o autor

Cesar Brod usa Linux desde antes do kernel atingir a versão 1.0. Dissemina o uso (e usa) métodos ágeis antes deles ganharem esse nome. Ainda assim, não está extinto! Escritor, consultor, pai e avô, tem como seu princípio fundamental a liberdade ampla, total e irrestrita, em especial a do conhecimento.

Mais sobre o Cesar Brod: [ Linkedin ] | [ Twitter ] | [ Tumblr ].

Veja a relação completa dos artigos de Cesar Brod