SlideShare uma empresa Scribd logo
Introdução ao Python
  (& Web Services!)

Faculdade Anglo-Americano, Caxias do Sul,
                   RS
         17 de Setembro de 2010
Agenda

‣ Quem sou eu?
‣ O que é Python?
‣ Introdução ao Python
‣ Web Services com Python
‣ Recados Finais
Quem sou eu?
‣ Dorneles “déo” Tremea
‣ Diretor X3ng Web Technology
‣ Desenvolvedor Senior Enfold
  Systems (Plone)

‣ Presidente Associação Python Brasil
‣ Vice-Presidente do GTiC Serra
  Gaúcha

‣ Apenas um rapaz latino
O que é Python?
‣ Linguagem programação de
  propósito geral

‣ Tipagem dinâmica e forte
‣ Sintaxe concisa e clara
‣ Recursos poderosos na biblioteca
  padrão

‣ Modelo de desenvolvimento
  comunitário
Histórico
‣ Dezembro 1989: Criada pelo
  holandês
  Guido van Rossum

‣ Fevereiro 1991: Código publicado
  em alt.sources (versão 0.9.0)

‣ Janeiro 1994: Lançada versão 1.0
  (1.2, 1.4, 1.6)

‣ Outubro 2000: Série 2.x (2.0, 2.1,
  2.2, 2.3, 2.4, 2.5 2.6, 2.7)
Implementações
‣ CPython: Python implementado em
  C

‣ Jython: Python implementado em
  Java

‣ IronPython: Python implementado
  para .NET

‣ PyPy: Python implementado em
  Python!
Interpretador

‣ Um dos grandes trunfos da
  linguagem

‣ Permite executar o código
  diretamente
Indentação
‣ Linguagem de fácil leitura
‣ Sem pontuação/delimitadores
  desnecessários

‣ Separação de blocos de código por
  espaços

‣ Indentação precisa ser consistente
‣ Obrigatória!
Palavras Reservadas
‣   and        del       from     not      while

‣   as         elif      global   or       with

‣   assert     else      if       pass     yield

‣   break      except    import   print

‣   class      exec      in       raise

‣   continue   finally   is       return

‣   def        for       lambda   try
Operadores

‣   +    -    *    **    /     //    %

‣   <<   >>   &    |     ^     ~

‣   <    >    <=   >=    ==    !=    <>

‣   +=   -=   *=   /=    //=   %=

‣   &=   |=   ^=   >>=   <<=   **=
Funções Built-in
‣   abs    all   any    bin    chr    cmp    hex    oct

‣   bool    complex     divmod    iter      ord    pow

‣   delattr      getattr   setattr      hasattr      id

‣   enumerate     max    min    len    range      sum

‣   dict    float   int    list      str    set    tuple

‣   print   globals      locals      dir    help    repr

‣   input   isinstance        property      type    zip

‣   ...
Exceções
‣   try/except/finally/else



‣   Exception    AttributeError   KeyError

‣   IOError      ImportError      NameError

‣   ValueError   StopIteration    SystemExit

‣   ...
Biblioteca Padrão

‣ Baterias incluídas! :-)
‣ Módulos principais disponíveis na
  instalação padrão

‣ Módulos adicionais diponíveis no
  repositório de pacotes da
  comunidade: PyPI
Mão na massa! :-)

‣ Estruturas condicionais
‣ Laços de repetição
‣ Tratamento de exceções
‣ Manipulação de arquivos
‣ Criação de funções e classes
Web Services

‣ Sopa de letrinhas!
‣ XML / DTD / XSD / XPath / ...
‣ RPC / CORBA / RMI / DCOM / ...
‣ UDDI / WDSL / SOAP / REST / ...
‣ :-(
Preparação do
‣ Instalando pacotes adicionais
‣ Baixar arquivo (virtualenv.py):
  http://tinyurl.com/virtualenv-trunk

‣ Executar:
  python virtualenv.py webservices

‣ Executar:
  cd webservices
  source bin/activate
  (linux)
Biblioteca suds

‣ Implementação simples de um
  Cliente SOAP

‣ https://fedorahosted.org/suds/wiki/
  Documentation

‣ Instalação:
  pip install suds
Dados Copa África
‣ Exemplo:
 from suds.client import Client
 url = "http://
 footballpool.dataaccess.eu/data/
 info.wso?WSDL"
 soap = Client(url)
 print soap
 print soap.RedCardsTotal()
Outros Web

‣ http://www.webservicex.net
‣ http://www.xmethods.net
‣ Google!
Últimos Recados

‣ Estatísticas
‣ Associação Python Brasil
‣ Grupos de Usuários
‣ Eventos
Estatísticas
‣ http://br.groups.yahoo.com/group/
 python-brasil: 3299 membros

‣ http://br.groups.yahoo.com/group/
 zope-pt:
 1096 membros

‣ http://groups.google.com/group/
 django-brasil: 1479 membros

‣ Associados APyB: 156 membros
Associação Python
‣ O que é? O que faz? Por quê?
‣ Estruturada (e burocrática)
‣ Reuniões quinzenais dos conselhos
  e diretoria

‣ Como fazer parte?
‣ http://associacao.python.org.br
Grupos de Usuários
‣ Comunidades regionais autônomas
‣ Abrangência nacional
‣ http://python.org.br/wiki/
  GrupoDeUsuarios

‣ PythOnRio, GruPy-SP / PUG-SP,
  PUG-CE, GruPy-RS...

‣ APyB pode ajudar
‣ Subdomínios python.org.br
Eventos
‣ PythonBrasil[6]: evento nacional da
  comunidade Python, em sua sexta
  edição!

‣ De 21 a 23 de outubro de 2010 em
  Curitiba/PR

‣ Inscrições abertas, participe!
‣ http://www.pythonbrasil.org.br
Contato

‣ Muito obrigado!
‣ Dorneles Treméa
  <deo@python.org.br>

‣ Twitter: @dorneles, @apyb,
  @pythonbrasil

Mais conteúdo relacionado

Mais procurados

Programando em Go
Programando em GoProgramando em Go
Django: desenvolvendo aplicações web de maneira simples e rápida!
Django: desenvolvendo aplicações web de maneira simples e rápida!Django: desenvolvendo aplicações web de maneira simples e rápida!
Django: desenvolvendo aplicações web de maneira simples e rápida!
Felipe Queiroz
 
Tutorial Django + Python
Tutorial Django + PythonTutorial Django + Python
Tutorial Django + Python
Mateus Padua
 
Introdução ao framework Django
Introdução ao framework DjangoIntrodução ao framework Django
Introdução ao framework Django
Eduardo Palma
 
Visão geral type script
Visão geral type scriptVisão geral type script
Visão geral type script
João Talles Dantas Batista
 
Django - Desenvolvimento web ágil com Python
Django - Desenvolvimento web ágil com PythonDjango - Desenvolvimento web ágil com Python
Django - Desenvolvimento web ágil com Python
Igor Sobreira
 
Como fazer boas libs
Como fazer boas libs Como fazer boas libs
Como fazer boas libs
Vinta Software
 
TypeScript - Campus party 2013
TypeScript - Campus party 2013TypeScript - Campus party 2013
TypeScript - Campus party 2013
Giovanni Bassi
 
Testes com javascript
Testes com javascriptTestes com javascript
Testes com javascript
Laís Lima
 
Tdd em django sem desculpas versao final
Tdd em django sem desculpas versao finalTdd em django sem desculpas versao final
Tdd em django sem desculpas versao final
Adriano Petrich
 
Frameworks PHP
Frameworks PHPFrameworks PHP
Frameworks PHP
Augusto Pascutti
 
Python na Web
Python na WebPython na Web
Python na Web
Igor Sobreira
 
Vagrant você deveria está usando
Vagrant   você deveria está usandoVagrant   você deveria está usando
Vagrant você deveria está usando
Hudson Brendon
 
Integração contínua - Você não tem dsculpa para não usar
Integração contínua - Você não tem dsculpa para não usarIntegração contínua - Você não tem dsculpa para não usar
Integração contínua - Você não tem dsculpa para não usar
Thiago Paes
 
Domando a irreversibilidade com feature flags
Domando a irreversibilidade com feature flagsDomando a irreversibilidade com feature flags
Domando a irreversibilidade com feature flags
Hugo Bessa
 
Canivete python
Canivete pythonCanivete python
Canivete python
Anderson Dantas
 
Mini curso de django
Mini curso de djangoMini curso de django
Mini curso de django
rosenclever
 
Escalando apps com React e Type Script e SOLID
Escalando apps com React e Type Script e SOLIDEscalando apps com React e Type Script e SOLID
Escalando apps com React e Type Script e SOLID
Ruben Marcus Luz Paschoarelli
 
PostgreSQL Rock Star
PostgreSQL Rock StarPostgreSQL Rock Star
PostgreSQL Rock Star
Fabio Telles Rodriguez
 
Desenvolvimento Mobile Web e PHP na FIPAR
Desenvolvimento Mobile Web e PHP na FIPARDesenvolvimento Mobile Web e PHP na FIPAR
Desenvolvimento Mobile Web e PHP na FIPAR
Bruno Fernandes "PorKaria"
 

Mais procurados (20)

Programando em Go
Programando em GoProgramando em Go
Programando em Go
 
Django: desenvolvendo aplicações web de maneira simples e rápida!
Django: desenvolvendo aplicações web de maneira simples e rápida!Django: desenvolvendo aplicações web de maneira simples e rápida!
Django: desenvolvendo aplicações web de maneira simples e rápida!
 
Tutorial Django + Python
Tutorial Django + PythonTutorial Django + Python
Tutorial Django + Python
 
Introdução ao framework Django
Introdução ao framework DjangoIntrodução ao framework Django
Introdução ao framework Django
 
Visão geral type script
Visão geral type scriptVisão geral type script
Visão geral type script
 
Django - Desenvolvimento web ágil com Python
Django - Desenvolvimento web ágil com PythonDjango - Desenvolvimento web ágil com Python
Django - Desenvolvimento web ágil com Python
 
Como fazer boas libs
Como fazer boas libs Como fazer boas libs
Como fazer boas libs
 
TypeScript - Campus party 2013
TypeScript - Campus party 2013TypeScript - Campus party 2013
TypeScript - Campus party 2013
 
Testes com javascript
Testes com javascriptTestes com javascript
Testes com javascript
 
Tdd em django sem desculpas versao final
Tdd em django sem desculpas versao finalTdd em django sem desculpas versao final
Tdd em django sem desculpas versao final
 
Frameworks PHP
Frameworks PHPFrameworks PHP
Frameworks PHP
 
Python na Web
Python na WebPython na Web
Python na Web
 
Vagrant você deveria está usando
Vagrant   você deveria está usandoVagrant   você deveria está usando
Vagrant você deveria está usando
 
Integração contínua - Você não tem dsculpa para não usar
Integração contínua - Você não tem dsculpa para não usarIntegração contínua - Você não tem dsculpa para não usar
Integração contínua - Você não tem dsculpa para não usar
 
Domando a irreversibilidade com feature flags
Domando a irreversibilidade com feature flagsDomando a irreversibilidade com feature flags
Domando a irreversibilidade com feature flags
 
Canivete python
Canivete pythonCanivete python
Canivete python
 
Mini curso de django
Mini curso de djangoMini curso de django
Mini curso de django
 
Escalando apps com React e Type Script e SOLID
Escalando apps com React e Type Script e SOLIDEscalando apps com React e Type Script e SOLID
Escalando apps com React e Type Script e SOLID
 
PostgreSQL Rock Star
PostgreSQL Rock StarPostgreSQL Rock Star
PostgreSQL Rock Star
 
Desenvolvimento Mobile Web e PHP na FIPAR
Desenvolvimento Mobile Web e PHP na FIPARDesenvolvimento Mobile Web e PHP na FIPAR
Desenvolvimento Mobile Web e PHP na FIPAR
 

Semelhante a Introdução ao Python & Web Services

Introdução a linguagem Python
Introdução a linguagem PythonIntrodução a linguagem Python
Introdução a linguagem Python
Luciano Ramalho
 
Symfony - PHP pra gente grande
Symfony - PHP pra gente grandeSymfony - PHP pra gente grande
Symfony - PHP pra gente grande
Luã de Souza
 
Performance de verdade com Phalcon Framework
Performance de verdade com Phalcon FrameworkPerformance de verdade com Phalcon Framework
Performance de verdade com Phalcon Framework
Jaime Neto
 
Phpjedi 090307090434-phpapp01 2
Phpjedi 090307090434-phpapp01 2Phpjedi 090307090434-phpapp01 2
Phpjedi 090307090434-phpapp01 2PrinceGuru MS
 
Semana Acadêmica ICET - Feevale - 12/04/2014
Semana Acadêmica ICET - Feevale - 12/04/2014Semana Acadêmica ICET - Feevale - 12/04/2014
Semana Acadêmica ICET - Feevale - 12/04/2014
Getup Cloud
 
Python - Programando em alto nível
Python - Programando em alto nívelPython - Programando em alto nível
Python - Programando em alto nível
Igor Sobreira
 
Palestra Desenvolvimento Ágil para Web com ROR UVA
Palestra Desenvolvimento Ágil para Web com ROR UVAPalestra Desenvolvimento Ágil para Web com ROR UVA
Palestra Desenvolvimento Ágil para Web com ROR UVA
Thiago Cifani
 
Seu framework é melhor pra quê?
Seu framework é melhor pra quê?Seu framework é melhor pra quê?
Seu framework é melhor pra quê?
Jaime Neto
 
Python No Terra (2006-12-21)
Python No Terra  (2006-12-21)Python No Terra  (2006-12-21)
Python No Terra (2006-12-21)
Rudá Moura
 
Swift na linha de comando
Swift na linha de comandoSwift na linha de comando
Swift na linha de comando
Tales Andrade
 
Source-to-container no mundo real
Source-to-container no mundo realSource-to-container no mundo real
Source-to-container no mundo real
Evandro Silvestre
 
BeavOps : Como o Python ajudou a integrar o mundo DevOps
BeavOps : Como o Python ajudou a integrar o mundo DevOpsBeavOps : Como o Python ajudou a integrar o mundo DevOps
BeavOps : Como o Python ajudou a integrar o mundo DevOps
4LinuxCursos
 
OpenShift: NoSQL "a la carte" num PaaS 100% Open Source
OpenShift: NoSQL  "a la carte"  num PaaS 100% Open SourceOpenShift: NoSQL  "a la carte"  num PaaS 100% Open Source
OpenShift: NoSQL "a la carte" num PaaS 100% Open Source
Edgar Silva
 
Desenvolvendo aplicações web com python e web2py
Desenvolvendo aplicações web com python e web2pyDesenvolvendo aplicações web com python e web2py
Desenvolvendo aplicações web com python e web2py
Gilson Filho
 
LabMM3 - Aula teórica 04
LabMM3 - Aula teórica 04LabMM3 - Aula teórica 04
LabMM3 - Aula teórica 04Carlos Santos
 
Esta começando a programar para a web? Então começe com Rails
Esta começando a programar para a web? Então começe com RailsEsta começando a programar para a web? Então começe com Rails
Esta começando a programar para a web? Então começe com Rails
ismaelstahelin
 
Jsummit 2014
Jsummit 2014Jsummit 2014
Jsummit 2014
Otávio Santana
 
Python 08
Python 08Python 08
Python 08
Bruno Catão
 
Container revolucao
Container revolucaoContainer revolucao
Container revolucao
Fernando Ike
 

Semelhante a Introdução ao Python & Web Services (20)

Puppet webcast 4linux
Puppet webcast 4linuxPuppet webcast 4linux
Puppet webcast 4linux
 
Introdução a linguagem Python
Introdução a linguagem PythonIntrodução a linguagem Python
Introdução a linguagem Python
 
Symfony - PHP pra gente grande
Symfony - PHP pra gente grandeSymfony - PHP pra gente grande
Symfony - PHP pra gente grande
 
Performance de verdade com Phalcon Framework
Performance de verdade com Phalcon FrameworkPerformance de verdade com Phalcon Framework
Performance de verdade com Phalcon Framework
 
Phpjedi 090307090434-phpapp01 2
Phpjedi 090307090434-phpapp01 2Phpjedi 090307090434-phpapp01 2
Phpjedi 090307090434-phpapp01 2
 
Semana Acadêmica ICET - Feevale - 12/04/2014
Semana Acadêmica ICET - Feevale - 12/04/2014Semana Acadêmica ICET - Feevale - 12/04/2014
Semana Acadêmica ICET - Feevale - 12/04/2014
 
Python - Programando em alto nível
Python - Programando em alto nívelPython - Programando em alto nível
Python - Programando em alto nível
 
Palestra Desenvolvimento Ágil para Web com ROR UVA
Palestra Desenvolvimento Ágil para Web com ROR UVAPalestra Desenvolvimento Ágil para Web com ROR UVA
Palestra Desenvolvimento Ágil para Web com ROR UVA
 
Seu framework é melhor pra quê?
Seu framework é melhor pra quê?Seu framework é melhor pra quê?
Seu framework é melhor pra quê?
 
Python No Terra (2006-12-21)
Python No Terra  (2006-12-21)Python No Terra  (2006-12-21)
Python No Terra (2006-12-21)
 
Swift na linha de comando
Swift na linha de comandoSwift na linha de comando
Swift na linha de comando
 
Source-to-container no mundo real
Source-to-container no mundo realSource-to-container no mundo real
Source-to-container no mundo real
 
BeavOps : Como o Python ajudou a integrar o mundo DevOps
BeavOps : Como o Python ajudou a integrar o mundo DevOpsBeavOps : Como o Python ajudou a integrar o mundo DevOps
BeavOps : Como o Python ajudou a integrar o mundo DevOps
 
OpenShift: NoSQL "a la carte" num PaaS 100% Open Source
OpenShift: NoSQL  "a la carte"  num PaaS 100% Open SourceOpenShift: NoSQL  "a la carte"  num PaaS 100% Open Source
OpenShift: NoSQL "a la carte" num PaaS 100% Open Source
 
Desenvolvendo aplicações web com python e web2py
Desenvolvendo aplicações web com python e web2pyDesenvolvendo aplicações web com python e web2py
Desenvolvendo aplicações web com python e web2py
 
LabMM3 - Aula teórica 04
LabMM3 - Aula teórica 04LabMM3 - Aula teórica 04
LabMM3 - Aula teórica 04
 
Esta começando a programar para a web? Então começe com Rails
Esta começando a programar para a web? Então começe com RailsEsta começando a programar para a web? Então começe com Rails
Esta começando a programar para a web? Então começe com Rails
 
Jsummit 2014
Jsummit 2014Jsummit 2014
Jsummit 2014
 
Python 08
Python 08Python 08
Python 08
 
Container revolucao
Container revolucaoContainer revolucao
Container revolucao
 

Introdução ao Python & Web Services

  • 1. Introdução ao Python (& Web Services!) Faculdade Anglo-Americano, Caxias do Sul, RS 17 de Setembro de 2010
  • 2. Agenda ‣ Quem sou eu? ‣ O que é Python? ‣ Introdução ao Python ‣ Web Services com Python ‣ Recados Finais
  • 3. Quem sou eu? ‣ Dorneles “déo” Tremea ‣ Diretor X3ng Web Technology ‣ Desenvolvedor Senior Enfold Systems (Plone) ‣ Presidente Associação Python Brasil ‣ Vice-Presidente do GTiC Serra Gaúcha ‣ Apenas um rapaz latino
  • 4. O que é Python? ‣ Linguagem programação de propósito geral ‣ Tipagem dinâmica e forte ‣ Sintaxe concisa e clara ‣ Recursos poderosos na biblioteca padrão ‣ Modelo de desenvolvimento comunitário
  • 5. Histórico ‣ Dezembro 1989: Criada pelo holandês Guido van Rossum ‣ Fevereiro 1991: Código publicado em alt.sources (versão 0.9.0) ‣ Janeiro 1994: Lançada versão 1.0 (1.2, 1.4, 1.6) ‣ Outubro 2000: Série 2.x (2.0, 2.1, 2.2, 2.3, 2.4, 2.5 2.6, 2.7)
  • 6. Implementações ‣ CPython: Python implementado em C ‣ Jython: Python implementado em Java ‣ IronPython: Python implementado para .NET ‣ PyPy: Python implementado em Python!
  • 7. Interpretador ‣ Um dos grandes trunfos da linguagem ‣ Permite executar o código diretamente
  • 8. Indentação ‣ Linguagem de fácil leitura ‣ Sem pontuação/delimitadores desnecessários ‣ Separação de blocos de código por espaços ‣ Indentação precisa ser consistente ‣ Obrigatória!
  • 9. Palavras Reservadas ‣ and del from not while ‣ as elif global or with ‣ assert else if pass yield ‣ break except import print ‣ class exec in raise ‣ continue finally is return ‣ def for lambda try
  • 10. Operadores ‣ + - * ** / // % ‣ << >> & | ^ ~ ‣ < > <= >= == != <> ‣ += -= *= /= //= %= ‣ &= |= ^= >>= <<= **=
  • 11. Funções Built-in ‣ abs all any bin chr cmp hex oct ‣ bool complex divmod iter ord pow ‣ delattr getattr setattr hasattr id ‣ enumerate max min len range sum ‣ dict float int list str set tuple ‣ print globals locals dir help repr ‣ input isinstance property type zip ‣ ...
  • 12. Exceções ‣ try/except/finally/else ‣ Exception AttributeError KeyError ‣ IOError ImportError NameError ‣ ValueError StopIteration SystemExit ‣ ...
  • 13. Biblioteca Padrão ‣ Baterias incluídas! :-) ‣ Módulos principais disponíveis na instalação padrão ‣ Módulos adicionais diponíveis no repositório de pacotes da comunidade: PyPI
  • 14. Mão na massa! :-) ‣ Estruturas condicionais ‣ Laços de repetição ‣ Tratamento de exceções ‣ Manipulação de arquivos ‣ Criação de funções e classes
  • 15. Web Services ‣ Sopa de letrinhas! ‣ XML / DTD / XSD / XPath / ... ‣ RPC / CORBA / RMI / DCOM / ... ‣ UDDI / WDSL / SOAP / REST / ... ‣ :-(
  • 16. Preparação do ‣ Instalando pacotes adicionais ‣ Baixar arquivo (virtualenv.py): http://tinyurl.com/virtualenv-trunk ‣ Executar: python virtualenv.py webservices ‣ Executar: cd webservices source bin/activate (linux)
  • 17. Biblioteca suds ‣ Implementação simples de um Cliente SOAP ‣ https://fedorahosted.org/suds/wiki/ Documentation ‣ Instalação: pip install suds
  • 18. Dados Copa África ‣ Exemplo: from suds.client import Client url = "http:// footballpool.dataaccess.eu/data/ info.wso?WSDL" soap = Client(url) print soap print soap.RedCardsTotal()
  • 19. Outros Web ‣ http://www.webservicex.net ‣ http://www.xmethods.net ‣ Google!
  • 20. Últimos Recados ‣ Estatísticas ‣ Associação Python Brasil ‣ Grupos de Usuários ‣ Eventos
  • 21. Estatísticas ‣ http://br.groups.yahoo.com/group/ python-brasil: 3299 membros ‣ http://br.groups.yahoo.com/group/ zope-pt: 1096 membros ‣ http://groups.google.com/group/ django-brasil: 1479 membros ‣ Associados APyB: 156 membros
  • 22. Associação Python ‣ O que é? O que faz? Por quê? ‣ Estruturada (e burocrática) ‣ Reuniões quinzenais dos conselhos e diretoria ‣ Como fazer parte? ‣ http://associacao.python.org.br
  • 23. Grupos de Usuários ‣ Comunidades regionais autônomas ‣ Abrangência nacional ‣ http://python.org.br/wiki/ GrupoDeUsuarios ‣ PythOnRio, GruPy-SP / PUG-SP, PUG-CE, GruPy-RS... ‣ APyB pode ajudar ‣ Subdomínios python.org.br
  • 24. Eventos ‣ PythonBrasil[6]: evento nacional da comunidade Python, em sua sexta edição! ‣ De 21 a 23 de outubro de 2010 em Curitiba/PR ‣ Inscrições abertas, participe! ‣ http://www.pythonbrasil.org.br
  • 25. Contato ‣ Muito obrigado! ‣ Dorneles Treméa <deo@python.org.br> ‣ Twitter: @dorneles, @apyb, @pythonbrasil

Notas do Editor

  1. - Diretor da X3ng, empresa ga&amp;#xFA;cha exportadora de servi&amp;#xE7;os. - Especialista em Gest&amp;#xE3;o do Conhecimento e Intelig&amp;#xEA;ncia Estrat&amp;#xE9;gica pela UCS. - Presidente da Associa&amp;#xE7;&amp;#xE3;o Python Brasil. - Vice-presidente do Grupo de TI e Comunica&amp;#xE7;&amp;#xE3;o da Serra Ga&amp;#xFA;cha. - Desenvolvedor s&amp;#xEA;nior na Enfold Systems. - Respons&amp;#xE1;vel por parte do lado i18n do Plone. - Colaborador de projetos FLOSS. - Gamer inveterado. - Pai-coruja, colorado e apreciador incondicional de novas tecnologias, culin&amp;#xE1;ria japonesa, sandu&amp;#xED;ches e do suco de ma&amp;#xE7;&amp;#xE3; noruegu&amp;#xEA;s.
  2. - Entidade sem fins lucrativos - Fundada em 22 de Junho de 2007 - Coordena os esfor&amp;#xE7;os nacionais de divulga&amp;#xE7;&amp;#xE3;o sobre Python - Mant&amp;#xE9;m a infraestrutura dos servidores dos diferentes sites - Aloca fundos para palestras sobre a linguagem - Objetivo de receber doa&amp;#xE7;&amp;#xF5;es dedut&amp;#xED;veis do IRPJ
  3. - Entidade sem fins lucrativos - Fundada em 22 de Junho de 2007 - Coordena os esfor&amp;#xE7;os nacionais de divulga&amp;#xE7;&amp;#xE3;o sobre Python - Mant&amp;#xE9;m a infraestrutura dos servidores dos diferentes sites - Aloca fundos para palestras sobre a linguagem - Objetivo de receber doa&amp;#xE7;&amp;#xF5;es dedut&amp;#xED;veis do IRPJ
  4. PythonBrasil[1], Campinas, Unicamp, 2005 PythonBrasil[2], Bras&amp;#xED;lia, Interlegis, 2006 PythonBrasil[3], Joinville, SOCIESC, 2007 PythonBrasil[4], Rio de Janeiro, UVA, 2008 PythonBrasil[5], Caxias do Sul, UCS, 2009 PythonBrasil[6], Curitiba, UFPR, 2010