Perfil

cuducos @cuducos


Sobre mim

Sociologist, geek, bread baker, and sports fan.

Propostas

[30min] Mocks: testando só o que tem que ser testado

Palestra em formato live coding cobrindo em 30min:


* mocks fantásticos e onde habitam
* explorando os métodos e propriedades dos mocks
* escrevendo testes com unittest & mock

[30min] Por debaixo dos panos da tecnologia da Serenata de Amor

A Operação Serenata de Amor está utilizando ciência de dados (e muito Python!) para fazer as informações que a Lei de Acesso à Informação tornou públicas mais úteis e relevantes para os cidadãos. Essa palestra é uma introdução à arquitetura tecnológica do projeto, explicando como as coisas funcionam e quebrando o gelo para novos contribuidores se sentirem em casa.

Elm: chega de dor de cabeça com o frontend

Esse tutorial será uma introdução ao Elm e também à integração do Elm com frameworks web em Python (utilizando o webassets e o webassets-elm). Partindo de uma aplicação web RESTful básica em Flask ou Django, o tutorial vai responder a perguntas como:


» Por quê uma solução reativa?


» Por quê Elm (e não qualquer outra solução em JavaScript)?


» Como escrever meu primeiro app em Elm?


» Como é o ambiente de desenvolvimento em Elm?


» Como escrever testes em Elm?


» Como integrar Elm com webassets, Flask e Django?


» Como integrar Elm com um app RESTful?


Público: todos que já desenvolvem ou tem interesse em desenvolver aplicativos para web (conhecimento mínimo de Flask ou Django ajuda, mas não é essencial)


Duração: 2 ou 4h

Geradores e yields fazendo tua vida — e a da tua memória — mais leve

Palestra em forma de _live coding_ cobrindo os seguintes tópicos em 30min:


* Na prática, para quê servem geradores?
* E como eles funcionam?
* Mas e esse yield?
* Bônus, gerenciadores de contexto!

Porquê Elm: chega de dor de cabeça com front-end, chega de JavaScript

Uma introdução ao Elm integrado em back-end Python (Flask ou Django).


Palestra com exemplos práticos de uso: matar a cobra, e mostrar o pau e a cobra e responder perguntas como:


* Por que uma solução reativa?
* Por que Elm (e não qualquer outra solução em JavaScript)?
* Como escrever o primeiro app em Elm?
* Como é o ambiente de desenvolvimento em Elm?
* Quais as vantagens de usar Elm?
* Como usar Elm com backend em Python?


As *promessas* da linguagem como *no runtime exceptions* e *friendly error messages* serão sentidas na pele — e não apenas conversa fiada.

Problemas que o Elm resolve só com o compilador, sem nada mais

O Elm surgiu para oferecer um ambiente robusto de desenvolvimento para frontend. Sua arquitetura inspirou o Redux, amplamente adotado pela comunidade JavaScript. Mas o Elm por si só é uma linguagem muito poderosa: tanto a tipagem quanto o próprio compilador já nos levam a resolver inúmeros problemas que poderiam passar despercebidos em outras linguagens. Essa palestra mostrará exemplos didáticos de códigos falhos que poderiam ser colocados em produção em outra linguagem, mas que nunca aconteceria se a aplicação fosse em Elm.

Serenata de Amor: Robôs lutando contra a corrupção no Brasil

A Operação Serenata de Amor nasceu de uma combinação de necessidades de muitas pessoas: de ver machine learning aplicado para melhorar nossas vidas, de aprender em quem devemos votar e de fazer algo a respeito do problema de corrupção que afeta o mundo inteiro.


Estamos construindo uma inteligência artificial capaz de analisar contas públicas e de dizer, com confiança, a possibilidade de cada nota ser ilegal. É assim que pensamos esse robô.


Tudo que estamos construindo está sendo feito com código aberto desde o início, onde você, como tantos outros já fazem, pode contribuir ativamente com a construção do projeto. 


No sprint podemos contibrutir com várias partes do projeto, seja com data science, seja com desenvolvimento:


• coleta de dados
• análise
• otimização
• front e backend da API de consulta de dados
• etc.


Se isso ainda não te convenceu, vai ter brinde! Camiseta do Caipyra para quem resolver alguma issue com a hashtag do evento.


Mais informações:


Site do projeto: http://serenata.datasciencebr.com
Repositório do projeto: https://github.com/datasciencebr/serenata-de-amor
Repositório da API: https://github.com/datasciencebr/jarbas

Vamos mockar tudo! Usando mocks para fazer testes melhores e mais rápidos

O módulo unittest.mock é nativo no Python 3 e com ele podemos escrever testes mais precisos e mais velozes. A palestra será um live coding para ensinar como testar apenas o código da aplicação, sem depender de fatores como: externalidades (sistema de arquivo, banco de dados, servidores web etc.),  pacotes de terceiros (não precisamos testar o que o Django já testou e implementou, por exemplo) ou código nativo (não precisamos testar o que já está no core do Python). Ainda deixaremos nossos códigos mais rápidos refinando a granularidade dos testes, não testando (por efeito cascata) as funções da aplicação mais de uma vez.