SlideShare ist ein Scribd-Unternehmen logo
1 von 44
Downloaden Sie, um offline zu lesen
A Arma Secreta
do
Cientista de Dados
Rodrigo Senra
rsenra@acm.org
Python
Apenas um rapaz latino americano...
• Engenheiro de Software 

• GPr Sistemas (11 anos)
• HI Tecnologia (5 anos)

• Professor Universitário - PUC-Campinas (2 anos)
• Especialista - Globo.com (2 anos)
• Cientista Pesquisador - EMC2
• Engenheiro de Computação 

Grad-MSc-PhD IC-Unicamp
• Entusiasta de FLOSS

(atuante na comunidade Python desde 2000)
• Estudantes ?

• Professores ?

• Profissionais ?

• Pythonistas ?
Quem está aqui ?
Vamos falar de…
• O dilúvio de dados
• Cientista de Dados
• O graal do desenvolvedor
• Escolhendo uma linguagem
• Vocabulário ofidiglota
fONTE: IDC Digital Universe Study, patrocinado pela EMC, 2011
2009

0.8 Zettabytes CRESCIMENTO
DA INFORMAÇÃO
2020
44
X
MAIOR
35.2 ZB
IN 2010 THE DIGITAL UNIVERSE WAS
1.2 ZETTABYTES
1,200,000,000,000,000,000,000
Zetta Exa Peta Tera Giga Mega Kilo Byte
fonte: http://thehumanfaceofbigdata.com/
http://www.telegraph.co.uk/news/picturegalleries/picturesoftheday/2545407/Pictures-of-the-day-12-August-2008.html?image=8
Cientista de Dados
Rodrigo Senra
O que faz ?
Quem é ?
Data Science is a newly emerging field dedicated to
analyzing and manipulating data to derive insights
and build data products.
https://beta.oreilly.com/ideas/what-is-data-science
It combines skill-sets ranging from
computer science, to mathematics, to art.
http://images.fineartamerica.com/images-medium-large-5/1-pi-transition-paths-martin-krzywinski.jpg
http://drewconway.com/
http://i0.wp.com/sciencereview.berkeley.edu/wp-content/uploads/2014/04/spring_2014_azam_05.jpg
Truth lies on statistics !
Big Data a cada passo da exploração de petróleo
Navigation
Seismic: Pre-stack
Seismic: Post-stack
Log Curves
Culture Data
Geologic Model
Pressure Data
Velocity Data Interpretation
40
Plankalkü
Transistor
50
Fortran
LISP
Harddisk
Circuito
Integrado
60
COBOL
SIMULA
BASIC
LOGO
ITS
OS360
MULTICS
Mouse
Interrupções
Virt.Mem
ARPANET
RS-232
70
Pascal
C
Smalltalk
Prolog
UNIX
CP/M
VMS
Floppy
Micro-
processador
PONG
TCP/IP
Ethernet
80
Ada
C++
Perl
SQL
LISA
Macintosh
UNIX
MS-DOS
Windows
1.0-2.0
OS/2
MINIX
AIX
HPUX
SCO
GNU
RISC
90
Javascript
Python
Java
PHP
BeOS
Linux
Solaris
Windows
2.0 - 98
OpenBSD
ISA
WWW
2000
Scala
C#
Mac OSX
Windows
ME
2000
XP
Vista
7
Go
Linux
Julia
A verdade dói...
# Edsger W.Dijkstra, 18 Junho 1975 http://www.cbi.umn.edu/inv/burros/ewd498.htm
A verdade dói...
# Edsger W.Dijkstra, 18 Junho 1975 http://www.cbi.umn.edu/inv/burros/ewd498.htm
FORTRAN --"the infantile
disorder"--, by now nearly
20 years old, is hopelessly
inadequate for whatever
computer application
you have in mind today:
it is now too clumsy, too
risky, and too expensive to
use
A verdade dói...
# Edsger W.Dijkstra, 18 Junho 1975 http://www.cbi.umn.edu/inv/burros/ewd498.htm
PL/1 --"the fatal
disease"-- belongs
more to the
problem set than to
the solution set
A verdade dói...
# Edsger W.Dijkstra, 18 Junho 1975 http://www.cbi.umn.edu/inv/burros/ewd498.htm
It is practically impossible
to teach good
programming to students
that have had a prior
exposure to BASIC: as
potential programmers
they are mentally
mutilated beyond hope of
regeneration
A verdade dói...
# Edsger W.Dijkstra, 18 Junho 1975 http://www.cbi.umn.edu/inv/burros/ewd498.htm
The use of COBOL
cripples the mind; its
teaching should,
therefore, be regarded as
a criminal offence
Top 10 - SourceForge
http://githut.info/
http://sogrady-media.redmonk.com/sogrady/files/2015/07/lang-rank-615-wm.png
Who is using Python ?
Duelo de linguagens
Duelo de linguagens
import java.io.*;
import java.util.*;
import java.text.*;
public class sumcol {
public static void main(String[] args) {
int count = 0;
String line;
try {
BufferedReader in = new BufferedReader(
new InputStreamReader(System.in));
while ((line = in.readLine()) != null) {
count = count + Integer.parseInt(line);
}
} catch (IOException e) { }
System.out.println(Integer.toString(count));
Javausing System;
class App {
public static int Main(String[] args) {
int count = 0;
for (String line = Console.In.ReadLine();
line != null;
line = Console.In.ReadLine())
{ count += System.Convert.ToInt32(line); }
Console.WriteLine(count.ToString());
return(0);
}
C#import sys
count = 0
while 1:
line = sys.stdin.readline().strip()
if not line:
break
count += int(line)
print count
Pythonimport sys, itertools
print sum(itertools.imap(int, sys.stdin))
Python
Python é ...
• propósito geral

• foco em produtividade do desenvolvedor

• multi-plataforma e multi-paradigma

• pilhas incluídas

• floss software

• fácil de extender e embutir

• madura (criada em1989, liberada ao público 1991)
Interoperabiilidade
✴ CPython (onde existir compilador C ISO/IEC 9899:1990) 

✴ Jython (Python implementado em Java)

✴ IronPython (implementado em C# pela M$)

✴ PyPy (Python implementado em... Python)

✴ Py4J (ponte entre CPython e JVM)

✴ Python for .NET [Brian Lloyd]

✴ Win32all [Mark Hammond] (adeus VBA!)

✴ PyObjC (Mac OSX middleware)

✴ Python for Delphi [Morgan Marat]

✴ LunaticPython [Gustavo Niemeyer] 

✴ Ruby/Python (importar módulos Python em Ruby)

✴ Python + Fortran
Fernando Perez, lead PI at BIDS and creator of IPython, demonstrates brain imaging analyses
performed using the IPython Notebook, an interactive web-based computational environment.
credit: Peg Skorpinski
Hora da Demo
Dá tempo de ver
o Python em ação ?
É possível ?
Seria pedir muito ?
Pygame
Python no celular S60
Referências
! http://python.org
! http://www.pythonbrasil.com.br
! http://associacao.pythonbrasil.org
! http://showmedo.com
Referências
! Fluent Python: Luciano Ramalho (O’Reilly)

! Python in a Nutshell: Alex Martelli (O'Reilly)

! Python Cookbook: Alex Martelli, David Ascher (O'Reilly)

! Learning Python for Interactive Computing and Data
Visualisation: Cyrille Rossant (Packt)
Conclusão
• Ágil, madura e moderna
• Fácil aprendizado
• Comunidade Ativa
• Fartura de documentação
• Divertida ;o)
Obrigado a todos
pela atenção.
Rodrigo Dias Arruda Senra
http://rodrigo.senra.nom.br
rodsenra@gmail.com
@rodsenra
As opiniões e conclusões expressas nesta apresentação são de exclusiva responsabilidade de Rodrigo Senra.
Não é necessário requisitar permissão do autor para o uso de partes ou do todo desta apresentação, desde que não sejam feitas
alterações no conteúdo reutilizado e que esta nota esteja presente na íntegra no material resultante.
Imagens e referências para outros trabalhos nesta apresentação permanecem propriedade daqueles que detêm seus direitos de
copyright. Agradecimento especial a Ana Oliveira e Diego Salomone que contribuíram com alguns slides de suas apresentações sobre
o mesmo tema.

Weitere ähnliche Inhalte

Andere mochten auch

Show Pyrotécnico - Keynote PythonBrasil[9] 2013
Show Pyrotécnico - Keynote PythonBrasil[9] 2013Show Pyrotécnico - Keynote PythonBrasil[9] 2013
Show Pyrotécnico - Keynote PythonBrasil[9] 2013Rodrigo Senra
 
Tech talk about iswc2013
Tech talk about iswc2013Tech talk about iswc2013
Tech talk about iswc2013Rodrigo Senra
 
Organicer: Organizando informação com Python
Organicer: Organizando informação com PythonOrganicer: Organizando informação com Python
Organicer: Organizando informação com PythonRodrigo Senra
 
Uma breve história no tempo...da computação
Uma breve história no tempo...da computaçãoUma breve história no tempo...da computação
Uma breve história no tempo...da computaçãoRodrigo Senra
 
Rupy2014 - Show Pyrotécnico
Rupy2014 - Show PyrotécnicoRupy2014 - Show Pyrotécnico
Rupy2014 - Show PyrotécnicoRodrigo Senra
 
Linked data at globo.com
Linked data at globo.comLinked data at globo.com
Linked data at globo.comRodrigo Senra
 
Rest - Representational State Transfer (EMC BRDC Internal Tech talk)
Rest - Representational State Transfer (EMC BRDC Internal Tech talk)Rest - Representational State Transfer (EMC BRDC Internal Tech talk)
Rest - Representational State Transfer (EMC BRDC Internal Tech talk)Rodrigo Senra
 
Brainiak - uma API REST Hipermedia
Brainiak - uma API REST Hipermedia Brainiak - uma API REST Hipermedia
Brainiak - uma API REST Hipermedia Rodrigo Senra
 
Ensinando Computação e Fazendo Ciência com Python
Ensinando Computação e Fazendo Ciência com PythonEnsinando Computação e Fazendo Ciência com Python
Ensinando Computação e Fazendo Ciência com PythonLuiz Cláudio Silva
 
Programando em python modulos
Programando em python   modulosProgramando em python   modulos
Programando em python modulossamuelthiago
 
Python Brasil 2010 - Potter vs Voldemort - Lições ofidiglotas da prática Pyth...
Python Brasil 2010 - Potter vs Voldemort - Lições ofidiglotas da prática Pyth...Python Brasil 2010 - Potter vs Voldemort - Lições ofidiglotas da prática Pyth...
Python Brasil 2010 - Potter vs Voldemort - Lições ofidiglotas da prática Pyth...Rodrigo Senra
 
pa-pe-pi-po-pure Python Text Processing
pa-pe-pi-po-pure Python Text Processingpa-pe-pi-po-pure Python Text Processing
pa-pe-pi-po-pure Python Text ProcessingRodrigo Senra
 
Fotos do encontro com José Fanha
Fotos do encontro com José FanhaFotos do encontro com José Fanha
Fotos do encontro com José FanhaLer Crer
 
Python - o que, porque, como e quando
Python - o que, porque, como e quandoPython - o que, porque, como e quando
Python - o que, porque, como e quandoGustavo Carvalho
 
Espaço Programação e Eletrónica - Sessão4
Espaço Programação e Eletrónica - Sessão4Espaço Programação e Eletrónica - Sessão4
Espaço Programação e Eletrónica - Sessão4Ana Carneirinho
 
Introdução a automação residencial com Raspberry PI
Introdução a automação residencial com Raspberry PIIntrodução a automação residencial com Raspberry PI
Introdução a automação residencial com Raspberry PIRogerio Alencar Filho
 
Astro Pi - Explorando o Sense Hat
Astro Pi - Explorando o Sense HatAstro Pi - Explorando o Sense Hat
Astro Pi - Explorando o Sense HatAna Carneirinho
 
Astro Pi - introdução ao Python
Astro Pi - introdução ao PythonAstro Pi - introdução ao Python
Astro Pi - introdução ao PythonAna Carneirinho
 

Andere mochten auch (20)

Show Pyrotécnico - Keynote PythonBrasil[9] 2013
Show Pyrotécnico - Keynote PythonBrasil[9] 2013Show Pyrotécnico - Keynote PythonBrasil[9] 2013
Show Pyrotécnico - Keynote PythonBrasil[9] 2013
 
Cientista de Dados
Cientista de DadosCientista de Dados
Cientista de Dados
 
Tech talk about iswc2013
Tech talk about iswc2013Tech talk about iswc2013
Tech talk about iswc2013
 
Organicer: Organizando informação com Python
Organicer: Organizando informação com PythonOrganicer: Organizando informação com Python
Organicer: Organizando informação com Python
 
Uma breve história no tempo...da computação
Uma breve história no tempo...da computaçãoUma breve história no tempo...da computação
Uma breve história no tempo...da computação
 
Rupy2014 - Show Pyrotécnico
Rupy2014 - Show PyrotécnicoRupy2014 - Show Pyrotécnico
Rupy2014 - Show Pyrotécnico
 
Linked data at globo.com
Linked data at globo.comLinked data at globo.com
Linked data at globo.com
 
Rest - Representational State Transfer (EMC BRDC Internal Tech talk)
Rest - Representational State Transfer (EMC BRDC Internal Tech talk)Rest - Representational State Transfer (EMC BRDC Internal Tech talk)
Rest - Representational State Transfer (EMC BRDC Internal Tech talk)
 
Brainiak - uma API REST Hipermedia
Brainiak - uma API REST Hipermedia Brainiak - uma API REST Hipermedia
Brainiak - uma API REST Hipermedia
 
Ensinando Computação e Fazendo Ciência com Python
Ensinando Computação e Fazendo Ciência com PythonEnsinando Computação e Fazendo Ciência com Python
Ensinando Computação e Fazendo Ciência com Python
 
Programando em python modulos
Programando em python   modulosProgramando em python   modulos
Programando em python modulos
 
Python Brasil 2010 - Potter vs Voldemort - Lições ofidiglotas da prática Pyth...
Python Brasil 2010 - Potter vs Voldemort - Lições ofidiglotas da prática Pyth...Python Brasil 2010 - Potter vs Voldemort - Lições ofidiglotas da prática Pyth...
Python Brasil 2010 - Potter vs Voldemort - Lições ofidiglotas da prática Pyth...
 
pa-pe-pi-po-pure Python Text Processing
pa-pe-pi-po-pure Python Text Processingpa-pe-pi-po-pure Python Text Processing
pa-pe-pi-po-pure Python Text Processing
 
Fotos do encontro com José Fanha
Fotos do encontro com José FanhaFotos do encontro com José Fanha
Fotos do encontro com José Fanha
 
Python - o que, porque, como e quando
Python - o que, porque, como e quandoPython - o que, porque, como e quando
Python - o que, porque, como e quando
 
Galinha dos ovos de ouro
Galinha dos ovos de ouroGalinha dos ovos de ouro
Galinha dos ovos de ouro
 
Espaço Programação e Eletrónica - Sessão4
Espaço Programação e Eletrónica - Sessão4Espaço Programação e Eletrónica - Sessão4
Espaço Programação e Eletrónica - Sessão4
 
Introdução a automação residencial com Raspberry PI
Introdução a automação residencial com Raspberry PIIntrodução a automação residencial com Raspberry PI
Introdução a automação residencial com Raspberry PI
 
Astro Pi - Explorando o Sense Hat
Astro Pi - Explorando o Sense HatAstro Pi - Explorando o Sense Hat
Astro Pi - Explorando o Sense Hat
 
Astro Pi - introdução ao Python
Astro Pi - introdução ao PythonAstro Pi - introdução ao Python
Astro Pi - introdução ao Python
 

Ähnlich wie A Arma Secreta do Cientista de Dados

O poder do Python/Django
O poder do Python/DjangoO poder do Python/Django
O poder do Python/DjangoÁtila Bezerra
 
The zen of python 2010
The zen of python 2010The zen of python 2010
The zen of python 2010Luiz Aldabalde
 
Micropython - Python para microcontroladores
Micropython - Python para microcontroladoresMicropython - Python para microcontroladores
Micropython - Python para microcontroladoresFabio Souza
 
Desvendando o python
Desvendando o pythonDesvendando o python
Desvendando o pythonRodrigo Lira
 
Educação Tecnológica com Raspberry Pi
Educação Tecnológica com Raspberry PiEducação Tecnológica com Raspberry Pi
Educação Tecnológica com Raspberry PiMario Sergio
 
Pythonificando a Universidade
Pythonificando a UniversidadePythonificando a Universidade
Pythonificando a UniversidadeMatheus Pereira
 
Python para iniciantes
Python para iniciantesPython para iniciantes
Python para iniciantesrichardsonlima
 
Plataformas open-source para Internet das Coisas (IoT)
Plataformas open-source para Internet das Coisas (IoT)Plataformas open-source para Internet das Coisas (IoT)
Plataformas open-source para Internet das Coisas (IoT)Eronides Da Silva Neto
 
Tecnologias Disruptivas - Sistemas Embarcados - IoT - Inteligencia Artificial...
Tecnologias Disruptivas - Sistemas Embarcados - IoT - Inteligencia Artificial...Tecnologias Disruptivas - Sistemas Embarcados - IoT - Inteligencia Artificial...
Tecnologias Disruptivas - Sistemas Embarcados - IoT - Inteligencia Artificial...Embarcados
 
[WRVA2014] Utilização de Realidade Aumentada, com marcadores(ARToolKitPlus) e...
[WRVA2014] Utilização de Realidade Aumentada, com marcadores(ARToolKitPlus) e...[WRVA2014] Utilização de Realidade Aumentada, com marcadores(ARToolKitPlus) e...
[WRVA2014] Utilização de Realidade Aumentada, com marcadores(ARToolKitPlus) e...Christopher Cerqueira
 
O que podemos fazer com Python?
O que podemos fazer com Python?O que podemos fazer com Python?
O que podemos fazer com Python?Izabela Guerreiro
 

Ähnlich wie A Arma Secreta do Cientista de Dados (20)

O poder do Python/Django
O poder do Python/DjangoO poder do Python/Django
O poder do Python/Django
 
The zen of python 2010
The zen of python 2010The zen of python 2010
The zen of python 2010
 
Micropython - Python para microcontroladores
Micropython - Python para microcontroladoresMicropython - Python para microcontroladores
Micropython - Python para microcontroladores
 
Desvendando o python
Desvendando o pythonDesvendando o python
Desvendando o python
 
Python-Fenalivre-Imed
Python-Fenalivre-ImedPython-Fenalivre-Imed
Python-Fenalivre-Imed
 
Empreendendo com Python
Empreendendo com PythonEmpreendendo com Python
Empreendendo com Python
 
Educação Tecnológica com Raspberry Pi
Educação Tecnológica com Raspberry PiEducação Tecnológica com Raspberry Pi
Educação Tecnológica com Raspberry Pi
 
Python Zope Plone - Ftec
Python Zope Plone - FtecPython Zope Plone - Ftec
Python Zope Plone - Ftec
 
Hello, Python!
Hello, Python!Hello, Python!
Hello, Python!
 
Pythonificando a Universidade
Pythonificando a UniversidadePythonificando a Universidade
Pythonificando a Universidade
 
Python para iniciantes
Python para iniciantesPython para iniciantes
Python para iniciantes
 
Plataformas open-source para Internet das Coisas (IoT)
Plataformas open-source para Internet das Coisas (IoT)Plataformas open-source para Internet das Coisas (IoT)
Plataformas open-source para Internet das Coisas (IoT)
 
Raspberry Pi + Python
Raspberry Pi + PythonRaspberry Pi + Python
Raspberry Pi + Python
 
Mergulhando no ecossistema .NET
Mergulhando no ecossistema .NETMergulhando no ecossistema .NET
Mergulhando no ecossistema .NET
 
Tecnologias Disruptivas - Sistemas Embarcados - IoT - Inteligencia Artificial...
Tecnologias Disruptivas - Sistemas Embarcados - IoT - Inteligencia Artificial...Tecnologias Disruptivas - Sistemas Embarcados - IoT - Inteligencia Artificial...
Tecnologias Disruptivas - Sistemas Embarcados - IoT - Inteligencia Artificial...
 
[WRVA2014] Utilização de Realidade Aumentada, com marcadores(ARToolKitPlus) e...
[WRVA2014] Utilização de Realidade Aumentada, com marcadores(ARToolKitPlus) e...[WRVA2014] Utilização de Realidade Aumentada, com marcadores(ARToolKitPlus) e...
[WRVA2014] Utilização de Realidade Aumentada, com marcadores(ARToolKitPlus) e...
 
Apostila_IC.pdf
Apostila_IC.pdfApostila_IC.pdf
Apostila_IC.pdf
 
Canivete python
Canivete pythonCanivete python
Canivete python
 
Hackeando o Facebook com Python
Hackeando o Facebook com PythonHackeando o Facebook com Python
Hackeando o Facebook com Python
 
O que podemos fazer com Python?
O que podemos fazer com Python?O que podemos fazer com Python?
O que podemos fazer com Python?
 

A Arma Secreta do Cientista de Dados