TDC 2017
Porto Alegre
Um dos maiores encontros de comunidades e empresas no Brasil

Trilha Programação Funcional Conceitos, técnicas e o mercado de Functional Programming

A ideia desta trilha é, de uma maneira geral, trazer discussões sobre Functional Programming e o estado em que este paradigma se encontra hoje. Entre estas discussões temos conceitos de FP, as diferentes linguagens - sejam elas puramente funcionais ou não - e suas características, além do ecossistema de tais linguagens.

Com o crescimento do interesse de FP nos últimos anos, também queremos discutir como ele está sendo aceito nos dias de hoje pelo mercado profissional e pela comunidade.

Palestras

Importante: A grade de palestras está sujeita a alterações sem prévio aviso.
Conteúdo
08:00 às 09:00 Credenciamento e recepção dos participantes

Todas as pessoas inscritas, palestrantes, coordenadores e de imprensa, devem retirar seus crachás e kit do congressista nos balcões de credenciamento localizados na entrada do evento, para obterem acesso às salas e Auditório Principal.

09:00 às 10:00 Abertura do evento no Auditório Principal

Após o credenciamento, convidamos os participantes a comparecerem ao auditório para receberem as boas vindas por parte dos realizadores e patrocinadores.

Neste keynote de abertura, todos serão orientados sobre o funcionamento do evento, destaques e outras novidades.

10:10 às 11:00 Elixir, do desenvolvimento à produção
Guilherme de Maio

Essa apresentação é sobre construir um produto usando Elixir desde o começo. Quais foram os desafios encontrados durante o desenvolvimento, configuração de ambientes de desenvolvimento e produção, como debugar e arrumar bugs! Na Xerpa temos uma aplicação web em produção desde outubro de 2015, servindo várias empresas que usam a aplicação todo dia, e nosso backend é Elixir+Phoenix. Venha ver essa apresentação para conhecer como construímos tudo, nosso processo de desenvolvimento e teste, e como conseguimos fazer mais de 8 deploy por dia, sem downtime, enquanto contribuímos com a comunidade Elixir.

11:10 às 12:00 Paradigma funcional até leigos podem entender
Leonardo Amarilho

Vamos revisitar juntos alguns conceitos funcionais e demonstrar como eles são simples na sua essência. Uma das maneira que encontrei para provar essa minha teoria, foi falar e explicar esses conceitos que eles utilizam, que até uma pessoa leiga consiga entender. Será que é possível? Ao longo da conversa mostrarei exemplos práticos em Haskell, Scala e porque não em Java, para tentar convencer vocês disso. No final, caso não tenha entendido ou ainda sim não concordo com os pontos apresentados, trarei então uma lista de conceitos no qual realmente você deveria esquecer isso de funcional e esse paradigma maluco.

Reactive Streams com Akka Streams
Humberto Streb
O que é Reactive Streams? Onde aplicamos e onde não aplicamos? Essa apresentação visa responder essas questões, mostrando um overview de Akka Streams e sua implementação da especificação de Reactive Streams, passando por sua API e ecossistema.
12:10 às 13:00 Programação Funcional, Reativa e Paralela com C# e F#
Elemar Rodrigues Severo Júnior

Nesta palestra, compartilho cases práticos de aplicação de princípios de programação funcional com C# e F#. Apresento casos práticos e reais de como técnicas de programação funcional me ajudaram a melhorar significativamente a performance e a estabilidade de sistemas que desenvolvo e suporto.

13:10 às 14:00 Intervalo para Almoço
Uma excelente oportunidade de todas as pessoas no evento interagirem e trocarem ideias, colaboradores, empresas patrocinadoras e apoiadoras, palestrantes e coordenadores.
14:10 às 15:00 (Nunca) Ouvi falar de Rust... mas como faço um site?
Bruno Lara Tavares

Talvez você já tenha ouvido alguém falar sobre Rust e ficou curiosa. No site da linguagem você viu que é uma "linguagem de sistemas", e que roda rápido. Ideal para fazer Sistemas Operacionais, navegadores, e sites também.

Uma linguagem que gera binários, DLLs e libs, tem muitas caracteristicas encontradas linguagens de alto nível, e roda facilmente em Mac, Linux e Windows tem muito potencial.

Vamos ver como começar com a linguagem, quais ferramentas instalar e as opções atuais para começar o desenvolvimento Web, integrar com banco de dados, testar e fazer deploys.

15:10 às 16:00 O que eu aprendi usando Clojure e Datomic por quatro anos em produção
Luiz Alberto Valentim Hespanha

Nesta palestra pretendo mostrar os desafios e também as vantagens de usar Clojure e Datomic em produção para construir uma instituição bancária do zero. Vou falar desde os desafios de contratação de pessoas e curva de aprendizagem destas tecnologias, até aspectos bem técnicos que são diferenciais do Clojure e do Datomic e que mostram o poder destas ferramentas, focando bastante em aspectos de programação funcional e imutabilidade.

16:00 às 16:30 Coffee-break e Networking

Durante o intervalo de coffee-break, serão entregues kits contendo suco e biscoitos. Um delicioso intervalo para relaxar, conhecer novas pessoas e estreitar contatos.

Neste tempo, também surge a oportunidade de todas as pessoas no evento interagirem entre sí, participantes das trilhas, empresas patrocinadoras e apoiadoras, palestrantes e coordenadores.

16:40 às 17:30 APIs GraphQL com Clojure: desencadeando o poder das s-expressions
Igor Trindade Oliveira

Um dos objetivos de frameworks modernos para aplicações cliente-servidor é a possibilidade de construir aplicações de maneira composável e simples. Falamos da capacidade de definir no servidor uma função que cria um fragmento de componente juntamente com o comportamento associado no lado cliente, onde o funcionamento esperado possa depender dos parâmetros passados a essa função.

GraphQL é ideal para qualquer aplicação que requira de maneira precisa e eficiente a aquisição e manipulação de dados. Provê uma alternativa para APIs REST oferecendo altíssima ênfase em recuperação de dados e introspeção com o apoio de um sistema de tipos. Isso habilita o desenvolvedor a desenvolver aplicações clie

17:40 às 18:30 Tipos e Erlang/Elixir - como aumentar a manutenibilidade de sua aplicação com Dialyzer
Charlotte Lorelei Oliveira

Uma aplicação, para ser manutenível, deve fornecer garantias de legibilidade e de que, com modificações de código, conflitos serão encontrados o mais cedo possível, evitando a entrega de software deficiente ao cliente; para oferecer essas garantias, alguns ambientes oferecem checagem de tipos, o que garante que uma dada parte do código se comportará de maneira esperada. Nesta palestra entenderemos como funciona um sistema de tipos, como ele pode melhorar a legibilidade do seu código, como ele pode oferecer garantias adicionais de qualidade à tua aplicação e como usar o Dialyzer - analisador de tipos estático do Erlang - para melhorar o seu código com facilidade.

18:40 às 19:00 Encerramento e Sorteios

No horário de encerramento, todas as trilhas serão direcionadas de suas salas para o Auditório Principal, mesmo local da abertura.

Após a apresentação de resultados do dia muitos sorteios fecharão o dia.

Data e Local

Quarta-feira, 8 de Novembro de 2017

8:30 às 19:00 h

UniRitter

Rua Orfanotrófio, 555
Alto Teresópolis | Porto Alegre - RS

Informações sobre Data e Local


Público Alvo

Desenvolvedores e entusiastas da programação funcional


Investimento

presencial:R$ 240,00

Fazendo sua inscrição presencial, você terá acesso a esta trilha e no mesmo dia também:
TDC Expo: Venha conversar com pessoas e conhecer empresas incríveis.
Trilha Stadium: Você poderá assistir às palestras da trilha Stadium do mesmo dia.