18 de Outubro de 2014, FTEC - Caxias do Sul

Sobre

Este é o primeiro PyCaxias e o objetivo é movimentar a serra gaúcha! A região já sediou uma edição da Python Brasil e também é o berço de grandes nomes que contribuíram para que a comunidade Python tenha alcançado seu nível atual.

O evento ocorrerá no dia 18 de outubro na FTEC de Caxias do Sul e é um aquecimento para o Python Brasil que será poucas semanas depois.

Fotos

Algumas fotos do evento

Palestras

Miguel Grazziotin

Trabalho Remoto com Vikings: ferramentas e macetes de muito longe

Nessa palestra vou apresentar um pouco da nossa experiência adquirida com o tão falado (e às vezes muito sonhado) trabalho remoto, para tornar as coisas mais interessantes não contentes em trabalhar remotamente o resto da nossa equipe está na Suécia, então ninguém se comunica na língua nativa e temos um fuso horário para considerar, nesses quase dois anos aprendemos algumas nuances de trabalhar com pessoas com uma cultura tão diferente e para nossa (nem-tão-grande) surpresa Linus Torvalds estava errado com a sua famosa frase, código é o mais fácil entre todos os desafios. Definitivamente nós acreditamos que "Code is cheap, show me how you talk", comunicação é tão ou mais importante que habilidades técnicas, veja como estamos trabalhando com esse pessoal há quase dois anos sem falar uma palavra em sueco.

Miguel Grazziotin

Desenvolvedor de software com a mesma impressão de que não sabe nada há quase 10 anos, trabalhando principalmente com Ruby, Javascript, web em geral e seus frameworks. Empolga-se fácil com novas tecnologias e paradigmas mas principalmente com diferentes pessoas, relacionamentos e pontos de vista. Ciclista, agilista, "startupzista" e aspirante a kungfuzero.
Cesar Kawakami

Acelerando aplicações web com Gevent e programação concorrente

Na Geekie, escrevemos aplicações dinâmicas que chegam a atender vários milhões de requests diariamente. Para aumentar a eficiência dos nossos servidores e melhorar a velocidade aparente para o usuário, recorremos a técnicas de programação concorrente como o gevent em Python.
Venha nessa palestra aprender:
  • O que é o gevent: greenlets, corotinas, servidores baseados em eventos
  • Concorrência, paralelismo, programação assíncrona: o que são e quais as diferenças
  • Por que o gevent aumenta a eficiência e velocidade de aplicações web gevent, threads e multiprocessing: quando usar cada um deles
  • Exemplos básicos e passo-a-passo do que acontece quando um greenlet executa
  • Como adaptar sua aplicação para o gevent
  • Exemplos em frameworks web populares
  • Literatura recomendada

TimeZona: Como manter-se são lidando com tempo e timestamps em aplicações Python

"Levante a mão se você já se confundiu quanto a em qual timezone estão os timestamps no banco de dados, enfrentou dificuldades convertendo entre BRT e UTC, ou esbranquiçou alguns cabelos ao tentar parsear datas. Aqui você vai aprender as técnicas básicas de como lidar com datas, horas e timestamps em aplicações Python de diversos contextos.
Falaremos sobre:
  • Fusos horários: porque a maioria das bibliotecas de timezones são tão difíceis de usar, por que vários fusos horários são idiossincráticos e curiosidades
  • Bibliotecas: as melhores, e um passo-a-passo de como utilizá-las
  • Como desenhar o seu modelo de dados e sua aplicação para evitar a maioria dos problemas
  • Bônus de acordo com o tempo: cálculos de datas e calendários
  • Literatura recomendada

Cesar Kawakami

Cesar Kawakami é engenheiro formado pelo ITA e tem passagem por várias das melhores empresas de tecnologia do mundo, incluindo o Facebook nos EUA. É apaixonado por Python, competições de programação, violão, e hoje é tech lead na Geekie, empresa líder no Brasil em EdTech (estamos contratando!). Cesar também é conhecido por memoráveis palestras na Python Brasil, incluindo duas colaborações com Leonardo Rochael na Python Brasil 2013.
Rodrigo Almeida

O case do Geekie Games 2014: Lidando com performance, bugfixing e cooperative multithreading em sistemas distribuídos Python (30 mil sessões por dia, 5 milhões de requests por dia and growing!)

No geekie games 2014 temos milhares de usuários simultâneos usando uma plataforma de aprendizagem adaptativa composta por vários sistemas web independentes (arquitetura modular/distribuída - misto de Heroku e Google AppEngine) e a idéia da palestra é contar como foi nossa estratégia para lidar com o desafio de otimizar performance e encontrar causa raiz de bugs nesse cenário no qual fazemos muitas RPCs (muito tempo gasto em I/O) e no qual debugar performance e causa raiz de bugs envolve debugar vários sistemas ao mesmo tempo potencialmente. Isso tudo num projeto de alcance nacional onde receber 10000 usuários simultâneos ou ter 200 mil sessões por dia são uma realidade. Outline inicialmente pensado:
  • Apresentação rápida da plataforma Geekie: 5 sistemas principais, todos Python, misto de Heroku e Google AppEngine. Tudo isso formando um sistema de recomendação que altera a trilha de aprendizado de cada aluno a cada interação chave dele com o ambiente de estudos. Somos mais parecidos com o ""News Feed"" do Facebook do que com uma aplicação web padrão.
  • gevent como ferramenta para paralelização de código python I/O intensive
  • como lidamos com o lançamento nacional, sem ter uma previsibilidade boa de qual seria o volume inicial de acesso e qual seriam os gargalos de performance no início. Os mesmos sistemas que atendem o geekie games atendem todos os outros clientes da Geekie então o sistema cair não era uma opção!
  • como instrumentamos nossos sistemas pra conseguir enxergar rapidamente onde estavam os problemas, sejam eles problemas genéricos ou problemas afetando usuários específicos.
  • principais conclusões e aprendizados
  • Q&A

Rodrigo Almeida

Rodrigo Almeida é engenheiro de computação formado pelo ITA, tem passagem por diversas empresas do vale do silício (incluindo Google e Microsoft) e hoje é tech lead na Geekie, empresa líder do Brasil em EdTech que está contratando gente como vocë. E que também tem tradição com palestras boas :-)
Matheus Pereira

Desmistificando Built-in Functions, Lambda, List Comprehension…

Python é uma linguagem de programação simples, porém robusta, sofisticada e com diversos mecanismos poderosos como suas funções e listas.
Ahh, Python e suas peculiaridades! Built-in Functions, Lambda e List Comprehension? O que são? Por que são? O que fazem? De onde vem? De que se alimentam?
Serão apresentados alguns recursos (quase) avançados relacionados às funções e listas. Boa parte destes recursos são opcionais, mas conhecê-los, saber utilizá-los e principalmente entendê-los pode simplificar nossas tarefas de desenvolvimento e, também, deixar nosso código (nem sempre) mais claro.

Matheus Pereira

Bacharel em Ciência da Computação pela UCS - Universidade de Caxias do Sul. Professor - FTEC Caxias do Sul. Pesquisador e desenvolvedor Web - Instituto Communitas para o Desenvolvimento Humano e Tecnológico. Programador desde 2007. Organizador voluntário do TcheLinux Caxias do Sul e PyCaxias. Palestrante TcheLinux Caxias do Sul, Porto Alegre e Pelotas, PythonDay Santa Maria e FISL15.

Programação

Horário Palestra Palestrante
9h00 Recepção
9h20 Abertura
09h30 Desmistificando Built-in Functions, Lambda, List Comprehension... Matheus Pereira
10h10 Acelerando aplicações web com Gevent e programação concorrente Cesar Kawakami
10h50 Lightning talk Eduardo Erlo
11h00 TimeZona: Como manter-se são lidando com tempo e timestamps em aplicações Python Cesar Kawakami
11h45 Intervalo Almoço
13h30 Trabalho Remoto com Vikings: ferramentas e macetes de muito longe Miguel Grazziotin
14h10 Lightning talk Joelmir Ribacki
14h20 O case do Geekie Games 2014 Rodrigo Almeida
15h00 Lightning talk Bruno Barcarol Guimarães
15h10 Open Space
15h50 Encerramento

Local

FTEC - Caxias do Sul

R. Gustavo Ramos Sehbe, 107 - Bairro Cinquentenário. Caxias do Sul - Rio Grande do Sul

Apoio