Blog da Improve It

Templates CSS

Publicado por Vinicius Manhães Teles há 7 meses.

Template CSS
Foto de Bill Bradford (CC)

Os sites do Be on the Net utilizam templates CSS criados por designers externos. Nos primeiros dias, bem no início de janeiro de 2009, havia uma meia dúzia de templates. Cada template consistia em um conjunto de arquivos de imagens e de CSS.

Quando um novo cliente contratava nossos serviços, o que fazíamos era bastante simples. O cliente escolhia o template e a gente copiava os arquivos de CSS e de imagens para a conta dele. Pronto, problema resolvido. Era a abordagem mais simples e óbvia que poderíamos usar e foi a que usamos. Mas, naturalmente, não era nem de longe a mais adequada. Afinal, a palavra duplicação sempre vem acompanhada de dor e sofrimento. Ambos bateram em nossa porta logo depois de colocarmos os primeiros sites de clientes no ar.

Falhas

O uso real dos templates no dia-a-dia mostrou que cada um deles possuía pequenas falhas. Por mais que revisássemos cada template no momento da compra dele, sempre havia uma ou outra falha que nos escapava, mas ficava bem fácil de enxergar uma vez que o template estive em uso no site de um cliente.

Quando encontrávamos uma falha, corrigíamos, naturalmente. Mas, espere, estávamos duplicando os templates. Então, ao fazermos a correção no original, tínhamos que replicar em cada uma das cópias. Mas, não pense que bastava copiar e colar a correção.

Cada site tem um layout que usa, como base, o código CSS de um template. Mas, normalmente há pequenas alterações no CSS que são pertinentes exclusivamente àquele site. Portanto, não apenas tínhamos um código CSS duplicado, como também modificado.

Colocar as correções nestes arquivos CSS era um tormento. Foi nesse estágio que sofrimento e dor passaram a nos visitar diariamente. Também pudera, tanto tempo desenvolvendo software e caímos no mais básico de todos os erros: duplicar.

A solução

Durante o mês de janeiro, sofremos muito com essa questão, aprendemos bastante e fizemos o que precisava ser feito. Alteramos completamente o funcionamento do sistema para que ele passasse a ter uma forma de utilização de templates mais racional.

A partir daí, cada site passou a ter um parâmetro de configuração onde informávamos o nome do template adotado. Por sua vez, cada site poderia ter um conjunto de arquivos CSS e de imagens específicos para particularidades dele. Então, o HTML de cada página gerada para o site do cliente passava a ficar assim:

No momento em que essa alteração foi feita, as coisas ficaram bem mais simples. Continuamos a corrigir eventuais falhas nos templates, mas agora, podíamos corrigir em um único ponto e todos os sites que usavam o template corrigido recebiam a correção automaticamente.

Lição do dia: não duplique! O "copiar e colar" de hoje realmente significará a dor e o sofrimento de amanhã. E o pior: este amanhã sempre chega muito mais rápido do que imaginamos.

Tags , , , , ,  | 4 comentários

Monetização: pagamento de uma aplicação web

Publicado por Vinicius Manhães Teles há 7 meses.

Hoje começo a descrever algumas das lições que aprendemos até o momento com o Be on the Net. E começarei logo por uma das mais importantes, pois envolve a parte mais sensível do corpo humano, o bolso.

Pagamento
Foto de Mike Schmid (CC)

No Be on the Net os pagamentos são mensais e adiantados. Porém, no início, nos deparamos com a seguinte questão: quando um cliente contrata nosso serviço, qual deve ser o momento a partir do qual devemos começar a cobrar?

Devemos cobrar imediatamente? Ou primeiro colocamos o site no ar e depois fazemos a primeira cobrança?

O que nos pareceu mais razoável, inicialmente, foi colocar o site no ar, avançando até certo ponto, quando então enviávamos o primeiro boleto de pagamento. Chegar neste ponto, envolvia algumas tarefas executadas por nós e outras pelo cliente.

O problema

Logo descobrimos que esse modelo não funciona. As pessoas que nos contratam normalmente têm um pequeno negócio e são muito ocupadas. Querem um site porque acreditam no retorno para os negócios. Mas, ele trará mais trabalho. É inevitável. A pessoa precisa colocar seu conteúdo no ar, bem como fazer outras atividades relacionadas ao site.

Então, o que acabava acontecendo é que nós executávamos nossas tarefas rapidamente, enquanto o cliente frequentemente demorava para fazer a parte dele. E nós demorávamos para começar a receber pelo site.

Analisando superficialmente, pode-se ter a impressão de que apenas nós saíamos perdendo. Mas, isso não é verdade. O cliente também perde por não avançar com o site. Frequentemente, ele perde até mais, pois o site ajuda a trazer novos negócios. Então, cada dia que o cliente passa sem o site no ar, é mais um dia em que ele deixa de captar novos negócios.

No nosso lado, além de termos de enfrentar a demora de alguns clientes, também tivemos que lidar com outros que nos deram todo o trabalho inicial e, quando chegou a hora de fazer o primeiro pagamento, sumiram. Portanto, trabalhamos à toa.

A solução

Um dia a ficha caiu para mim. Nós estávamos simplesmente fazendo a coisa errada e a solução era a mais simples de todas. O cliente deve pagar a primeira mensalidade imediatamente, assim que fecha o contrato. E nós só devemos começar a preparar o site dele quando o pagamento puder ser identificado na conta corrente da empresa.

Isso é bom para nós por razões óbvias: a gente recebe logo e só trabalha para quem realmente paga. Quem nos procura na empolgação, mas não paga por qualquer razão que seja, simplesmente não recebe o serviço, o que é perfeitamente coerente.

Isso também é bom para o cliente. O fato de ele ter pago logo no início, faz com que ele priorize o site. Esse é o ponto principal. Por já ter pago, a pessoa dedica tempo e esforço para fazer a parte que lhe cabe, o quanto antes.

Essa é uma mudança que parece óbvia olhando em retrospecto. Mas, levou uns bons dois meses até nos darmos conta de que tínhamos que fazer isso.

Quando as coisas estão no início, a gente ainda não sabe ao certo se alguém vai contratar o produto. Temos medo. Então, tentamos adiar os pagamentos ao máximo, para que seja possível mostrar um pouco do nosso trabalho ao cliente, antes que ele tenha que abrir a carteira. Com o tempo, a gente ganha confiança. E essa confiança foi necessária para que passássemos a cobrar logo no início, antes mesmo que fizéssemos qualquer preparação do site do cliente.

De lá para cá, temos respeitado esse modelo e os resultados não poderiam ser melhores. Quem paga leva, quem não paga, não leva e, portanto, não nos gera nenhum trabalho.

Tags , , , , ,  | 9 comentários

Dev in Rio 2009

Publicado por Vinicius Manhães Teles há 7 meses.

Dev in rio 2009

No dia 14 de setembro de 2009 você tem um compromisso. Chama-se Dev in Rio 2009. Uma conferência super bacana que vai dar o que falar.

Será um evento raro, pois não é sempre que várias tecnologias diferentes dividem o mesmo palco. Teremos o privilégio de assistir:

A abertura será feita pelos meus amigos, Guilherme Chapiewski e Henrique Bastos, os organizadores do evento. Grandes amigos, dos quais me orgulho muito e aos quais agradeço por trazer um evento tão legal para o Rio. Parabéns por essa brilhante iniciativa!

Também estarei presente, no final do dia, para ajudar a organizar um bate-papo entre os palestrantes e a comunidade de desenvolvimento de software presente ao evento.

Dentre os assuntos tratados, temos o Joomla!, Java, Ruby, Ruby on Rails, Python, Django e Desenvolvimento Ágil. E como se não bastasse, o evento será encerrado com chave de ouro, em uma #horaextra que certamente vai entrar para a história. :-)

Veja informações adicionais sobre o evento nos blogs dos organizadores:

Palestrante Guilherme Chapiewski
http://gc.blog.br

Palestrante Henrique Bastos
http://henriquebastos.net

Faça logo sua inscrição! Este vai ser um daqueles eventos em que as vagas vão acabar rapidinho. Pode ter certeza.

Fiquem ligados no evento, acompanhando todos os acontecimentos no Twitter, seguindo o @devinrio e a busca #devinrio! Vejo vocês lá!

Tags , , , , , , , , , ,  | 1 comentário

História da criação do produto

Publicado por Vinicius Manhães Teles há 7 meses.

After Trial
Foto de thinkpublic (CC)

No final de 2007 escrevi um artigo no qual me despedia da consultoria em desenvolvimento ágil e indicava um novo caminho para a Improve It: o desenvolvimento de web apps comerciais. Um ano depois, no final de 2008, a Improve It encerrou seu último trabalho de consultoria. Foi o fim da participação no projeto Lucidus.

Neste mesmo mês de dezembro de 2008, lá pelos últimos dias, lançamos o Be on the Net como um produto comercial. Agora ele já está no ar há pouco mais de um semestre e chegou a hora de contar o que se passou e onde estamos neste momento.

Onde estamos?

No momento, temos em torno de 100 clientes no Be on the Net (muitos ainda não estão apresentados na página de clientes). É claro que gostaríamos de já ter um número maior, porém, 100 clientes é um número bem maior do que poderíamos esperar em tão poucos meses. Não, não me refiro a tão poucos meses como valor absoluto. O que quero dizer é que a vida comercial do Be on the Net tem pouco mais de seis meses, o que é muito pouco para um produto. E, apesar disso, já são 100 clientes. Uau! Isso é melhor do que poderíamos imaginar.

O que rolou?

O Be on the Net de hoje não é muito diferente do que era em dezembro do ano passado. A essência permanece a mesma, as funcionalidades são praticamente as mesmas e o código sofreu poucas alterações. Fizemos alguns ajustes finos ao longo do caminho, corrigimos alguns poucos bugs, mas no geral, continua sendo o mesmo código de seis meses atrás. Então isso quer dizer que ficamos de bobeira durante todo esse tempo?

De forma alguma. Ter o software funcionando foi só o começo. No momento em que ele foi lançado comercialmente, tivemos que passar a lidar com os outro 95% que realmente fazem o software deixar de ser apenas um software e efetivamente se transformar em um produto desejado pelas pessoas.

Operacional

Nós montamos uma fila de espera durante o desenvolvimento do Be on the Net. Com isso, várias pessoas contrataram o serviço logo nos primeiros dias. O que nos fez perceber rapidamente que precisávamos criar toda uma infraestrutura operacional que simplificasse nosso trabalho.

Quando um novo cliente nos contrata, há várias pequenas ações que precisamos fazer aqui e outras que o cliente tem que fazer por lá. Por exemplo, emissão do contrato, geração de boleto de pagamento, configuração de DNS, aplicação do template escolhido etc. Individualmente, cada tarefa dessas é simples, mas quando tomadas em conjunto, podem consumir um bom tempo, sobretudo se não estiverem bem otimizadas.

Essas são algumas das questões que mais geraram aprendizado para nós:

Ao longo dos próximos dias, tentarei escrever sobre cada um desses pontos. A ideia é tentar revelar, ao máximo, os bastidores dos primeiros meses do funcionamento do Be on the Net como um produto comercial. Fique ligado!

Tags , , , ,  | 3 comentários

Organizando a casa

Publicado por Vinicius Manhães Teles há 7 meses.

Organized life
Foto de Adam Rifkin (CC)

Fizemos um blog para o Be on the Net recentemente, onde iremos postar informações e relacionadas ao Be on the Net, bem como dicas para nossos clientes. Com isso, deixaremos de usar este blog para assuntos específicos do Be on the Net e voltaremos ao foco inicial dele, que são informações relacionadas à Improve It, bem como questões técnicas na área de desenvolvimento ágil, Rails, entre outras.

Além disso, criamos uma conta no Twitter tanto para a Improve It, quanto para o Be on the Net. Tem várias pessoas que me seguem no Twitter com interesses específicos na Improve It, ou no Be on the Net. Agora elas poderão seguir o Twitter certo para se manterem informadas sobre o que mais lhes interessam.

Finalmente, temos também o blog da Improve It em inglês, que voltaremos a utilizar mais ativamente para tratar especificamente de assuntos técnicos, que devem ser compartilhados com a comunidade como um todo e não apenas com aqueles que falam português.

Resumo da história:

Be on the Net

Improve It

Nós aprendemos muita coisa na primeira metade deste ano conduzindo o Be on the Net. Foi um aprendizado especial em termos de negócios, marketing, tecnologia, infraestrutura e vários outros assuntos. Estamos fazendo essa organização justamente porque desejamos compartilhar o que aprendemos ao longo dos próximos meses. Mas, queremos fazer isso de forma organizada, direcionando a informação corretamente, para cada público interessado.

Tags ,  | 3 comentários

Edição e publicação de vídeos

Publicado por Vinicius Manhães Teles há 7 meses.

Desde que lançamos os Be on the Net, no início deste ano, estive bastante atarefado com o produto, de modo que tenho me dedicado pouco ao blog. Além disso, temos publicado pouco conteúdo útil, embora tenhamos aprendido muito desde que demos início ao produto. Isso tem me deixado frustrado.

Para piorar, há muito material que nós criamos ou coletamos ao longo do último ano e meio, sobretudo em forma de vídeo, que está "enferrujando" em nossos computadores. O que queríamos mesmo é publicar tudo o quanto antes, pois tem muita coisa legal. Mas, não tem dado tempo. Em particular, não dá tempo para editar os vídeos.

Video editing makes me cry
Foto de Rakka (CC)

Edição é o nosso gargalo. Consome muito tempo e esforço. Então, não apenas deixamos de publicar os vídeos que já gravamos, como também evitamos criar novos, já sabendo que não teremos tempo para editá-los.

Parando para pensar melhor, me dei conta de que o problema não é exatamente de falta de tempo. O problema é cuidarmos da edição sozinhos.

Video Editing Alone
Foto de Stacy A (CC)

Foi quando percebi que compartilhar pode ser uma via de mão dupla. Podemos compartilhar não apenas o material que criamos, mas também o esforço para finalizar a produção deles. Ou seja, podemos e devemos buscar ajuda na parte de edição. Assim, quem sabe, os vídeos podem ser lançados em menos tempo, com menos esforço individual de cada envolvido. Por que nos restringimos a open source, quando podemos ter também open editing?

Invest in Sharing
Foto de Toban Black (CC)

Lancei essa questão no Twitter. E, para minha surpresa, várias pessoas responderam! :-)

Pedido de ajuda no Twitter

Nosso principal desafio é colocar no ar uma série de vídeos que fizemos nos últimos tempos. Existem outros materiais também, mas a prioridade inicial são os vídeos. Os assuntos são diversificados. Gostaríamos de colocar esses vídeos no ar e, então, começar a produzir material novo.

Video Editing Mash
Foto de Enric Teller (CC)

Criei um grupo no Google Groups para tratarmos dessa questão. As pessoas que manifestaram interesse já se encontram por lá. Se você quiser ajudar, por favor, entre em contato conosco para que possamos adicionar seu email ao grupo.

Estamos começando a organizar o trabalho. Sou usuário de um sistema de compartilhamento de arquivos chamado Dropbox. Alguns de vocês talvez o conheçam. É bem bacana.

Nele, tenho uma conta paga na qual posso colocar até 50GB de material. Consigo compartilhar alguns diretórios com pessoas específicas.

É possível abrir uma conta lá, sem custo, com direito a 2GB de armazenamento. Quando alguém for editar um vídeo, eu compartilho o mesmo apenas para a pessoa e ele sempre será um arquivo abaixo de 2GB. Com isso, você poderá usar seu Dropbox normalmente, sem custo.

Fiz uma garimpada nos principais vídeos ao longo da tarde de ontem. No momento, estou fazendo o upload dos últimos para o Dropbox.

A ideia é que cada pessoa escolha um vídeo para editar e depois coloque o resultado final no seu respectivo Dropbox. Nós iremos baixar, apenas para fazer a revisão, e, estando tudo em ordem, iremos publicar no site da Improve It, bem como no YouTube.

Share the Road
Foto de Jonathan Maus (CC)

Quem fizer a edição pode e deve ter seu crédito citado tanto no vídeo, quanto na página que o contiver. Isso é o básico que imaginei até o momento, mas outras ideias ou formas de publicar os vídeos são absolutamente bem-vindas.

Quem tiver empresa, poderá colocar uma breve propaganda no início ou final do vídeo, indicando que patrocinou a edição do mesmo. Acho que o material terá utilidade para a comunidade, mas quero que traga retorno para as pessoas que colaborarem no processo. Elas devem se promover de alguma forma. É essencial que todos ganhem algo com isso. O que queremos construir aqui é um processo de troca que seja bom para todo mundo: a comunidade, os editores e os criadores do conteúdo.

Finalmente, os vídeos serão liberados como Creative Commons Atribuição. Assim, qualquer pessoa poderá usá-los, para qualquer fim, bastando para isso que cite os autores e editores. Como implicação direta disso, todos poderão veicular o vídeo em seus respectivos sites/blogs, sem nenhuma restrição. Além de poderem usar comercialmente, se assim desejarem.

Se você tiver interesse em nos ajudar nessa iniciativa, por favor, entre em contato.

Tags ,  | 10 comentários