SlideShare uma empresa Scribd logo
Pythonificando
a Universidade
Luciano Camargo Cruz
João Toss Molon
Matheus Pereira
Luciano Camargo Cruz
● Sócio da empresa Hadi.Com - Habitats Digitais para Comunidades.
● Desenvolvedor WEB, gerente de projetos, administrador de portais
Python/Zope/Plone e configurações de servidores;
● Desenvolvedor Python/Zope/Plone no Instituto Communitas e
HaDi.Com;
● Organizador voluntário TcheLinux Caxias do Sul 2013;
● Membro da Plone Foundation e Associação Python Brasil (APyB).
● Motoqueiro, Lutador, Pescador, Gaúcho, …
luciano@lccruz.net
@__lccruz__
João Toss Molon
● Pesquisador e Desenvolvedor Python/Zope/Plone no
Instituto Communitas e HaDiCom
● Graduando de Ciência da Computação da Universidade
de Caxias do Sul (último semestre o/)
● Membro da Plone Foundation
Matheus Pereira - matheper
Pesquisador e Desenvolvedor Python/Zope/Plone -
Instituto Communitas e HaDiCom
Professor - FTEC Faculdades
Graduado em Ciência da Computação - Universidade de
Caxias do Sul
Membro da Plone Foundation
Organizador voluntário TcheLinux Caxias do Sul 2013;
Palestrante nas horas vagas
http://www.matheper.com/
Camargo | Molon | Pereira
Python
● Iniciou em 1990;
● Guido van Rossum:
○ Holandês;
○ Matemático e Cientista da Computação;
○ Criar uma linguagem de nível elevado;
○ Sintaxe simples e de fácil compreensão.
● Python Software Foundation
http://www.python.org
“O importante é usar Python”
Dorneles Treméa
Camargo e Tavares
“Com Python, você só se preocupa com o
problema”
Luciano Camargo Cruz
Python
● Por que começar a usar Python?
○ Velocidade no desenvolvimento
○ Fácil de aprender
● Dá pra fazer tudo com Python
Python - UCS
● Contratação da X3NG para o desenvolvimento do portal
da universidade (Site):
○ Dorneles e Sidnei.
● Porta do CCET - 2003 - Plone - 5.000 usuários;
● Em 2007 virou o UCS Virtual - 2003 - Plone - 32.000
Pessoas;
● Utilização do Python em aula apenas por pessoas que
trabalharam na UCS.
● Foi iniciado uma pesquisa para criar um empacotador
de objetos de aprendizagem no padrão SCORM.
Combat Biplanes
❏ Sistemas Distribuídos e Computação Paralela
❏ Objetivo: desenvolver uma versão multiplayer do game
Combat Biplanes, com comunicação através de sockets
❏ Solução:
❏ SocketServer para comunicação via sockets
❏ pygame para interface do game
https://bitbucket.org/jtmolon/combatbiplanes
Sniffer
❏ Redes de Computadores
❏ Objetivo: capturar e analisar pacotes de dados
IPv6 e ICMPv6. Gerar relatórios com informações da
amostra coletada
❏ Solução:
❏ netaddr, scapy
❏ cairo, cairoplot
❏ pygtk
https://bitbucket.org/lccruz/sniffer
Sniffer
https://bitbucket.org/lccruz/sniffer
Saving Robots
❏ Computação Gráfica
❏ Objetivo: um robô deve recolher objetos espalhados
dentro de uma arena. Em 2D e 3D
❏ Solução:
❏ pygame para interface 2D
❏ Panda 3D para
https://bitbucket.org/jtmolon/combatbiplanes
Demoucron
❏ Teoria dos Grafos
❏ Objetivo: verificar a planaridade de um grafo aplicando
simplificações e algoritmos de teoria dos grafos
❏ Solução:
❏ Nenhuma biblioteca adicional
https://github.com/matheper/demoucron/
PyRO Checkers
❏ Sistemas distribuídos e computação paralela
❏ Objetivo: desenvolver um jogo de damas distribuído,
com comunicação cliente/servidor através de objeto
remoto
❏ Solução:
❏ PyRO - Python Remote Object
https://bitbucket.org/jtmolon/pyrocheckers
❏ Inteligência Artificial
❏ Objetivo: Resolvendo o Sudoku com algoritmos
genéticos
❏ Solução:
❏ Descrição dos operadores genéticos:
❏ Crossover:
❏ Os pais são selecionados atraveś do método do Torneio, é
selecionado dois pais, com isso é efetuado o Crossover de
um Cliclo.
Sudoku
https://bitbucket.org/lccruz/genetic.sudoku
❏ Solução:
❏ Mutação:
❏ É escolhido um filho entre dois de forma
randômica (choice), com esse filho é
sorteado uma linha e é feito uma troca de
posição entre os elementos da linha
Sudoku
https://bitbucket.org/lccruz/genetic.sudoku
❏ Solução:
❏ Execução, solução otíma:
Sudoku
https://bitbucket.org/lccruz/genetic.sudoku
❏ Sistemas Distribuídos e Computação Paralela
❏ Objetivo: desenvolver um sistema de compartilhamento
de arquivos utilizando sockets
❏ Solução:
❏ socket
❏ SocketServer
❏ threading
Napster
https://github.com/matheper/napster
❏ Formais e Compiladores
❏ Objetivo: desenvolver um Analisador Léxico e Sintático.
❏ Solução:
❏ Nenhuma biblioteca adicional
Translator ctovisualg
https://bitbucket.org/jtmolon/translator.ctovisualg
Sound Collide
❏ Computação Gráfica
❏ Objetivo: desenvolver alguma coisa para a matéria de
computação gráfica.
❏ Solução:
❏ desenvolvido um software que produz audio quando
colide com objeto, tudo é gerado aleatoriamente;
❏ pygame.
https://github.com/lccruz/sound_collision
Obrigado!
❏ Luciano Camargo Cruz (luciano@lccruz.net)
❏ João Toss Molon (jtmolon@gmail.com)
❏ Matheus Pereira (matheper@gmail.com)
https://github.com/lccruz/sound_collision

Mais conteúdo relacionado

PDF
Como se tornar um programador melhor - Saci 2017 IFSul Bagé
PDF
PaaS - OpenShift como plataforma pública
PDF
Porque python é legal! d
PPTX
Docker + Bancos de Dados: descomplicando a montagem de ambientes de Desenvolv...
PPTX
.NET Core 3.0 e ASP.NET Core 3.0: principais novidades - FCamara - Agosto-2019
PPT
Banco de Dados - Docker Compose + Bancos Relacionais: descomplicando a montag...
PDF
Computação Científica com Python 2013
Como se tornar um programador melhor - Saci 2017 IFSul Bagé
PaaS - OpenShift como plataforma pública
Porque python é legal! d
Docker + Bancos de Dados: descomplicando a montagem de ambientes de Desenvolv...
.NET Core 3.0 e ASP.NET Core 3.0: principais novidades - FCamara - Agosto-2019
Banco de Dados - Docker Compose + Bancos Relacionais: descomplicando a montag...
Computação Científica com Python 2013

Semelhante a Pythonificando a Universidade (20)

PDF
Computação Cientifíca com Python
PDF
Ecossistema Python
PDF
Python e suas aplicações
PDF
O que podemos fazer com Python?
PDF
Apostila_IC.pdf
PDF
Python - Programando em alto nível
PDF
Introdução à Programação em Python
PPT
Projeto para a faculdade? Canivete Python resolve!
PPTX
APRESENTAÇÃO DE PROGRAMAÇÃO EM PYTHON.pptx
PPT
Simpósio Unicruz: OpenCV + Python (parte 1)
PDF
Curso python
PDF
Computação Científica com SciPy - Brevíssimo Tutorial
PDF
Python brasil[6]
PDF
Python na Ciência da Computação - FLISOL 2011
PPTX
Palestra Apresentando Python e Suas Aplicações
PPT
Utilizando Python no Ensino Superior - PyConBrasil 3
PPTX
Introdução a programação em python d3
PDF
PDF
Python Zope Plone - Fiocruz
PPTX
PyFuncemeClimateTools
Computação Cientifíca com Python
Ecossistema Python
Python e suas aplicações
O que podemos fazer com Python?
Apostila_IC.pdf
Python - Programando em alto nível
Introdução à Programação em Python
Projeto para a faculdade? Canivete Python resolve!
APRESENTAÇÃO DE PROGRAMAÇÃO EM PYTHON.pptx
Simpósio Unicruz: OpenCV + Python (parte 1)
Curso python
Computação Científica com SciPy - Brevíssimo Tutorial
Python brasil[6]
Python na Ciência da Computação - FLISOL 2011
Palestra Apresentando Python e Suas Aplicações
Utilizando Python no Ensino Superior - PyConBrasil 3
Introdução a programação em python d3
Python Zope Plone - Fiocruz
PyFuncemeClimateTools
Anúncio

Mais de Matheus Pereira (13)

PDF
Dask - Parallelism for Machine Learning with Python
PDF
Semantic Collaboration Trajectories in Communities of Practice ITS 2018
PDF
Desenvolvimento Ágil de Aplicações Web com Python e Django
PDF
Web semântica
PDF
Web Social e Interoperabilidade Semântica
PDF
N'SAMAT - Um objeto de aprendizagem culturalmente contextualizado.
PDF
Stack Open Source para desenvolvimento do AoMercado
PDF
Pythonificando a Universidade 2
PDF
Git, o Universo e Tudo Mais
PDF
Desmistificando Built-in Functions, Lambda e List Comprehension...
PDF
Mantendo seu trabalho a salvo com git
PDF
Mantendo seu Tempo a salvo com Python e Git
PDF
Git init
Dask - Parallelism for Machine Learning with Python
Semantic Collaboration Trajectories in Communities of Practice ITS 2018
Desenvolvimento Ágil de Aplicações Web com Python e Django
Web semântica
Web Social e Interoperabilidade Semântica
N'SAMAT - Um objeto de aprendizagem culturalmente contextualizado.
Stack Open Source para desenvolvimento do AoMercado
Pythonificando a Universidade 2
Git, o Universo e Tudo Mais
Desmistificando Built-in Functions, Lambda e List Comprehension...
Mantendo seu trabalho a salvo com git
Mantendo seu Tempo a salvo com Python e Git
Git init
Anúncio

Último (19)

PDF
Otimizador de planejamento e execução no SAP Transportation Management, TM120...
PPTX
Aula16ManipulaçãoDadosssssssssssssssssssssssssssss
PDF
Apple Pippin Uma breve introdução. - David Glotz
PDF
COBITxITIL-Entenda as diferença em uso governança TI
PPTX
Como-se-implementa-um-softwareeeeeeeeeeeeeeeeeeeeeeeee.pptx
PDF
Gestão de transportes básica no SAP S/4HANA, S4611 Col20
PDF
Fullfilment AI - Forum ecommerce 2025 // Distrito e Total Express
PDF
Custos e faturamento no SAP S/4HANA Transportation Management, S4TM3 Col26
PDF
Mergulho profundo técnico para gestão de transportes no SAP S/4HANA, S4TM6 Col14
PDF
20250805_ServiceNow e a Arquitetura Orientada a Serviços (SOA) A Base para Ap...
PDF
Fundamentos de gerenciamento de ordens e planejamento no SAP TransportationMa...
PPTX
Aula 18 - Manipulacao De Arquivos python
PPTX
Gestao-de-Bugs-em-Software-Introducao.pptxxxxxxxx
PPTX
Programação - Linguagem C - Variáveis, Palavras Reservadas, tipos de dados, c...
PDF
Processos na gestão de transportes, TM100 Col18
PDF
Custos e liquidação no SAP Transportation Management, TM130 Col18
PPTX
BANCO DE DADOS - AULAS INICIAIS-sgbd.pptx
PPTX
Informática Aplicada Informática Aplicada Plano de Ensino - estudo de caso NR...
PDF
Aula04-Academia Heri- Tecnologia Geral 2025
Otimizador de planejamento e execução no SAP Transportation Management, TM120...
Aula16ManipulaçãoDadosssssssssssssssssssssssssssss
Apple Pippin Uma breve introdução. - David Glotz
COBITxITIL-Entenda as diferença em uso governança TI
Como-se-implementa-um-softwareeeeeeeeeeeeeeeeeeeeeeeee.pptx
Gestão de transportes básica no SAP S/4HANA, S4611 Col20
Fullfilment AI - Forum ecommerce 2025 // Distrito e Total Express
Custos e faturamento no SAP S/4HANA Transportation Management, S4TM3 Col26
Mergulho profundo técnico para gestão de transportes no SAP S/4HANA, S4TM6 Col14
20250805_ServiceNow e a Arquitetura Orientada a Serviços (SOA) A Base para Ap...
Fundamentos de gerenciamento de ordens e planejamento no SAP TransportationMa...
Aula 18 - Manipulacao De Arquivos python
Gestao-de-Bugs-em-Software-Introducao.pptxxxxxxxx
Programação - Linguagem C - Variáveis, Palavras Reservadas, tipos de dados, c...
Processos na gestão de transportes, TM100 Col18
Custos e liquidação no SAP Transportation Management, TM130 Col18
BANCO DE DADOS - AULAS INICIAIS-sgbd.pptx
Informática Aplicada Informática Aplicada Plano de Ensino - estudo de caso NR...
Aula04-Academia Heri- Tecnologia Geral 2025

Pythonificando a Universidade

  • 1. Pythonificando a Universidade Luciano Camargo Cruz João Toss Molon Matheus Pereira
  • 2. Luciano Camargo Cruz ● Sócio da empresa Hadi.Com - Habitats Digitais para Comunidades. ● Desenvolvedor WEB, gerente de projetos, administrador de portais Python/Zope/Plone e configurações de servidores; ● Desenvolvedor Python/Zope/Plone no Instituto Communitas e HaDi.Com; ● Organizador voluntário TcheLinux Caxias do Sul 2013; ● Membro da Plone Foundation e Associação Python Brasil (APyB). ● Motoqueiro, Lutador, Pescador, Gaúcho, … luciano@lccruz.net @__lccruz__
  • 3. João Toss Molon ● Pesquisador e Desenvolvedor Python/Zope/Plone no Instituto Communitas e HaDiCom ● Graduando de Ciência da Computação da Universidade de Caxias do Sul (último semestre o/) ● Membro da Plone Foundation
  • 4. Matheus Pereira - matheper Pesquisador e Desenvolvedor Python/Zope/Plone - Instituto Communitas e HaDiCom Professor - FTEC Faculdades Graduado em Ciência da Computação - Universidade de Caxias do Sul Membro da Plone Foundation Organizador voluntário TcheLinux Caxias do Sul 2013; Palestrante nas horas vagas http://www.matheper.com/
  • 5. Camargo | Molon | Pereira
  • 6. Python ● Iniciou em 1990; ● Guido van Rossum: ○ Holandês; ○ Matemático e Cientista da Computação; ○ Criar uma linguagem de nível elevado; ○ Sintaxe simples e de fácil compreensão. ● Python Software Foundation http://www.python.org
  • 7. “O importante é usar Python” Dorneles Treméa
  • 8. Camargo e Tavares “Com Python, você só se preocupa com o problema” Luciano Camargo Cruz
  • 9. Python ● Por que começar a usar Python? ○ Velocidade no desenvolvimento ○ Fácil de aprender ● Dá pra fazer tudo com Python
  • 10. Python - UCS ● Contratação da X3NG para o desenvolvimento do portal da universidade (Site): ○ Dorneles e Sidnei. ● Porta do CCET - 2003 - Plone - 5.000 usuários; ● Em 2007 virou o UCS Virtual - 2003 - Plone - 32.000 Pessoas; ● Utilização do Python em aula apenas por pessoas que trabalharam na UCS. ● Foi iniciado uma pesquisa para criar um empacotador de objetos de aprendizagem no padrão SCORM.
  • 11. Combat Biplanes ❏ Sistemas Distribuídos e Computação Paralela ❏ Objetivo: desenvolver uma versão multiplayer do game Combat Biplanes, com comunicação através de sockets ❏ Solução: ❏ SocketServer para comunicação via sockets ❏ pygame para interface do game https://bitbucket.org/jtmolon/combatbiplanes
  • 12. Sniffer ❏ Redes de Computadores ❏ Objetivo: capturar e analisar pacotes de dados IPv6 e ICMPv6. Gerar relatórios com informações da amostra coletada ❏ Solução: ❏ netaddr, scapy ❏ cairo, cairoplot ❏ pygtk https://bitbucket.org/lccruz/sniffer
  • 14. Saving Robots ❏ Computação Gráfica ❏ Objetivo: um robô deve recolher objetos espalhados dentro de uma arena. Em 2D e 3D ❏ Solução: ❏ pygame para interface 2D ❏ Panda 3D para https://bitbucket.org/jtmolon/combatbiplanes
  • 15. Demoucron ❏ Teoria dos Grafos ❏ Objetivo: verificar a planaridade de um grafo aplicando simplificações e algoritmos de teoria dos grafos ❏ Solução: ❏ Nenhuma biblioteca adicional https://github.com/matheper/demoucron/
  • 16. PyRO Checkers ❏ Sistemas distribuídos e computação paralela ❏ Objetivo: desenvolver um jogo de damas distribuído, com comunicação cliente/servidor através de objeto remoto ❏ Solução: ❏ PyRO - Python Remote Object https://bitbucket.org/jtmolon/pyrocheckers
  • 17. ❏ Inteligência Artificial ❏ Objetivo: Resolvendo o Sudoku com algoritmos genéticos ❏ Solução: ❏ Descrição dos operadores genéticos: ❏ Crossover: ❏ Os pais são selecionados atraveś do método do Torneio, é selecionado dois pais, com isso é efetuado o Crossover de um Cliclo. Sudoku https://bitbucket.org/lccruz/genetic.sudoku
  • 18. ❏ Solução: ❏ Mutação: ❏ É escolhido um filho entre dois de forma randômica (choice), com esse filho é sorteado uma linha e é feito uma troca de posição entre os elementos da linha Sudoku https://bitbucket.org/lccruz/genetic.sudoku
  • 19. ❏ Solução: ❏ Execução, solução otíma: Sudoku https://bitbucket.org/lccruz/genetic.sudoku
  • 20. ❏ Sistemas Distribuídos e Computação Paralela ❏ Objetivo: desenvolver um sistema de compartilhamento de arquivos utilizando sockets ❏ Solução: ❏ socket ❏ SocketServer ❏ threading Napster https://github.com/matheper/napster
  • 21. ❏ Formais e Compiladores ❏ Objetivo: desenvolver um Analisador Léxico e Sintático. ❏ Solução: ❏ Nenhuma biblioteca adicional Translator ctovisualg https://bitbucket.org/jtmolon/translator.ctovisualg
  • 22. Sound Collide ❏ Computação Gráfica ❏ Objetivo: desenvolver alguma coisa para a matéria de computação gráfica. ❏ Solução: ❏ desenvolvido um software que produz audio quando colide com objeto, tudo é gerado aleatoriamente; ❏ pygame. https://github.com/lccruz/sound_collision
  • 23. Obrigado! ❏ Luciano Camargo Cruz (luciano@lccruz.net) ❏ João Toss Molon (jtmolon@gmail.com) ❏ Matheus Pereira (matheper@gmail.com) https://github.com/lccruz/sound_collision