Cariocando

estou aqui no Rio há pouco mais um mês e parece que cheguei aqui ontem, por vários motivos. O primeiro e mais claro é que toda vez que eu escuto alguém falando “mexmo”, “feix” e “doix” dá até agonia, acho que vai ser difícil acostumar com esse sotaque marrento e sinceramente espero não aprende-lo. Outra coisa que sempre acontece quando estou conversando com alguém de Vitória eu ainda escrevo como se eu estivesse lá, sempre esqueço que estou aqui no Rio.

Por outro lado existem algumas coisas que me fazem lembrar imediatamente que estou no Rio, por exemplo a insegurança – estou achando a Barra bem tranquila, mas já vi um assalto – e o trânsito horrível, os motoristas dirigindo feito loucos e por aí vai, felizmente enquanto precisar apenas atravessar uma rua para chegar ao trabalho não irei me preocupar com isso.

Já o trabalho e tudo o mais aqui na globo.com tem sido muito próximo do que o que eu já imaginava, exceto alguns pontos que vão além das minhas expectativas, e isso é bom, muito bom. O ambiente de trabalho é muito descontraído, espaçoso, limpo, claro e repleto de pessoas excepcionais. Com base nas minhas últimas experiências, principalmente o tempo trabalhando em home office, é como se tudo ali fosse pensado e feito para melhorar a interação das equipes e criar um bom ambiente de trabalho. E é claro as experiências com tecnologias diferentes de Java, como por exemplo projetos PHP, iPhone e Rails.

Além disso tudo, trabalhar numa empresa onde todas as equipes são ágeis está sendo uma experiência realmente incrível e muito diferente, estou gostando muito. Todas as práticas de SCRUM e XP são seguidas (não à risca, algumas coisas são adaptadas) e o mais legal é poder praticar TDD sem ser questionado por tempo gasto com testes, com “testes a toa” (sim, já ouvi isso antes) e todas mazelas que costumamos ouvir de gerentes tradicionais, quando na verdade o único questionamento que poderei ouvir é por que não fiz o teste antes.

Bom, por enquanto é isso que posso dizer. Ainda não passeei muito por aqui, mas já conheci alguns lugares clássicos como o Jardim Botânico, o Corcovado num dia de chuva, a Rocinha (só passei em frente) e mais alguns outros lugares.

Planning Poker Cards

O Flavio Steffens, que escreve no blog Mudando uma Pequena Empresa publicou hoje um esquema muito legal para usar-se no Planning Poker, são as tão famosas cartas (cards). Pelo relato em seu blog, são os próprios modelos que o Flavio utiliza na empresa em que trabalha e pelo que eu já vi, são bem úteis e aplicáveis a qualquer outra empresa.

Então, se você também faz rascunhos sofríveis em papel chamex ou se você também tem o péssimo costume de perder ou inutilizar as cartas entre uma sprint e outra e precisa ficar fazendo tudo de novo, aproveite o modelo disponibilizado pelo Flavio e mande fazer os seus cartões de verdade numa gráfica.

SCRUM

SCRUM!? Se você pensou “- Que sigla é essa?” não se preocupe, é normal. Mas se você se lembrou de um acidente feio num jogo de Rugby e que durante a organização para reiniciar o jogo o narrador falou algo parecido com SCRUM (rugby), passou perto, isso é SCRUM mesmo, mas não é desse SCRUM que vou falar hoje.

O SCRUM que estou me referindo é um método simples e rápido para gerir o ciclo de desenvolvimento de software, e sim, teve seu nome baseado no SCRUM do Rugby.

Agilidade, quem não tem lido esta palavra ao menos uma vez por dia? Pois é, esta é a bola da vez, linguagens e ferramentas que facilitam e aceleram o desenvolvimento tem aparecido aos montes, evoluções em várias outras linguagens de programação para acompanhar esta tendência também não param de surgir e isso é bom? Sim, eu diria que é excelente, mas não basta o desenvolvedor ser ágil, será que a equipe como um todo está preparada pra isso, o analista, consultor de negócios e o seu gerente, são ou adotam práticas de gestão tão ágeis quanto você? Talvez essa pergunta renda outros posts por aqui.

O Scrum tem como objetivo principal, definir um processo para projeto e desenvolvimento de software, que seja focado nas pessoas e que seja indicado para ambientes em que os requisitos surgem e mudam rapidamente. O Scrum também é considerado um método específico para o gerenciamento do processo de desenvolvimento de software.

O Scrum baseia-se ainda, em princípios como: equipes pequenas (+- 7 pessoas), requisitos que são pouco estáveis ou desconhecidos, e iterações curtas. Divide o desenvolvimento em intervalos de tempos de no máximo 30 dias, também chamadas de Sprints. Este método não requer ou fornece qualquer técnica ou método específico para a fase de desenvolvimento de software, apenas estabelece conjuntos de regras e práticas gerenciais que devem ser adotadas para o sucesso de um projeto. As práticas gerenciais do Scrum são: Product Backlog, Daily Scrum, Sprint, Sprint Planning Meeting, Sprint Backlog e Sprint Review Meeting.

Numa próxima oportunidade, falarei um pouco a fundo das práticas do Scrum. Por enquanto, quem tiver interesse no assunto, vai começar um curso de Scrum na Caelum e também tem a lista do Scrum-Brasil.