Perfil

Eduardo Mendes @zaratustra


Sobre mim

:D

Eventos

Grupy-SP em Indaiatuba 04/05/2019

Bora palestrar em Indaiatuba?

 

Palestra de 30 minutos.

 

Vemmm <3

JustPython 2.0 - 16/02/2019

As palestras a princípio terão 25 ou 55 minutos, mas podemos alterar isso para melhor acomodar o conteúdo. (se quiser manda no mais info quanto tempo leva a sua palestra)

Leia nosso manifesto:  https://justpython.style/manifesto/
Deve: - usar apenas python e as bibliotecas builtin De preferência: - deve conter código Pode: - Mostrar como implementar algo em python puro - Ensinar como utilizar funcionalidades do core e das baterias inclusas - Discutir performance, pegadinhas e esquisitices do python - Falar sobre versões do python e fazer comparaçõões - Falar de boas práticas - Explicar um conceito usando python Não pode: - Palestras sobre empreendedorismo, carreira, frameworks, comunidade, infraestrutura e etc - Usar bibliotecas externas - Usar frameworks Temas sugeridos: - Async IO - Design Patterns - Libs os/sys/shutil/path - SimpleHttpServer - Programação funcional - Nettworking/TCP/Sockets - Logging - Ctypes + dis - Outras implementações do python (micropython, jython, pypy, ...) - UnitTest / mock/ doctest - Exceptions - Data Classes - ... Tentaremos acomodar a maior quantidade de palestras sem prejudicar os conteúdos. Caso tenha necessidade de escolha, valorizamos: - aderencia ao tema. - originalidade (palestra não foi dada em nenhum evento recente). - se vai ter live coding (indica no mais info) - dificuldade (queremos que o evento tenha algo para todo mundo do inciante ao avançado). - votos contam, mas não são decisivos. Divirta-se e vamos codar em python!

Pyjamas

[Data a definir]

 

Evento totalmente online com duração de 24hs para atigir todos os amigos pythonistas perdidos pelo globo

 

Submeta qualquer coisa, ensine a fritar um ovo, conte a história da sua vida, fale de python.

 

Vamos rir e nos unir por 24hs

<3

JustPython - 14/07

As palestras a princípio terão 25 ou 55 minutos, mas podemos alterar isso para melhor acomodar o conteúdo. (se quiser manda no mais info quanto tempo leva a sua palestra)


Deve:
- usar apenas python e as bibliotecas builtin

De preferência:
- deve conter código

Pode:
- Mostrar como implementar algo em python puro
- Ensinar como utilizar funcionalidades do core e das baterias inclusas
- Discutir performance, pegadinhas e esquisitices do python
- Falar sobre versões do python e fazer comparaçõões
- Falar de boas práticas
- Explicar um conceito usando python

Não pode:
- Palestras sobre empreendedorismo, carreira, frameworks, comunidade, infraestrutura e etc
- Usar bibliotecas externas
- Usar frameworks

Temas sugeridos:

- Async IO
- Design Patterns
- Libs os/sys/shutil/path
- SimpleHttpServer
- Programação funcional
- Nettworking/TCP/Sockets
- Logging
- Ctypes + dis
- Outras implementações do python (micropython, jython, pypy, ...)
- UnitTest / mock/ doctest
- Exceptions
- Data Classes
- ...

Tentaremos acomodar a maior quantidade de palestras sem prejudicar os conteúdos. Caso tenha necessidade de escolha, valorizamos:

- aderencia ao tema.
- originalidade (palestra não foi dada em nenhum evento recente).
- se vai ter live coding (indica no mais info)
- dificuldade (queremos que o evento tenha algo para todo mundo do inciante ao avançado).
- votos contam, mas não são decisivos.

Divirta-se e vamos codar em python!

Grupy-SP em Indaiatuba na Diebold Nixdorf

Submissão de palestras para GruPy-SP Day na Diebold Nixdorf dia 21/10/17

Bora palestrar na Diebold Nixdorf? Precisamos de 5 palestrantes.

Propostas

Coma seus vegetais

A ideia é fazer um bate papo sobre testes e explorar as ferramentas de BDD com Python.


- Entender o que é BDD e por que isso é diferente de TDD
- Vamos fazer alguns testes em live code mesmo
- Gerando documentação viva das funcionalidade em linguagem natural com gherkin
- Fazer testes funcionais e explorar seu sistema testando requisitos


Vamos usar básicamente o behave e tentar enteder seus outputs e seus hooks e como isso pode ajudar em um desenvolvimento mais testável e tentar entender um pouco mais a cultura de testes relacionados a comportamento.

Coma seus vegetais

A ideia é fazer um bate papo sobre testes e explorar as ferramentas de BDD com Python.


 


- Entender o que é BDD e por que isso é diferente de TDD
- Vamos fazer alguns testes em live code mesmo
- Gerando documentação viva das funcionalidade em linguagem natural com gherkin
- Fazer testes funcionais e explorar seu sistema testando requisitos


 


Vamos usar básicamente o behave e tentar enteder seus outputs e seus hooks e como isso pode ajudar em um desenvolvimento mais testável e tentar entender um pouco mais a cultura de testes relacionados a comportamento.

Coma seus vegetais

Quanto tempo faz que você desenvolve software como faz comida na sua casa?


Um bifinho, um bacon sem se preocupar com o quanto isso é saudável?


O objetivo dessa talk é fazer você começar a desenvolver software com pepinos, rabanetes, pickles e pensar em como seu software se comporta, que felizmente, ou infelizmente, não é como seu estômago.

Como eu ganho 100k por mês com python

A propostadessa talk é discutir a importância do software livre e como isso se insere na sociedade.

Como fazer uma API rest segura [40m]

A ideia é usar flask e discutir o uso de secret-key para geração de rotas seguras. A ideia dessa talk é fazer live code, criar documentação da nossa API e é claro, segurança.


 


- Iniciar um projeto com flask do zero
- Fazer testes automatizados
- Usar swagger
- Segurança como centro do desenvolvimento


 


 


 


 


 


 


 


 


 


 


 


 


 


 


 


 


# Essa é palestra totalmente uma piada, mas vai ser divertido

Criptografia antes de Turing. Uma palestra interativa

Essa palestra é uma proposta de contar um pouco da história da criptografia, olharmos alguns algoritmos antes dos computadores e lançar desafios uns aos outros.


 


Roteiro:


- Um pouco da história da criptografia
- Primeiros algorítimos
- Usando KY em uma circunferência
- Desafios a moda antiga (Papel e caneta)


 


Se der certo, posso continuar a história em outro evento.

Desmistificando a programação funcional com python

- Introdução
-- Pra que funcional?
-- Qual o hype funcional?


- O mundo funcional sem imports
-- lambdas são realmente ilegíveis?
-- Como funcional as expressões geradoras
-- funções funcionais (map,sum,filter,zip)


- Functools
-- Tuplas não são listas imutáveis
-- Particionando sequências
-- wraps, closures e escopo de variáveis


- Itertools
-- Trabalhando com sequências
-- Usando filtos inversos
-- Ranges detalhados com Count

Funtores, Funtores aplicativos e monads ilustrados em Python

Bom, a ideia é simples. Discutir alguns conceitos básicos e fundamentais da programação funcional e que não estão presentes em Python de maneira nativa. Vamos tentar olhar para os recursos em Python fazendo um paralelo com base na documentação/código haskell.


 


- Aprender programação funcional pode ser bom pra você
- Funções puras, elementos puros.
- O que exatamente é um funtor?
- Quando um funtor se torna aplicativo?
- map e fmap
- Basicamente monads.

HDFS + MapReduceLib

- Uma breve história do HDFS (Hadoop Distributed File System) e sua aplicação;


- Como fazer uso do HDFS usando python;


- Manipulando jobs de MapReduce com streaming e python

Muito mais que map, filter e reduce

A ideia desse tutorial é transformar a mentalidade de que python é uma linguagem ruim para usar programação funcional. Vamos entender como funcionam as features e o que python pode nos proporcionar de melhor. Vale resaltar que o objetivo de tudo não é vender programação funcional como o centro do universo, mas mostrar como mesclar conceitos declarativos para que você escreva um código mais simples e clean.


 


Pré-requisitos:


- Python básico
- Saber o que é uma função
- Se souber usar lambda será ótimo, se não a gente explica
 - Um computador com Python3 (de preferencia 3.6)


Roteiro:
- Uma introdução não axiomática a teoria dos conjuntos.
- Um pouco sobre iteradores
- Funções, funções e funções
- - Funções totais
- - Funções parciais
- - Funções anônimas
- Closures, o centro do universo
- Composição/Pipelines
- lambdas para vencer
- Bibliotecas não builtins que pode te ajudar

Muito mais que map, filter e reduce

A ideia desse palestra é transformar a mentalidade de que python é uma linguagem ruim para usar programação funcional. Vamos entender como funcionam as features e o que python pode nos proporcionar de melhor. Vale resaltar que o objetivo de tudo não é vender programação funcional como o centro do universo, mas mostrar como mesclar conceitos declarativos para que você escreva um código mais simples e clean.


Pré-requisitos:


- Python básico
- Saber o que é uma função
- Se souber usar lambda será ótimo, se não a gente explica


Roteiro:
- Uma introdução não axiomática a teoria dos conjuntos.
- Um pouco sobre iteradores
- Funções, funções e funções
- - Funções totais
- - Funções parciais
- - Funções anônimas
- Closures, o centro do universo
- Composição/Pipelines
- lambdas para vencer
- Bibliotecas não builtins que pode te ajudar

Vamos construir um parser live-code (o objetivo é esse)

Muito mais que map, filter e reduce

A ideia desse tutorial é transformar a mentalidade de que python é uma linguagem ruim para usar programação funcional. Vamos entender como funcionam as features e o que python pode nos proporcionar de melhor. Vale resaltar que o objetivo de tudo não é vender programação funcional como o centro do universo, mas mostrar como mesclar conceitos declarativos para que você escreva um código mais simples e clean.


 


Pré-requisitos:


 


- Python básico
- Saber o que é uma função
- Se souber usar lambda será ótimo, se não a gente explica
 - Um computador com Python3 (de preferencia 3.7)


 


Roteiro:
- Uma introdução não axiomática a teoria dos conjuntos.
- Um pouco sobre iteradores
- Funções, funções e funções
- - Funções totais
- - Funções parciais
- - Funções anônimas
- Closures, o centro do universo
- Composição/Pipelines
- lambdas para vencer
- Bibliotecas não builtins que pode te ajudar

Palestra - O temido map

Um bate papo descontraído sobre aplicações da função map e todas as suas variações.


Conteúdo:


- Map, pra que? tenho listcomp!
- - Diferenças entre o map das versões 2 e 3
- - Por que o map no python 3 não retorna uma lista?
- - Como fazer lazy map no python2?
- - - Scala lambda (_)
- fn.uniform
- - Uma padronização para lazy nos pythons


- Eliminando Loops
- - O Poder oculto dos lambdas em maps
- - Um for sem for
- - Um while sem while


- Pool maps
- - Que raios são chunks?
- -imap
- - imap_unordered
- - map
- - map_async
- - startmap
- - starmap_async

Pode dar bom (pdb) - reflexões filosóficas sobre desenvolver sem testar [45min]

Uma talk completamente descontraída e cheias de piadas sobre debugger.


- Logar ou printar? Eis a questão
- pdb é de comer?
- Como pode dar bom
- Modo interativo
- Comandos principais
- Intão pode dar bom (ipdb)

Para todos os níveis, se sabe escrever código, sabe debuggar.


 


<3

Porque meus testes não são bons?

A ideia dessa talk é mostrar como fazer escolhas melhores de valores de teste, para conseguir obter o feedback correto dos seus testes. Pretendo conversar um pouco sobre testes em geral, mas focar em testes de mutação. Conversar um pouco sobre o que são e como se alimentam.


Vamos usar ast e unittest.

Por que você ainda não está usando TOX?

A ideia dessa talk é explicar por que o tox é o test runner mais usado de todos os pythonistas. Sério, procure um projeto grande e o arquivo tox.ini está lá.


 


Roteiro:


- O que é e pra que serve o tox?
- Como ele funciona?
- Pq preciso disso?
- Extensões que podem fazer sua experiência ser ainda melhor

Fora o tox, #justPython

Python e os efeitos colaterais

Python é um ótimo remédio para todas as doenças, mas sua utilização causa efeitos colaterias. O objetivo dessa talk é ler a bula.


 


- O que são side effects


- Tipos de side effecs (IOs de todos os tipos)


- Como previnir e tratar side effects


 


A ideia principal dessa talk é diminuir o sofrimento com python e como sobreviver aos efeitos colaterais desse remédio

Quanto valem seus testes?

Um bate-papo descontraído recheado de livecode sobre testes.


 


Vamos falar um pouco sobre TDD, BDD, testes unitários, documentação de código, requisitos e afins.. 


Tópicos:


. O quanto você testa?
. Testar vale a pena?
. Quanto valor seus testes geram?
. Mão na massa:
.. Testando unidades
.. Testando funcionalidades
.. Gerando documentação

Quem quiser acompanhar leve o note com o Behave e o selenium 3 (com o driver do seu browser favorito)

[Talk] Por que não falar de programação funcional?

A proposta é falar de funcional com python sem assustar ninguém. Compartilhar ideias sem falar de matemática e rever alguns pontos interessantes em python que podem gerar menos efeito colateral e mais eficiencia.


Tópicos utópicos:


- Functors, catamorfismo e monads (O inicio do entendimento de coisa nenhuma)
- Antes de tudo lazy ou eager? (yield, return, gens e defs)
- Funções obsoletas ainda fazem sentido? (map, filter, reduce e callbacks)
- Variáveis livres? nonlocal? que isso? (__call__ e closures)


A ideia é simples, fazer algo inteligível mesmo pra quem não vem Lisp/Haskell entender um pouco de tudo

TDD e Flask [4hrs]

Lembra aquele momento em que você estava super feliz porque tudo estav dando certo, mas aí veio um bug estragou toda a sua felicidade? É sempre nesse momento que vemos a importância dos testes. Pois então, vamos tentar nos preparar para que isso não aconteça mais?


A ideia desse tutorial é construir uma API REST para um CRUD com TDD.


 


Vamos ver um pouco sobre TDD, cobertura de código, testrunners, integração continua (se a internet permitir) e claro Flask, pq flask é amor <3


 


Não a necessidade de conhecimento prévio em flask ou em testes. Mas, caso você já tenha conhecimento em alguma das partes vai ser ótimo aparecer por lá para fazer um par com alguém.

Uma introdução a características funcionais do python

Pretendo abordar nessa palestra uma visão superficial sobre:


 


1. Funções como objeto (alta ordem e primeira classe)


3. Diferenças entre geradores e iteradores


2. Funções Lambda


3. Biblioteca Operator


4. Funções Map,Reduce, Filter, Sum


 


Se sobrar tempo


5. Compreensão de listas