O que eu ando fazendo e por que eu sumi.

Recentemente algumas pessoas tem me perguntado o que eu ando fazendo, porque não posto mais nada no blog e não apareço em nenhum evento (e nem submeto palestras). O propósito deste post é justamente explicar porque eu desapareci. Depois de muito pensar sobre isso eu cheguei a conclusão que não existe uma única razão para esse meu sumiço e sim um conjunto delas.

A Vida Pessoal

Felizmente não existe nenhum problema pessoal que esteja me atrapalhando porém resolvi mudar um pouco a minha vida e dedicar mais tempo para atividades não nerds.

Eu sempre gostei muito de andar de moto e gastava alguns dos meus finais de semana na estrada com minha esposa e meus amigos. Porém depois do acidente do Hugo eu resolvi desacelerar um pouco e vendi minha moto do dia a dia para me forçar a andar menos. Só que a paixão pelas motos falou mais alto só que dessa vez eu troquei os passeios nas estradas pelas trilhas.

(moto)

Desde novembro do ano passado eu resolvi dedicar alguns finais de semana fazendo trilhas com amigos. Chegou num ponto onde eu queria andar com mais freqüência e em locais mais complicados e o ritmo desse grupo já não me atendia mais. Por uma coincidência do destino eu socorri dois trilheiros com problemas e acabei conhecendo um grupo alinhado com o que eu estava procurando e passamos a andar juntos.

O tempo foi passando, eu fui melhorando meu nível e investindo cada vez mais em equipamentos melhores, competindo alguns enduros e atualmente tenho dedicado ao menos um dia de TODOS os meus finais de semana para treinar com esses amigos. O meu objetivo é no ano que vem correr não só algumas etapas mas todas as provas do campeonato carioca de enduro e o Enduro da Independência.

Para quem se interessar pelo assunto existe um Be on the Net desse meu grupo de trilheiros repleto de fotos e vídeos.

A Vida Profissional

Desde 2006 estou trabalhando profissionalmente com Desenvolvimento Ágil, Ruby e Rails, me dedicando bastante a projetos opensource, palestras e todo o ecossistema envolvido. Sempre gostei muito de tudo isso e continuo trabalhando nessa área só que algumas coisas mudaram e comecei a refletir um pouco sobre como as coisas estão se encaminhando na minha vida profissional.

Depois de muitos anos (na nossa área 4 ou 5 anos é MUITO TEMPO) eu cheguei num estágio onde eu já não sentia mais o mesmo prazer e empolgação que sentia antigamente em trabalhar com nenhuma dessas coisas. Sem entrar em muitos detalhes(isso demandaria horas de discussão) vamos a algumas coisas:

1 - Desenvolvimento Ágil.

Desde que a Improve It mudou de área em 2008 eu me afastei das listas/forums/discussões sobre Desenvolvimento Ágil. Porém esse afastamento não foi total, eu simplesmente não escrevia e não respondia em nenhuma discussão porém sempre estava dando uma lida para ver o que rolava.

Outro dia eu estava no #horaextra conversando com o Akita sobre o a popularização do Agile nos últimos anos, como virou moda dizer que faz Agile e tentar fazer um "frankenstein de práticas" que alguns insistem em dizer que é Agile. Não tenho nenhuma pesquisa ou prova dessa estatística, mas me arrisco a dizer que no Brasil 90% dos que dizem estar fazendo Desenvolvimento Ágil estão fazendo tudo menos isso e mal tem conhecimento do Manifesto Ágil

Em resumo, estou cansado de ver os mesmos problemas, as mesmas discussões e dar sempre as mesmas respostas e explicações. Atualmente se algum empresa tiver ciência do que é Agile e quiser minha ajuda para implementar ou fazer coach eu topo, mas não me peça para ficar tentando evangelizar ninguém. Cansei de querer convencer que funciona!

2 - Ruby e Ruby On Rails

Continuo adorando a linguagem Ruby, gostando muito do framework Ruby on Rails e de vários outros frameworks. Só que cheguei num ponto que não me sinto mais empolgado aprendendo muitas coisas novas. No meu dia a dia estou com aquela sensação de estar sempre fazendo "mais do mesmo"! Veja bem, não estou dizendo que estava totalmente insatisfeito com o meu trabalho, apenas que ele já não me empolgava como antes!

Como eu trabalho apenas parte do meu tempo na RedeParede eu passei a dedicar a outra parte do meu tempo a fazer alguns "freelas". Recentemente um dos meus "freelas" terminou e eu estava pensando no que fazer quando surgiu uma proposta que casou perfeitamente com o que eu estava sentindo de fazer "mais do mesmo".

(iPhone SDK)

A proposta era para trabalhar com desenvolvimento para iPhone na Bitix porém eu nunca havia feito nada para iPhone. Depois de muita conversa chegamos a um acerto que possibilitou que eu entrasse no time da Bitix agregando valor com minha experiência de trabalho, boas práticas etc e aprendendo a desenvolver para iPhone. Estou bastante satisfeito com essa nova empreitada!

Na semana passada eu tirei férias na RedeParede e passei a semana toda estudando desenvolvimento para iPhone. Pretendo em breve escrever um post sobre isso, detalhando minha experiência e analisando os lados positivos e negativos.

O que vem pela frente nesse segundo semestre?

Continuarei trabalhando na RedeParede e pretendo continuar trabalhando com Ruby. Porém vou explorar um pouco mais de desenvolvimento para dispositivos móveis junto com a Bitix. Basicamente eu pretendo voltar a ativa só que provavelmente vocês vão me escutar falar muito de outras coisas além de Ruby e Rails.

No que diz respeito as conferências eu não submeti nada, por isso será difícil me encontrar como palestrante mas pretendo a ir assistir algumas. Por enquanto pretendo participar das seguintes conferências:

1 - FISL. Passagem comprada, 100% confirmado.

2 - Oxente Rails. Essa ainda não foi confirmada, mas como gostei muito no ano passado quero ir novamente. Por não ter sido confirmada ainda há chances de eu palestrar lá!

3 - Rails Summit. Essa ainda não foi confirmada, mas com certeza absoluta eu irei. Por não ter sido confirmada ainda há chances de eu palestrar lá! Vai depender do Akita aceitar a proposta que eu submeter. :-)

Prometo tentar escrever mais no meu blog desde que isso não atrapalhe meu trabalho e nem meu treinamento offroad! Aguardem...

Publicado em 24 de Maio de 2010 (4 comentários)
Etiquetas ruby, rails, iphone, trabalho, desenvolvimento agil

Haml versus ERB

Hoje lendo a lista rails-br me deparei com uma colocação sobre Haml ser mais lento que HTML(entendi que a pessoa queria dizer ERB) e isso me fez relembrar que no início do Be on the net eu e o Vinícius fizemos alguns benchmarks comparando ERB e Haml.

Na época nossos benchmarks indicaram que o Haml era mais rápido que o ERB. Cabe destacar que a nossa escolha NÃO FOI por causa de performance, já que lembro bem que migramos primeiro e fizemos os testes depois. Motivado pela mensagem na lista resolvi refazer os benchmarks e mostrar os números.

Eu estava certo que o Haml se sairia melhor que o ERB mas em 5 minutos eu fiz um código para comparar os dois e descobri que o ERB se sai bem melhor.

Código utilizado

Resultado

Estava tentando me lembrar como foi feito o nosso primeiro benchmark mas não tenho a menor idéia. Não sei se fizemos algo errado ou se os valores eram diferentes naquela época.

Fiquei intrigado se com códigos mais complexos essa performance poderia ser diferente e se isso justificaria o resultado do nosso primeiro benchmark. Resolvi fazer uns testes no Be on the net e o resultado novamente foi mais favorável ao ERB.

Por se tratar de um produto comercial eu não poderia mostrar os códigos que eu utilizei. Então resolvi escrever uns exemplos mais complexos mas desisti após fazer algumas pesquisas no google e ver que outras pessoas já fizeram o mesmo teste e todos obtiveram resultados semelhantes.

Sugiro dar uma olhada nesses dois posts e ler os comentários: http://nex-3.com/posts/81-more-haml-benchmark-issues e http://nex-3.com/posts/87-haml-benchmark-numbers-for-2-2

Conclusão

O ERB é mais rápido porém esse tipo de conclusão é bastante perigosa e não devemos olhar apenas esses números para decidir sobre usar ou não o Haml. Dificilmente o gargalo da sua aplicação será apenas esse render e provavelmente você poderá resolver todos os seus problemas de performance sem a necessidade de pensar nesses números. Se você está tendo problemas com a performance da sua aplicação sugiro que assista a série Scaling Rails.

Se hoje eu tivesse que iniciar um projeto novo não pensaria duas vezes e usaria o Haml. Basicamente o Haml é menos verboso, sua sintaxe é bem amigável e ainda nos protege de cometer pequenos erros no HTML.

Publicado em 05 de Janeiro de 2010 (4 comentários)
Etiquetas haml, erb, rails, ruby, benchmark, performance

Rails Summit 2009: Introdução a banco de dados não relacionais e como utilizar CouchDB no Rails.

A Locaweb disponibilizou no Vimeo os vídeos das palestras no Rails Summit 2009.

Abaixo você pode ver a gravação da minha palestra no evento. A minha palestra teve como objetivo mostrar um pouco sobre banco de dados não relacionais em especial sobre o CouchDB.

Você também pode conferir os slides em:

Publicado em 19 de Dezembro de 2009 (0 comentários)
Etiquetas couchdb, rails, rails summit, couchrest, banco de dados

Pesquisa sobre o Rails Summit 2009

("Galera no Rails Summit")

Passado alguns dias do Rails Summit 2009 e do after Rails Summit resolvi fazer uma pesquisa de opinião sobre as palestras com o intuito de matar a minha curiosidade sobre o que as pessoas acharam das palestras e comparar com a minha opinião.

Antes de analisar os gráficos vejamos algumas considerações importantes:

  1. Foram 89 respostas.
  2. Na primeira versão da pesquisa eu tinha esquecido de por uma opção, por isso descartei todas as respostas dadas antes de por esse opção.
  3. Para a pesquisa ficar simples de ser respondida eu não permiti comentários sobre as palestras e deixei para pedir feedback aqui no blog. Então, se possível deixe seus comentários sobre as palestras que você assistiu.

( "Gráfico 0 Rails Summit") ( "Gráfico 1 Rails Summit") ( "Gráfico 2 Rails Summit") ( "Gráfico 3 Rails Summit") ( "Gráfico 4 Rails Summit") ( "Gráfico 5 Rails Summit") ( "Gráfico 6 Rails Summit") ( "Gráfico 7 Rails Summit") ( "Gráfico 8 Rails Summit") ( "Gráfico 5 Rails Summit")

A minha palestra

("Marcos Tapajós")

Foto tirada pelo Guilherme Chapiewski.

Os resultados da minha palestra me surpreenderam bastante pois eu não estava esperando receber um número tão alto de qualificações "excelente" e "good". Alias, não apenas o resultado da pesquisa, mas o feedback que eu colhi no evento, antes de depois da minha palestra.

Por se tratar de um tema muito novo(e polêmico) eu imaginava uma taxa de rejeição muito maior ao assunto e ter uma meia dúzia de gatos pingados no auditório. Porém antes mesmo da palestra começar algumas pessoas vieram conversar comigo e quando a palestra começou vi algumas pessoas bem interessadas no assunto.

O mais interessante para mim foi que após a palestra várias pessoas conversaram comigo e me contaram suas experiências usando ou brincando com o CouchDB. Fiquei impressionado com a quantidade de pessoas que já olharam para o CouchDB e o MongoDB e tem intenção de usar em projetos de vários portes.

Publicado em 27 de Outubro de 2009 (0 comentários)
Etiquetas rails, rails summit

Slides da minha apresentação no Rails Summit 2009

Publicado em 14 de Outubro de 2009 (0 comentários)
Etiquetas couchdb, rails, rails summit, couchrest, banco de dados