Nos dias 25 e 26 de julho, estive no TDC2008, um evento organizado pela Globalcode e patrocinado pela Locaweb, UOL e JBoss, uma divisão da RedHat. O evento contou com palestras sobre Java e metodologias ágeis, e teve várias palestras ocorrendo simultaneamente durante dois dias.

Estiveram palestrando no evento os gringos Ed Burns, Reza Rhama e Burr Sutter, além de nomes famosos da comunidade brasileira de desenvolvimento de softwares e metodologias ágeis como Juan Bernabó, Vinicius Teles e Manoel Pimentel.

Este post é sobre as palestras que assisti no primeiro dia do evento. Eu dei preferência às apresentações sobre metodologias ágeis, mas assisti à algumas palestras sobre Java.

Cheguei atrasado na abertura do evento ministrada pelo Jorge Diz. Em seguida, o Burr Sutter apresentou os produtos SOA da JBoss. Ele falou do fato do JBoss Developer Studio ser a versão open source do famoso Exadel Studio Pro e encheu totalmente a bola deste IDE. Uma coisa interessante foi o fato dele também usar o sistema de venda de DVDs pra mostrar seus exemplos, o mesmo sistema usado pelo Emmanuel Bernard na sua palestra sobre o Hibernate Search no Falando em Java 2008. A JBoss disponibiliza sistemas de exemplo padrão para seus funcionários?!? :P

O Edgar Silva apresentou os ingredientes de uma arquitetura SOA open source. Dentre várias tecnologias, ele falou sobre duas que me interessam: REST e o JBoss Drools: REST é uma forma simples e inteligente de implementar web services e o JBoss Drools é um sistema de implementação de regras de negócio de maneira textual, onde as regras são escritas em texto puro e depois convertidas para código Java.

Em seguida fui à apresentação do Renato Bellia sobre arquiteturas de persistência em Java. A apresentação foi boa, mas tive que esperar até o final dela para ouvir sobre novidades nesta área. Ele falou sobre os níveis existentes de uma camada de persistência e falou rapidamente como cada nível é implementado.

Depois do almoço, fui na apresentação sobre RESTful Web Services do Rafael Nunes. Foi uma apresentação explicativa e bem prática. Ele implementou exemplos em Java e Python o que conseguiu me manter acordado, apesar daquele sono que sempre rola depois do almoço.

E em seguida veio a apresentação do Ed Burns sobre JSF 2.0. A palestra começou interessante, um slide contendo os principais “goals” do Rails e de frameworks de interface rica com o usuário. E depois de listar cada “goal”, o Ed Burns disse: “Java também tem estes goals, sabem como? Groovy!!!”. E então ele falou os novos feitos do JSF e disse que tudo que o JSF tem de novo foi baseado no Rails, no Facelets e em Annotations. Foi uma boa palestra. O mais engraçado foi vê-lo pedindo pro público levantar a mão se já conhecesse tal tecnologia ou se já foram em tal lugar e ninguém se manifestar na hora, mas em alguns minutos depois, devido a tradução simultânea que não é tão simultânea assim. :)

Depois do Coffee-break, fui na apresentação sobre testes que o Jorge Diz e o Kleber Xavier fizeram. Excelente apresentação. Falaram sobre o Selenium, sobre o Fitnesse e sobre a metáfora da pirâmide alimentar.

E no final teve a apresentação do divertido Juan Bernabó falando sobre Scrum e Agile em geral. Foi uma das apresentações mais interessantes do dia, mas foi atrapalhada por problemas técnicos na conexão do notebook do Bernabó com o projetor. Eu filmei um pedaço da apresentação e depois coloco no YouTube. Ainda não tive tempo de arrumar todo o material que eu gerei durante o evento.

Eu perdi o fechamento do primeiro dia do evento, porque o Bernabó teve que passar um pouco do horário para compensar os problemas técnicos que teve com o projetor. Mas já no final do primeiro dia eu estava bastante satisfeito como evento.

Em breve postarei sobre o segundo dia do evento.

Acontecerá nos dias 19 e 20 de Julho na Unirio, a 1ª Ultra Maratona How To de Software Livre. Trata-se de um evento com diversos tutoriais abordando software livre e assuntos relacionados.

No site do evento é possível conferir a grade completa da programação. Muitos tutoriais acontecerão no mesmo horário, então é possível que algumas pessoas fiquem “divididas” entre alguns.

Os preços variam entre R$ 60,00 (estudantes) e R$ 120,00 (preço sem desconto para compras na semana do evento) e as inscrições podem ser feitas no site do evento.

De toda a grande, eu me interessei nois dois tutoriais que serão ministrados pelo pessoal da Improve It: “XP Game e o Jogo da Comunicação” e “Introdução ao Ruby on Rails“, que será ministrado pelo Mergulhão.

Como eu havia mencionado aqui, o Fábio Kung estará apresentando o case JRuby on Rails do guj.com.br no próximo encontro do RioJUG, na próxima segunda-feira, dia 02/06.

A apresentação será realizada das 19h às 21h, no auditório do SENAC CIT, que fica na Rua Santa Luzia, nº. 735, 7º andar, Centro, Rio.

A entrada é gratuita, não há necessidade de inscrição, basta chegar, assitir e concorrer a vários brindes e assinaturas das revistas Java Maganize, SQL Magazine e Mundo Java.

Eu estou lendo o livro Rails para Desenvolvedores Java que o amigo Rodrigo Allemand me emprestou e está sendo um aprendizado e tanto. Eu nunca tinha nem visto um código-fonte em Ruby antes. Só havia lido (e muito!) sobre tudo que ele faz com o mínimo de linhas de código em todos os fóruns, listas de discussão sobre desenvolvimento. E todo esse hype em torno de alguma coisa te faz ter, pelo menos, curiosidade sobre tal coisa.

Eu cheguei a conhecer o conceito do Rails antes, quando comecei a estudar e usar o Cake PHP. É algo bem parecido. Acho que posso dizer que o Cake está para o PHP, assim como o Rails está para o Ruby. E posso afirmar que o que está sendo interessante pra mim nesta leitura nem é o Rails em sim, mas neste primeiro momento está sendo o aprendizado de Ruby. É uma linguagem genial, eu nunca tinha visto nada tão legal. Já até adicionei na minha lista de livros a ler, alguns sobre Ruby.

Graças ao livro, fui capaz de entender o código que o Fábio Kung escreveu para fazer o sorteio no Falando em Java e tantos outros códigos que tenho visto pela internet. Tenho até criado algumas coisas a fins de aprendizado mesmo.

Domingo passado, estive lá no Falando em Java 2008. O evento teve diversas apresentações com destaques, na minha opinião, para as seguintes:

1) A apresentação do Guilherme Silveira sobre hábitos de arquitetos eficazes abriu muito a minha mente para determinadas coisas e, com isso, gerou algumas idéias para escrever aqui no blog, aguardem :)

2) O Sérgio Lopes foi muito bem sucedido com a sua abordagem teatral na apresentação sobre Domain-Driven Design. Ele simplesmente encenou a implementação de um sistema com “DDD”, onde o desenvolvedor cria uma linguagem ubíqua com o cliente e ambos conseguem falar a mesma língua - mesmo o cliente sendo literalmente um cachorro! Alguém tem uma foto disso? - durante o desenvolvimento do sistema.

3) A apresentação do Fábio Kung sobre JRuby on Rails foi bem esclarecedora em relação às limitações do Rails e como isso pode ser resolvido usando o JRuby. Sério, apesar de saber da existência de algumas linguagens cuja a JVM consegue rodar, eu ainda não tinha parado pra pensar no Java como uma plataforma que pode executar várias linguagens diferentes, como o .NET.

4) Emmanuel Bernard, líder de projetos Hibernate e autor do livro Hibernate Search in Action, falou sobre JPA 2.0 e, após o brunch, voltou em cena para falar sobre Hibernate Search. Duas ótimas palestras, diretas e objetivas, com muitos códigos e exemplos. Mas mesmo assim vi muita gente caindo no sono. Uma apresentação logo após o almoço, não dá. Eu me mantive acordado sem muito esforço, porque havia tomando 3 copos de café bem quente para não congelar. ;-)

No final do dia teve o sorteio mais nerd que se tem notícia. O próprio Emmanuel Bernard disse que nunca tinha visto um sorteio mais nerd. O Fábio Kung plugou seu MacBook - e por falar em MacBook, 99% dos presentes estavam com seus MacBooks e iPhones - no projetor e escreveu um simples método em Ruby para sortear os números, o método ficou mais ou menos assim:


def sorteio
(1..5).each {|x| puts x; sleep 1}
rand(300)
end

Houve sorteios de cupons de descontos em compras de livros, de um livro sobre Ruby on Rails e de um Nintendo Wii. É claro que a essa altura do campeonato eu estava achando que o Wii já era meu. Por já ter pago R$ 1500,00 em um e não ter recebido - sim, tomei calote no Mercado Livre de um vendedor altamente qualificado com mais de 1000 pontos positivos - achei que os céus fariam justiça e que o meu número, o nº 32, seria sorteado mas não foi :(

Por isso que agora eu sou ateu! :P