Blog da Improve It 
Publicado por Vinicius Manhães Teles há
aproximadamente 1 ano.
Há muito tempo as pessoas nos procuram em busca de treinamentos sobre Extreme Programming, Ruby on Rails e outros tópicos relacionados a Desenvolvimento Ágil de Software. Entretanto, nossos cursos são voltados apenas para empresas. Mas, isso está prestes a mudar.
Estamos trabalhando intensamente para produzir nosso primeiro treinamento aberto ao público. Por tudo o que já conversamos até o momento, posso garantir uma coisa: vai ser muito, muito, muito bom! Tem coisas aqui que você jamais imaginaria ver em um treinamento. :-)
Essa é a primeira boa notícia. A segunda é que você pode ficar sabendo dos detalhes mais cedo e ainda concorrer a descontos especiais. Para isso, basta inscrever seu email nesse formulário. É só isso: digita um email, apertar Enter e você fica um passo a frente.
Mais notícias sobre o treinamento, em breve. Mas, primeiro para quem estiver cadastrado. Tá esperando o quê? Cadastre-se.
Tags rails, treinamento, workshop, xp | 2 comentários
Publicado por Vinicius Manhães Teles há
aproximadamente 1 ano.
Felipe Barreto, nosso especialista de plantão em Rails, JavaScript, Web Standards e mais um monte de coisas, me informou ontem que identificou um problema na classe Dinheiro, do Brazilian Rails, relacionado ao tratamento de BigDecimals. O teste que revelava o problema era:
def testa_soma_de_dinheiro_com_big_decimal
assert_equal Dinheiro.new(200), BigDecimal.new("100").reais + "100".reais
end
A soma estava dando 0 e não 200, como deveria. Ooopppsss, isso é sério. Mas, já fiz a correção. Portanto, se estiver usando o plugin, faça a atualização.
Tags brazilianrails, rails | nenhum comentário
Publicado por Vinicius Manhães Teles há
aproximadamente 1 ano.
Celestino Gomes, ou melhor, Tino, avisa que tem também mais essas novidades no Brazilian Rails:
Retornar numeros por extenso. (Código de Shairon Toledo). Exemplos:
1.to_extenso ==> 'um'
1.to_extenso_real => 'um real'
Normalizar nomes próprios. Exemplo:
'maria da silva e souza dos santos'. nome_proprio => 'Maria da Silva e Souza dos Santos'
Remover acentos. Exemplo:
'texto está com acentuação'.remover_acentos => 'texto esta com acentuacao'
Tags brazilianrails, rails | 2 comentários
Publicado por Vinicius Manhães Teles há
aproximadamente 1 ano.
Nos últimos dias comecei a me envolver também no Brazilian Rails e notei que a organização do repositório poderia ser aprimorada para facilitar a instalação. O Tapajós já resolveu essa questão e agora é possível instalar corretamente com o comando:
script/plugin install -x \
svn://rubyforge.org/var/svn/brazilian-rails
Se não quiser que ele fique instalado com externals apontando para o repositório, basta retirar o parâmetro -x.
Mais uma coisinha. O Felipe Santiago entrou em contato dizendo que estava difícil persistir a classe Dinheiro, caso ela fosse usada como atributo de uma classe de modelo do projeto. Ele estava coberto de razão. Muito obrigado, Felipe.
Para facilitar as coisas, adicionamos o método valor_decimal na classe Dinheiro e colocamos alguns exemplos no diretório samples/dinheiro. Em resumo, para usar a classe Dinheiro em uma classe de modelo, basta adicionar:
composed_of :valor,
:class_name => Dinheiro,
:mapping => [[:valor, :valor_decimal]];
Tags brazilianrails, rails | 1 comentário
Publicado por Vinicius Manhães Teles há
aproximadamente 1 ano.
Acaba de ser publicado o Improvecast 18 que traz o surpreendente relato de um cliente dos serviços de mentoring da Improve It, a Paggo, que desenvolveu um sistema de cartão de crédito usando Extreme Programming do início ao fim. Entrevistei Mauricio Hermogenes, Diretor de Tecnologia da Paggo. Ele descreveu o Oi Paggo, um sofisticado sistema de "cartão" de crédito utilizando celulares desenvolvido em parceria com a operadora de telefonia Oi.

O Oi Paggo foi desenvolvido sobre a plataforma Java e XP foi usado como metodologia de desenvolvimento, o que, segundo a Paggo, permitiu que o sistema fosse implementado em tempo recorde. O Oi Paggo já está em uso em diversas cidades brasileiras e sua receptividade está superando as próprias expectativas da Paggo, como o Mauricio explica no podcast.

Fonte: http://www.oipaggo.com.br
O Oi Paggo talvez seja hoje um dos produtos mais amplamente utilizados desenvolvidos em XP no Brasil. Trata-se de um projeto inédito, tanto em termos do negócio (cartão de crédito via celular), quanto em termos da metodologia de desenvolvimento. Portanto, esse podcast, além de ser muito instrutivo, é também um ótimo case para demonstrar o potencial do Extreme Programming no mercado brasileiro.
Esses foram os assuntos tratados no Improvecast 18:
- Quem é a Paggo e o que ela faz?
- O que é uma solução de private label?
- O que é o Oi Paggo?
- Como funciona o Oi Paggo?
- Quais as vantagens do Oi Paggo para os compradores?
- Qual o custo do Oi Paggo para os compradores?
- O que um comprador deve fazer para habilitar seu Oi Paggo?
- Quais as vantagens do Oi Paggo para os lojistas?
- Qual o custo do Oi Paggo para os lojistas?
- O que um lojista deve fazer para habilitar seu Oi Paggo?
- Quando a Paggo foi fundada e qual era seu objetivo?
- Quando e como teve início o projeto do Oi Paggo?
- Quando o Oi Paggo foi lançado como piloto?
- Quando o Oi Paggo foi lançado em nível nacional?
- Como está sendo a receptividade do mercado?
- A Paggo utilizou Extreme Programming desde que começou a desenvolver sua plataforma de cartão de crédito, em 2004. O que motivou a opção pelo XP?
- Como se deu a implantação do XP no início?
- Que práticas foram utilizadas no início?
- Quais foram mais fáceis de adotar?
- Quais foram os principais benefícios observados neste primeiro momento?
- Quais as principais dificuldades?
- Em 2005 a Paggo deu início ao desenvolvimento do Oi Paggo e a Improve It foi chamada para ajudar a dar continuidade na implantação do XP, através de seu serviço de mentoring. Que novidades foram sugeridas e implantadas nesse momento?
- Como foi conduzido o trabalho de mentoring?
- Na opinião de vocês, qual a importância desse tipo de trabalho?
- Quais foram os principais benefícios observados?
- Que práticas foram mais fáceis de utilizar?
- Quais foram mais difíceis?
- Você poderia falar um pouco sobre a arquitetura tecnológica da Paggo?
- Quantas pessoas havia na equipe de desenvolvimento no início do projeto Oi Paggo?
- Quantas pessoas fazem parte dessa equipe atualmente?
- Como vocês lidaram com o desafio de contratar pessoas capacitadas nessas tecnologias?
- Como vocês conduziram o treinamento dos novos contratados?
- Qual foi a importância da programação em par nessa questão?
- Em 2005, enquanto eu estava fazendo mentoring com a Paggo, utilizavam-se iterações semanais para o desenvolvimento do Oi Paggo. Quem atuava como cliente nas reuniões de planejamento?
- Como eram usados os cartões nessas reuniões?
- Como os cartões eram estimados?
- Como eles eram acompanhados ao longo da iteração?
- Uma coisa interessante que aconteceu na Paggo é que os cartões saíram da área de desenvolvimento e foram adotados por outros departamentos. Você poderia falar um pouco mais sobre como os cartões passaram a ser usados em toda a empresa?
- Na sua opinião, o que motivou tamanha aceitação e uso dos cartões?
- No momento, qual o tamanho da iteração de vocês? Continua sendo semanal?
- Em 2005, fazíamos retrospectivas ao final de cada iteração. Na opinião de vocês, que benefícios elas geravam?
- As retrospectivas continuam sendo usadas atualmente?
- Um dos desafios em se trabalhar com uma equipe grande é a reunião diária, o stand up meeting. Ela pode acabar se alongando demais caso a equipe seja grande. Como vocês têm lidado com essa questão?
- Enquanto estive com vocês, um aspecto que trabalhamos muito foi a questão de automação de testes, utilizando fortemente mock objects e outros conceitos. Quais foram as principais inovações nessa área, comparando-se com a forma pela qual vocês começaram a adotar o XP em 2004?
- Como a automação de testes vem sendo tratada atualmente?
- Na opinião de vocês, qual a importância da automação dos testes e de práticas como desenvolvimento orientado a testes para a qualidade do produto final?
- Vocês têm conseguido manter o design organizado através de sucessivas refatorações do código?
- Qual tem sido a importância dos testes automatizados para viabilizar as refatorações?
- Outro ponto que trabalhamos muito foi a questão da automação de builds e integração contínua. Quais foram as principais mudanças realizadas nessa área?
- Como ela vem sendo tratada atualmente?
- Como vocês têm lidado com o desafio de colocar mudanças no ar rapidamente, em um sistema que já está em plena utilização?
- A Oi, como quase todas as grandes empresas brasileiras, baseia seu processo de desenvolvimento em métodos tradicionais de gestão de projetos, tais como aqueles disseminados pelo PMBOK. Como vocês vêm lidando com essa diferença cultural entre o modelo de desenvolvimento da Paggo, baseado no XP e o modelo de gestão da Oi, baseado no PMBOK?
- O XP contribuiu de alguma forma para o bom relacionamento entre a Paggo e a Oi?
- Na opinião de vocês, qual tem sido a importância da utilização do XP no que se refere à motivação da equipe de desenvolvimento e habilidade da Paggo em reter seus profissionais?
- Que tipo de adaptações vocês tiveram que fazer no XP para que se adequasse às particularidades da Paggo?
- Quais são os principais desafios que vocês estão vivenciando no momento, tanto no nível do negócio, quanto no técnico?
- Como está sendo a receptividade do Oi Paggo no mercado e o que a Paggo está preparando para o futuro próximo?
Tags agile, java, podcast, teste, xp
Publicado por Vinicius Manhães Teles há
aproximadamente 1 ano.
No final de junho comecei a gravar alguns podcasts e gostei da experiência. Gostei tanto que passei a gravá-los freneticamente, em um ritmo mais acentuado do que deveria. O bom disso é que pude conversar com inúmeras pessoas, em todo o Brasil e aprender com suas experiências. O ruim é que os podcasts se acumularam e acabei extrapolando os limites.
Editar um podcast e publicá-lo não é tão fácil quanto parece. Cada podcast demanda muitas horas de trabalho e a verdade é que eu não tenho tanto tempo livre assim. Então, não tive escolha a não ser recorrer às madrugadas. Afinal, para que dormir? :-) Funcionou "bem" durante um tempo e me ajudou a diminuir o acúmulo. Mas, o preço foi alto.
No final de agosto tirei alguns dias de férias, conforme estava programado há alguns meses. Nos primeiros dias foi tudo bem, mas logo depois peguei uma gripe infernal. Era o corpo cobrando a conta de tantos dias mal dormidos. Fazia anos que eu não gripava. Para piorar, coisas ruins nunca vêm sozinhas. Sempre andam em bando. :-) Então, quando retornei ao Rio, fui apresentado a alguns problemas bastante sérios que demandaram muito de mim e só ajudaram a piorar a gripe.
Em resumo, as primeiras semanas desse mês foram, digamos assim, conturbadas. O problema é que ainda havia três podcasts, já gravados, para serem publicados. E todos ficaram ainda mais atrasados porque não consegui cuidar deles.
Finalmente as coisas estão se normalizando e hoje coloquei no ar um dos podcasts mais interessantes que já gravei. Ele fala sobre a Paggo, uma empresa que desenvolveu um sistema de "cartão" de crédito inteiramente baseado em celular: o Oi Paggo. Esse sistema foi todo implementado usando Extreme Programming desde o início. Portanto, é um case extremamente interessante. O podcast já está no ar e no próximo post irei descrevê-lo em detalhes.
Ainda há mais dois podcasts para serem publicados antes que eu comece a gravar os novos. Só queria que vocês soubessem porque estava demorando tanto para publicar novos episódios.
Tags podcast, xp | nenhum comentário
Publicado por Vinicius Manhães Teles há
aproximadamente 1 ano.
Software é conhecimento inserido no meio digital. Sendo assim, é fluído. Edifícios, por outro lado, são estruturas estáticas em um mundo físico. Apesar disso, muitos comparam fazer software a construir prédios. Esse é um erro grave.
Ao final da construção de um edifício, seria possível pedir aos construtores que movessem o prédio um metro para a esquerda? Normalmente não. Por outro lado, seria possível "mover um aplicativo um metro para a esquerda"? Tipicamente sim. Não é possível comprar um livro na Amazon e esperar que chegue até você dois minutos depois. Mas, é possível fazer o download de um livro em PDF, de qualquer lugar do planeta, em poucos instantes.
Continue lendo o artigo completo.
nenhum comentário
Publicado por Vinicius Manhães Teles há
aproximadamente 1 ano.
Vocês sabem que eu sou macmaníaco há algum tempo. Então, pelo título, esse artigo deve ser sobre os belíssimos e funcionais Macs da Apple. Certo? Bem que poderia, mas dessa vez estou falando do MAC, o Museu de Arte Contemporânea de Niterói, RJ. Hoje à tarde ele se transformou em nosso local de trabalho.
Há algum tempo as pessoas nos perguntam se oferecemos cursos para o público. A resposta é não. Nossos cursos são só para empresas. Mas, queremos mudar esse quadro. Cada vez mais gente tem interesse por desenvolvimento ágil, Ruby on Rails e outros assuntos sobre os quais temos domínio, gostamos e ensinamos em empresas e universidade. Então, achamos que está mais do que na hora de tornar os cursos acessíveis a todos.
Hoje começamos a traçar os primeiros planos. Portanto, foi dia de brainstormig. Cá entre nós, escritórios não combinam com brainstorming. Pelo menos a maioria deles. São limitados demais para possibilitar que a gente pense "fora da caixa". É aí que entra o MAC.
Na hora de fazer brainstorming, nada melhor que ir para a rua. Hoje, a maior parte da equipe estava trabalhando nos clientes e só eu e o Leandro estávamos disponíveis para começar esse trabalho. Então, partimos para o MAC, onde passamos a tarde rodeados de obras de arte nem um pouco convencionais, uma paisagem deslumbrante e, em certo momento, um grupo barulhento de crianças que estavam visitando o museu. A certa altura, concluímos que se conseguíssemos fazer o planejamento em meio àquela criançada, provavelmente seríamos capazes de fazer qualquer coisa nessa vida. :-)
O legal de fazer essas coisas com o Leandro é que ele consegue ser ainda mais "maluco" do que eu. A propósito, para quem não sabe, Leandro, ou melhor, Leandro Mello, é nosso designer, ilustrador, redator, revisor, gestor de idéias pouco convencionais, enfim, o cara que faz tudo ficar bonito e mais divertido. Basta ver as inúmeras ilustrações espalhadas pelo site. Quase todas produzidas por ele.
Hoje foi a parte fácil: gerar idéias. O bom dessa parte é que não há orçamento. Enquanto as coisas estão no mundo das idéias, tudo é possível e financeiramente viável. Amanhã é que entramos na parte complicada: colocar as idéias em prática. A única coisa chata de hoje é que não deu para contar com a participação de toda a equipe. :-(
Se tudo der certo, espero anunciar em breve os primeiros cursos abertos ao público. Até lá!
Abaixo algumas fotos da tarde de hoje e fotos do MAC tiradas por fotógrafos bem mais competentes que nós. :-)

Cartões com as idéias.

Leandro registrando uma de suas idéias.

Leandro claramente posando para a foto. :-)

Vinícius claramente posando para a foto. :-)

Um Mac no MAC. :p

Leandro analisando as idéias.

Leandro, no momento exato em que chegou a inspiração. Até parece... :-)
Conheça o MAC:

By Cristiane Souza.

By Eduardo Pelosi.

By Eduardo Pelosi.

By Lilli Vieira de Carvalho.

By Lilli Vieira de Carvalho.

By Lilli Vieira de Carvalho.
Tags fotos, treinamento | 2 comentários
Publicado por Vinicius Manhães Teles há
aproximadamente 1 ano.
No dia 27 de outubro ocorrerá o Segundo Seminário Ruby on Rails, em São Paulo. Mais uma vez, o evento será promovido pela Tempo Real Eventos e contará com ótimas apresentações de pessoas que estão usando o Ruby on Rails para valer.

Na parte da manhã teremos o TaQ e o Ronie falando sobre o que aconteceu no mundo Ruby e Rails do ano passado para cá. Depois um tutorial no melhor estilo "show me the code", promovido pelo pessoal da Dextra. A manhã encerra com a apresentação de posters. Aliás, essa é uma idéia bacana.
Nesse ano os organizadores querem mostrar ao público o máximo de cases, para que as pessoas saibam o que vem sendo feito com o Rails no Brasil. Se você quiser apresentar o seu case, veja o que fazer.
A parte da tarde começa com a apresentação do Projeto Lucidus, que será feita por mim e outras pessoas da equipe. Haverá também apresentação de outros posters, o Carlos Eduardo, falará sobre o case da e-Genial e o Ronaldo Ferraz vai falar da Bitbucket.
Acredito que esse será um ótimo evento, ainda melhor que o do ano passado. Nós da Improve It iremos comparecer em massa e estamos ansiosos para participar e conhecer algumas pessoas com as quais convivemos no mundo virtual, mas nunca tivemos a chance de conhecer pessoalmente, como o Carlos Eduardo, o Ronaldo Ferraz, entre outros.
Tags rails, ruby | nenhum comentário
Publicado por Vinicius Manhães Teles há
aproximadamente 1 ano.
Estamos buscando mais uma pessoa para trabalhar no Projeto Lucidus. Se você tiver interesse em fazer parte da equipe do projeto, por favor, entre em contato.
Para conhecer mais sobre o projeto:
nenhum comentário