Quinta e sexta desta semana, no WTC de São Paulo, aconteceu a QCon SP 2014, organizada pela InfoQ. Finalmente fui à conferência, e a única coisa da qual me arrependí foi de não ter ido nas edições anteriores. O evento foi fantástico!

Com a ótima companhia do Eduardo Carrara e Filipe Pedroso da Intel do Brasil, conversei rapidamente com algumas célebres pessoas que só tinha ouvido falar ou visto algo na Internet, como Luca Bastos e Neto Marin. Ví palestras internacionais do Todd Lipcon (Coursera), Rob Witof (Nasa) e Gábor Hoffer (Prezi), e ótimas palestras nacionais do Paulo Silveira (Caelum), Michael Nascimento (Tecsinapse), Fabiane Nardon (TailTarget), Julio Faerman (AWS), Mario Fusco (Red Hat), Rodrigo Campos (Walmart.com), Carlos Villela (ThoughWorks), Marco Valtas (ThoughWorks), Elemar Junior (Microsoft) e o hilário Roberto Marin (BCash).

[caption id="attachment_350" align="aligncenter" width="440"]Neto Marin na QCon SP 2014 Neto Marin na QCon SP 2014[/caption]

O que mais me atraiu foi o nível das palestras e dos visitantes. Me senti em meio à vanguarda do Brasil na área de desenvolvimento de software e pude perceber a força de algumas tendências no Brasil, como NoSQL, programação funcional e DevOps, que anteriormente achava que só estavam acontecendo pra valer no exterior.

NoSQL e Big Data

Na quinta, a palestra sobre Storm ministrada pela Fabiane Nardon me surpreendeu com comentários sobre uma aplicação brasileira da TailTarget que recebe 1,5 bilhões de requisições por dia. Essas são processadas de forma distribuída através do Storm consumindo uma fila do Redis de forma parecida com o MapReduce do Hadoop, porém em forma de fluxo que passa por uma Topologia composta por Spouts e Bolts. O processamento acontece em tempo real, gerando informação a partir de Big Data para casos em que processamento em lotes não é adequado. Pareceu muito legal e simples de começar a usar.

[caption id="attachment_354" align="aligncenter" width="440"]Fabiane Nardon no QCon SP 2014 Fabiane Nardon no QCon SP 2014[/caption]

Na sexta, a keynote do Todd Lipcon me lembrou muito dos tempos da faculdade. Sobre Hadoop e ferramentas relacionadas, tecnologia que usei em meu TCC, o palestrante contou um pouco da história do Hadoop e nos mostrou código (extremamente simples) de MapReduce em Java (citando em seguida o Pig e ferramentas que facilitam o uso do MP), código de uso do Apache Spark (que parece incrível pela velocidade, abstração e funcionalidade do cache) e do Cloudera Impala, que é uma ferramenta para diminuir a distância entre programadores que conhecem apenas SQL e bancos de dados relacionais, e as tecnologias NoSQL.

Para fechar, a última palestra de sexta que ví foi a "Redis com Java: de NoSQL a Cache" do Roberto Marin. De forma muito bem humorada (com direito a foto do palestrante vestido de mulher maravilha e o uso de memes de internet entre seções da palestra), o mesmo demonstrou alguns casos de como é simples utilizar o Redis como cache, como o mesmo é robusto (sharding, redundância, expiração e suporte a vários tipos de estruturas) e uma técnica para se ter uma expiração de registros com tolerância à indisponibilidade da fonte de dados. Apesar do cansaço das 18h de sexta, todos no auditório estavam animados.

Com certeza adicionei algumas tecnologias à minha lista de coisas para estudar e fazer pequenos projetos com NoSQL. ;)

Programação Funcional

Com uma trilha específica e algumas palestras da trilha de Java falando fortemente do assunto, Programação Funcional me deixou boquiaberto. Comecei a estudar Scala há pouco tempo, mas não havia chegado à parte interessante ainda.

Comecei na quinta com a palestra do Leonardo Borges sobre Programação Funcional Reativa onde, apesar de não ter conseguido acompanhar todo o conteúdo, ví a potência dos fluxos do Rx (e RxJava). A palestra do Julio Faerman apresentada quase que apenas com demonstração de código em Scala mostrou como é possível construir produtos com Scala no servidor, e como algumas funcionalidades da linguagem podem ser usadas para agilizar o desenvolvimento (como o uso de implicit para criar uma abstração sobre o consumo de dados de um banco de dados). Confesso que não entendi tudo - ainda preciso aprender Scala. Mas fiquei impressionado e inspirado pelo que ví. :)

[caption id="attachment_352" align="aligncenter" width="440"]Paulo Silveira e Michael Nascimento no QCon SP 2014 Paulo Silveira e Michael Nascimento no QCon SP 2014[/caption]

Na sexta, a palestra do Paulo Silveira e Michael Nascimento me deram a esperança de usar FP muito em breve. Java 8 me pareceu uma forma de começar com programação funcional de forma gradual, e com muitas vantagens. A nova API de datas junto com as Streams e Lambda Functions, como demonstrado, facilitam e muito a construção de códigos complexos em cima de dados. A possibilidade de se poder obter uma lista dos dias das primeiras sextas de cada mês agrupadas em listas de cada trimestre, tudo isso em 1 linha de código é incrível.

Fiquei muito interessado em programação funcional. Esperem artigos por aqui sobre o assunto! :)

DevOps

Entrei na palestra do Rodrigo Campos para tentar entender melhor o que é DevOps, e o objetivo foi cumprido. Ao contrário do que eu achava, DevOps é um movimento cultural para aproximar os desenvolvedores e o pessoal de operação (infra e implantação). É claro que Agile e Continuous Deployment logo me vieram em mente, mas as histórias e enfoque do Rodrigo mostraram que DevOps é mais do que técnicas, e a implantação de uma nova cultura em uma empresa é sempre complicada. Gostei muito da palestra e agora vejo DevOps como algo difícil de se obter, mas bem vantajoso.

Muitas Outras

O evento ainda teve diversas outras palestras interessantes, como a do Carlos Vilella e Marco Valtas sobre Continuous Deployment, e a palestra do Elemar Jr sobre as novidades do C++/Cx, onde o mesmo quase caiu do palco após falar mal de Java (o que pareceu providência divina no momento... :D). É uma pena não ser possível ir em todas as palestras. Durante alguns períodos eu e meus amigos queríamos estar em 2 ou 3 palestras ao mesmo tempo.

[caption id="attachment_355" align="aligncenter" width="440"]QCon SP 2014 QCon SP 2014[/caption]

Concluindo...

Adorei o evento e as palestras e recomendo a todos a visitarem o evento no próximo ano! Apesar do preço salgado, a experiência é sensacional e vale cada centavo.