Horário
|
Palestra
|
08:30 às 09:00
|
Credenciamento e recepção dos participantes com café da manhã
|
09:00 às 10:00
|
Abertura
|
10:10 às 11:00
|
Fishbowl Java e Scala - Quebrando o gelo
Fishbowl Java e Scala - Quebrando o gelo
Alberto Luiz Souza /
Todos os participantes
Nesse fishbowl falaremos sobre Java e Scala, de forma bem aberta. Começaremos com dois firestarters de 5 minutos cada, para inspirar os presentes. Em seguida, vamos ter algumas cadeiras para quem quiser participar da discussão, sendo que todos os presentes serão convidados a participar. A idéia é que qualquer um que quiser dar a sua opinião poderá fazê-lo.
A cada 7 minutos (ou quando a discussão esfriar) é perguntado se querem mudar o tema ou continuar. O que quer dizer basicamente que não vamos ficar discutindo nada que não esteja interessando a maioria dos presentes.
Alberto Luiz Souza
/
Todos os participantes
|
11:10 às 12:00
|
Programação Funcional para Manipulação de Dados
Programação Funcional para Manipulação de Dados
Jonas Abreu
O fato de Scala unir programação Orientada à Objetos com programação Funcional permite que você escolha qual ferramenta quer usar para resolver um problema.
Embora Orientação à Objetos seja muito boa para organizar a arquitetura e o design da sua aplicação, quando o seu problema envolve manipular dados de formas não triviais, programação Funcional é insuperável.
Jonas Abreu
|
12:00 às 13:00
|
Intervalo para almoço*
|
13:10 às 14:00
|
Scala 2.10 -- De Onde Viemos e Para Onde Vamos?
Scala 2.10 -- De Onde Viemos e Para Onde Vamos?
Daniel Capo Sobral
Começamos com uma timeline das versões de Scala desde a 2.0 em 2006, para realçar a tremenda velocidade de mudanças na linguagem.
Após isso, apresentamos os tópicos abaixo, e detalhamos cada um:
- Bug fixes (virtual pattern matcher, esforço conjunto pré 2.10.0 M4, outros)
- Melhorias (novas coleções, revisão do RedBlackTree, scaladoc)
- SIPs (o que são, quais foram aprovadas, descrição das features)
- Scala.reflect
Terminamos com uma especulação a respeito de evoluções futuras: untyped macros, macro types e macro annotations, effect system, integração de abstract types e type parameters.
A palestra terá ênfase nos aspectos pragmáticos, com inúmeros exemplos de código.
Daniel Capo Sobral
|
14:10 às 15:00
|
Programação distribuída fácil e poderosa na JVM com Akka
Programação distribuída fácil e poderosa na JVM com Akka
Paulo Renato Campos de Siqueira
Akka é um framework para desenvolvimento de aplicações concorrentes e/ou distribuídas. Utilizando o modelo de atores, esse framework também permite que a aplicação seja altamente tolerante a falhas - além de abstrair muitas complexidades baixo nível, tornando o código que precisamos escrever bastante simples.
Nesta palestra, vamos mostrar como o Akka funciona; vamos falar um pouco do modelo de atores e em seguida focar nos recursos disponíveis para criação de aplicações distribuídas. Sempre mostrando código funcionando.
Paulo Renato Campos de Siqueira
|
15:00 às 15:30
|
Coffee-break & networking
|
15:40 às 16:30
|
Criando sua própria linguagem com parser combinators
Criando sua própria linguagem com parser combinators
Lucas Cavalcanti
Parser Combinators é uma das funcionalidades mais poderosas do Scala. Com ela conseguimos implementar desde expressões regulares até gramáticas que podem parsear linguagens complexas, como o próprio Scala.
Muitas linguagens de programação possuem bibliotecas para esse fim, é o caso do Antlr e do Bison, mas nenhuma delas conseguiu deixar essa tarefa complexa de forma tão (relativamente) simples como o Scala e seus parser combinators.
Essa palestra mostrará para que servem os parser combinators e como usá-los de forma organizada.
Lucas Cavalcanti
|
16:40 às 17:30
|
Testando seu código com Specs2
Testando seu código com Specs2
Juliano Alves
Testes são mais do que programas que testam sua aplicação, são especificações de como ela deve funcionar. Nessa palestra será apresentado o Specs2, um framework Scala para BDD, permitindo que os testes sejam orientados ao comportamento, e produzindo resultados de fácil leitura.
Juliano Alves
Akka 2.0 + MongoDB - Caso de sucesso no Ecommerce Turismo.
Akka 2.0 + MongoDB - Caso de sucesso no Ecommerce Turismo.
Rodrigo Silva Rahman de Almeida
Uma explicação completa do problema, do porque foi utilizado o Akka, tunning e a melhoria do processo de busca para o ecommerce turismo (www.cvc.com.br)
Tópicos:
- Problema a ser solucionado;
- O porque da utilização do framework Akka;
- Arquitetura proposta;
- Explicação da Solução;
- Tempo de resposta e ganhos utilizando a tecnologia.
Rodrigo Silva Rahman de Almeida
|
17:40 às 18:30
|
Lazy Evaluation em Scala
Lazy Evaluation em Scala
Pedro Matiello
Scala é frequentemente descrita como uma linguagem que integra programação orientada a objetos com programação funcional. Dentro do paradigma funcional, uma característica importante é o suporte a Lazy Evaluation - uma estratégia de avaliação de expressões que consiste, principalmente, em adiar o cálculo das expressões até que seu resultado seja necessário.
Nesta palestra veremos a extensão do suporte a Laziness em Scala, seus possíveis usos, benefícios e potenciais desvantagens.
Pedro Matiello
|
18:40 às 19:00
|
Encerramento e sorteios
|
* Todos os participantes receberão um sanduíche do SUBWAY na hora do almoço
Obs.: Grade sujeita a alteração
Depois de anos de programação com Java e Scala, Paulo hoje é Engineering Lead na Zalando SE, maior site de comercio eletrônicos de moda da Europa.
Programador Java e Scala, trabalha atualmente com foco em performance de aplicações e educação através de Prática Deliberada. Já foi instrutor e consultor da Caelum e da AdaptWorks. Apaixonado por desenvolvimento OpenSource e atua na comunidade organizando Coding Dojos, dando palestras e ajudando a coordenar grupos de usuários, como o Scaladores.
Instrutor e Desenvolvedor da Caelum, apaixonado por Java e Scala.
Aficionado por computadores e programação desde 1982, com experiência em inúmeras linguagens. Programador, devops e gamer. Formado em Ciência da Computação pela UnB, com mestrado na universidade de Gunma, no Japão na área de algoritmos distribuídos. Committer do FreeBSD de 1999 à 2004, envolvido com a comunidade Scala desde 2009, Scala Gold Badge no Stack Overflow.
Programador Java e Scala, trabalha atualmente com foco em performance de aplicações e educação através de Prática Deliberada. Já foi instrutor e consultor da Caelum e da AdaptWorks. Apaixonado por desenvolvimento OpenSource e atua na comunidade organizando Coding Dojos, dando palestras e ajudando a coordenar grupos de usuários, como o Scaladores.
Juliano Alves é especializado em Engenharia de Software pela PUC-SP e considera desenvolver software uma arte. Um entusiasta de linguagens funcionais e open-source, acredita profundamente que o futuro pertence aos programadores poliglotas. Hoje vive em Londres, trabalhando na uSwitch.com
Formado em Bacharelado de Ciências da Computação na USP, é desenvolvedor de Software por vocação e amante das boas práticas de desenvolvimento e métodos ágeis. Conhece Ruby desde 2008 e acompanhou a sua evolução como linguagem e como comunidade até hoje. Trabalhou por 5 anos na Caelum como consultor, desenvolvedor e instrutor, passou pelo R7 e pela Baby e hoje trabalha na Nubank. Está no Twitter e no Github como @lucascs.
Depois de anos de programação com Java e Scala, Paulo hoje é Engineering Lead na Zalando SE, maior site de comercio eletrônicos de moda da Europa.
Pedro Matiello é formado em Ciência da Computação pelo Instituto de Matemática e Estatística da Universidade de São Paulo. Atuou como desenvolvedor e instrutor na Caelum e, atualmente, trabalha como desenvolvedor no Buscapé.
Trabalho com desenvolvimento a 10 anos, com java a 8 anos, certificado SCJP, atualmente trabalho com Ecommerce, Sistemas B2B e Arquitetura SOA da CVC, trabalhei no projeto do DDA, SCG e C3 (Sistema de venda de contratos por bancos) solicitado pelo banco central e CIP. Formado arquiteto pela Globalcode.