Publicado por Eliézer Pimentel em 23 de Abril de 2009
Uma entrevista com Vinícius Teles da ImproveIT
Se você for um adepto de metodologia ágil, conhece ou pelo menos já ouviu falar em XP (eXtreme Programming), certamente conhece um dos grandes colaboradores da comunidade de desenvolvimento Rails no Brasil. Palestrante, autor do livro EXTREME PROGRAMMING, publicado pela NOVATEC Editora, programador e empresário, Vinícius Manhães Teles, fundador da ImproveIT, lançou recentemente um novo produto para a WEB, o Be On The Net.
A equipe do Ruby Inside Brasil, aproveitando o grande momento que vive Vinícius e a ImproveIT com seu lançamento do produto, conversou com Vinícius Teles sobre negócios, desenvolvimento e testes e generosamente, Vinícius cedeu-nos uma entrevista, onde fala das dificuldades e das vitórias que obteve ao longo do desenvolvimento do Be On The Net. Acompanhem abaixo:
Vinícius Teles: Em 2006 nós tivemos nossos primeiros contatos com Ruby e Rails. Na época, desenvolvíamos sistemas web em Java. Logo ficou claro a enorme diferença, não apenas em termos de produtividade, mas sobretudo em termos de satisfação. Ruby é uma linguagem fabulosa. Foi amor à primeira vista.
VT: A principal dificuldade não foi técnica. O maior desafio sempre foi determinar que funcionalidades deveriam fazer parte do produto e quais deviam ficar de fora. Durante todo o tempo nós partimos da premissa de que quanto menos melhor.Nós queríamos ter poucas funcionalidades, mas garantir que elas sempre fossem extremamente bem feitas, livres de bugs e fáceis de usar. Quando o produto foi ao ar, aí sim, mais do que nunca, caiu a ficha para nós sobre o quanto é importante limitar a quantidade de funcionalidades e simplificar tudo ao máximo. O grande problema é que a cabeça do desenvolvedor normalmente não opera dessa forma. A tendência é sempre fazer overengineering e complicar tudo. Felizmente, os anos de XP nos condicionaram a criticar cada funcionalidade incansavelmente e manter apenas o que fosse absolutamente essencial.
VT: Nós lançamos um piloto um ano antes de lançar o produto propriamente dito. Este piloto consumiu pouco tempo (uns três meses) e resolveu um problema concreto. Foi o site da Patricia Figueira. Naquele momento, embora quiséssemos tornar aquilo um produto mais a frente, nos concentramos simplesmente em fazer o melhor site possível para a Patricia. Portanto, tudo super enxuto. Nenhuma preparação para ser produto. A idéia era fazer aquele site muito rápido, muito bem e torná-lo o número um nos resultados das buscas do Google para fotografia de casamento, que é a área em que ela atua.Felizmente alcançamos esse resultado rapidamente e o site dela se tornou um case e uma referência nacional. Depois, seguindo a idéia do meu amigo, Rafael Lima, colocamos um formulário no site dela para que interessados em ter um site daqueles entrassem em uma lista de espera e aguardassem até que o produto ficasse pronto. Mais de duzentas pessoas se cadastraram.Quando o produto foi lançado, entramos em contato com esse pessoal e logo conseguimos diversos clientes. O site da Patricia continua sendo nosso maior vendedor até hoje. Mas, não é o único. Cada site novo que colocamos no ar também ajuda a vender nosso trabalho. Hoje, pouco mais de três meses após o lançamento, são 60 clientes e o número vai crescendo a cada dia.Agora estamos tentando melhorar nosso próprio posicionamento no Google, o que não é tão fácil, pois a área em que atuamos é extremamente concorrida e muita gente que atua nela sabe fazer um bom SEO, o que não ocorre em outras áreas. Então, é uma disputa mais sofisticada, mas vamos chegar lá. Por fim, recentemente participamos de uma feira de fotografia, onde fizemos uma campanha promocional. A primeira etapa, durante a feira, fluiu bem. Agora vamos avaliar o retorno ao longo dos próximos dias.Finalmente, estamos agora aqui no Ruby Inside! Então, não há dúvidas de que vamos ganhar mais um monte de clientes!![]()
VT: Não há dúvida de que fazer o produto "pegar" no mercado é infinitamente mais difícil que fazer o software.
VT: Nós temos 100% de cobertura. Além disso, usamos o Selenium intensivamente, em absolutamente todas as partes do sistema. Ele é indispensável. Por conta disso, nossa taxa de bugs é praticamente zero. Nós não temos nenhum sistema para controlar bugs, porque quando muito aparece um ou outro a cada tantas semanas. No caso do site da Patricia, nem isso. Nunca recebemos nenhum relato de bug, felizmente. Já no produto, cometemos alguns poucos erros pontuais, mas ainda assim a taxa é surpreendentemente baixa. E nem precisa dizer que este nível de cobertura nos ajuda muito na hora de adicionar novas funcionalidades. Aliás, é muito fácil adicionar novidades ao sistema.
VT: Quase não há o que fazer em termos de manutenção, pois somos muito críticos sobre a adoção de novas funcionalidades. E quanto às antigas, elas quase nunca apresentam falhas.O ponto que realmente consome nosso tempo atualmente é a parte de operação e marketing. Na operação, nós estamos sempre configurando novos sites e mantendo uma comunicação constante com os clientes para deixar tudo como eles desejam. E no marketing, sempre há um mundo de coisas por fazer e experimentar, para tentar fazer o produto se tornar conhecido.
VT: Nós trabalhamos com inúmeras camadas de cache e essa é a parte mais óbvia e ao mesmo tempo mais importante de nossa infraestrutura. Isso envolve sobretudo cache de ação e muito uso do memcached. Felizmente a característica dos sites que operam conosco fazem com que sejam excelentes para cache, pois os acessos são de leitura 99% do tempo. Isso, naturalmente, foi uma das boas consequências de termos simplificado tanto as coisas.Por fim, procuramos assegurar que o sistema pudesse crescer facilmente com a colocação de novas máquinas. Um dos principais desafios neste sentido é o banco de dados. Não queríamos ter as dificuldades tradicionais para escalar bancos de dados relacionais. Então, cortamos o mal pela raiz e optamos pelo CouchDB. Ele não é um banco de dados relacional. É um banco orientado a documentos e é perfeito para as características de nosso aplicativo. Bem mais fácil de usar, para o que nós queríamos, que um banco relacional. E é perfeito em termos de escalabilidade, porque além de ser muito rápido, responde a requisições HTTP e tem um esquema ótimo de replicação. Então na hora de escalar, é só usar a mesma estratégia que é usada com qualquer web server: colocar um load balancer e distribuir os acessos para diferentes máquinas.
Ao Vinícius Teles, de toda a equipe do Ruby Inside Brasil, nosso muito obrigado, e nossos votos de muito sucesso com o Be On The Net e seus novos produtos que certamente virão.

Clique aqui para adicionar ao del.icio.us




23 de Abril de 2009 às 22:29
Parabéns a todos no Be on the Net por este projeto tão bacana... espero que seja um sucesso. Também estamos na luta e pretendemos lançar um produto nos próximos meses
. Abraços.
23 de Abril de 2009 às 23:31
Interessantíssimo o fato de usarem CouchDB, é um dos primeiros grandes projetos usando o sistema em produção no Brasil, se não for o primeiro. Gostaria de saber mais sobre isso, vocês estão usando que gem Ruby sobre ele?
23 de Abril de 2009 às 23:42
Parabéns ao Ruby Inside e principalmente ao Vinícius e ao pessoal da Improve It pelo ótimo trabalho que vem sendo feito com o Be on the Net.
Tenho acompanhado os acontecimentos a algum tempo e vejo que o produto vem crescendo e melhorando a cada dia, e é realmente eficaz. Em particular gosto muito da idéia dos screencasts. Um grande trabalho.
Abraços
24 de Abril de 2009 às 11:36
Parabéns ao Ruby Inside e ao Vinícius pela entrevista. Grande sucesso para o Be on the Net.
Abraços
24 de Abril de 2009 às 17:40
Também desejo sucesso a galera do Be on the Net!
25 de Setembro de 2009 às 9:51
[...] Show original post here [...]