Dekode, uma iniciativa diferente!

Alguns de vocês acompanharam pelo Twitter o lançamento do site da Dekode. Agora que a correria deu uma trégua, é hora de compartilhar as novidades.

No final do ano passado eu lancei o curso Welcome to the Django com o objetivo de compartilhar minha experiência e fascínio pelo ecossistema Django e Python.
Continue Reading…

Contagem regressiva para a PythonBrasil[7]

Começou a contagem regressiva para a sétima edição da PythonBrasil! O encontro anual da comunidade brasileira de Python acontecerá na Amcham Business Center em São Paulo, de 29 de setembro à 1º de outubro, e contará com a presença de Pythonistas dos quatro cantos do país!
Continue Reading…

Ecossistema do Desenvolvimento Ágil

Muito se fala sobre os métodos ágeis com foco em gestão: Iterações, cliente presente, sprint planning, etc. Mas e durante o sprint? Como produzir com agilidade?

Apresentei esta palestra no Dev in Sampa 2010 falando um pouco sobre técnicas como: controle de versão, integração contínua, one click deploy, programação em par, entre outras. A idéia foi relacionar estas práticas com o processo iterativo e incremental, chamando a atenção para a engenharia ágil, fundamental para um ciclo de desenvolvimento sustentável de software. Continue Reading…

Depurando código Python com segurança usando Nose e iPdb

Vez ou outra, um teste falha ou dá erro de forma misteriosa. Nestes momentos, o traceback parece inútil e por mais que o programador olhe o código, não consegue enxergar o problema.

Para momentos como este, usar um debugger facilita a identificação do problema ao mesmo tempo em que ajuda a manter o desenvolvedor são. Assim, o programador troca especulações e mudanças aleatórias no código, pela busca de evidências observando o programa sendo executado passo à passo.
Continue Reading…

Não existe código grátis!

No último #Horaextra, nosso amigo Everton Carpes comentou sobre seu excelente post “1 sprint a frente é mini waterfall”. Em seu artigo ele critica a estratégia de manter o time de design sempre um sprint a frente da equipe de desenvolvimento.

Concordo plenamente com a visão do Everton, e pensando sobre o que motiva esse tipo de estratégia, me deparei com o problema do timebox furado. Continue Reading…

Reflexões sobre o Programador Lento

Estava lendo o excelente post do meu amigo Rafael Lima sobre Programadores Lentos, onde o Lucas Arruda comentou:

Só um comentário: na verdade, todo software sempre terá bugs. Sendo ele desenvolvido lentamente, testado, etc. Isso é um conceito que deve estar bem claro no desenvolvimento de software.
A vantagem de se desenvolver “lentamente” é reduzi-los em grande número.

O Lucas tem razão, mas seu comentário reavivou uma antiga questão dos #Horaextras: há muito mais em programação do que a codificação. Continue Reading…

Desmistificando o conceito de Django Apps

O conceito de Django Application é uma das principais sacadas do Django, e um dos grandes responsáveis por sua flexibilidade e alto reaproveitamento de componentes.

A documentação do Django explica brevemente a idéia:

“Uma app é uma aplicação web que faz alguma coisa — i.e., um weblog ou uma simples enquete.”

Esta definição, é geral o suficiente para abranger toda a flexibilidade do conceito, mas na prática dificulta bastante o seu entendimento. Continue Reading…