SlideShare uma empresa Scribd logo
indeorum.com
Boas Práticas de Programação para
Jupyter Notebooks
Joel Pinho Lucas
26/08/2020
ROTEIRO
1 Por que se preocupar com boas práticas ao
codificar notebooks?
2 Diferenças de notebooks para programação
tradicional
3 Compilado de recomendações de boas
práticas
indeorum.com
4 Fontes para consulta
indeorum.com
De onde vêm os cientistas de dados?
indeorum.com
“Sou Cientista de Dados… não preciso me preocupar com
legibilidade de código porque a maior parte dele vai fora.”
http://thedataist.com/ten-good-coding-practices-for-data-scientists/
“Código limpo e agilidade valem para desenvolvedores…
não fazem sentido dentro do meu trabalho.”
indeorum.com
E SE…
• outras pessoas usarem meu notebook?
• eu (ou outra pessoa) precisar alterá-lo?
• precisar aproveitá-lo para outros entregáveis?
• precisar colocar um modelo em produção?
• precisar escalar o modelo?
• precisar depurar?
• dados de input mudarem / modelo depreciar?
Notebooks são
Software!!
indeorum.com
indeorum.com
ESPECIFICIDADES DE JUPYTER
NOTEBOOKS
• Ambiente livre e flexível, permite iterar e explorar datasets rapidamente
• Também são usados para gerar relatórios
• Em projetos de ML a maior parte do código contém transformações de
dados, demandando input e output com o mesmo padrão
• Precisam gerar artefatos reproduzíveis
indeorum.com
ESPECIFICIDADES DE JUPYTER
NOTEBOOKS
• Permitem executar código fora de ordem, preservando o contexto
• São excelentes para experimentação e prototipação, mas não para código
em produção
indeorum.com
ESPECIFICIDADES DE JUPYTER
NOTEBOOKS
• Versionamento complexo…
indeorum.com
Experimentação
X
Produção
https://cloud.google.com/blog/products/ai-machine-learning/best-practices-that-can-improve-the-life-of-any-developer-using-jupyter-notebooks
indeorum.com
Recomendações de Boas Práticas
Usar um padrão
de estilo de
código
1.
indeorum.com
indeorum.com
PEP8 - https://www.python.org/dev/peps/pep-0008
• Linhas com no máximo de 79 caracteres
• Linha em branco separando blocos lógicos dentro de métodos e funções
• Não usar espaço imediatamente antes ou após um parêntese
• Importações em linhas separadas
• etc…
Meaningful
Names
2.
indeorum.com
indeorum.com
Ruim
Bom
Usar nomes descritivos!
indeorum.com
Evitar notação húngara
(tipo no nome)!
Ruim
Bom
Bom
Ruim
indeorum.com
Funções e métodos devem
ser verbos!
Ruim
Bom
DRY
3.
indeorum.com
indeorum.com
Ruim
https://github.com/davified/clean-code-ml/blob/master/docs/functions.md
indeorum.com
Bom
https://github.com/davified/clean-code-ml/blob/master/docs/functions.md
Cuidado com
Dead Code
4.
indeorum.com
indeorum.com
Ruim
Bom
Encapsular e
encapsular
5.
indeorum.com
indeorum.com
Ruim
Exercitar Princípio da
Responsabilidade Única!
indeorum.com
Bom
indeorum.com
Abstrair detalhes da lógica de negócio que
estejam vinculadas a uma entidade específica:
Bom
Ruim
indeorum.com
https://towardsdatascience.com/clean-machine-learning-code-bd32bd0e9212
Moderação e
atenção no uso de
comentários
6.
indeorum.com
indeorum.com
O código sempre deve dizer a verdade!
Bom
Ruim
indeorum.com
• Comentários podem ser indício de má abstração, bad naming, exceção de
responsabilidades em funções/classes, etc.
• Priorizar células de markdown para descrever especificadas relacionadas
ao negócio ou a um modelo
• DocStrings são recomendados
Preferir bibliotecas
pré-existentes
7.
indeorum.com
indeorum.com
Ruim
Bom
indeorum.com
Ruim
Bom
Tirar Código do
Notebook sempre
que possível
8.
indeorum.com
indeorum.com
• Jupyter Notebooks se enquadram no ‘princípio da superfície plana’.
• Quanto maior o notebook, mais difícil será para verificar o resultado de
eventuais alterações
• Retirar complexidade de classes e funções auxiliares e dar foco para
análise exploratória e para predições com ML
indeorum.com
Exemplos de tipo de código que devem sair de notebooks:
Implementar
Testes Unitários
9.
indeorum.com
Bom
indeorum.com
FONTES
• Clean Code - Robert C. Martin, Michael C. Feathers (Autor), Timothy R. Ottinger.
2008

• Thoughtful Machine Learning with Python: A Test-Driven Approach - Matthew
Kirk. 2017

• Guia de Estilo para Python: https://www.python.org/dev/peps/pep-0008/ 

• https://medium.com/zero-equals-false/writing-clean-code-for-data-scientists-
f141bf550d37

• https://www.thoughtworks.com/insights/blog/coding-habits-data-scientists

• Clean code em Python: https://github.com/zedr/clean-code-python
indeorum.com
FONTES
• Clean code em ML: https://github.com/davified/clean-code-ml

• https://towardsdatascience.com/clean-code-for-a-data-scientist-f4b760374b74

• https://towardsdatascience.com/clean-machine-learning-code-bd32bd0e9212

• http://thedataist.com/ten-good-coding-practices-for-data-scientists/

• https://www.kaggle.com/baghern/a-deep-dive-into-sklearn-pipelines

• https://towardsdatascience.com/pre-process-data-with-pipeline-to-prevent-
data-leakage-during-cross-validation-e3442cca7fdc
Explorar
Extensões do
Jupyter
12.
indeorum.com
indeorum.com
1. toc2 (numeração automática de markdown):
https://jupyter-contrib-nbextensions.readthedocs.io/en/latest/nbextensions/toc2/
2. Debug de variáveis:
https://jupyter-contrib-nbextensions.readthedocs.io/en/latest/nbextensions/varInspector/
3. Minimização de células:
https://jupyter-contrib-nbextensions.readthedocs.io/en/latest/nbextensions/collapsible_headings/
OBRIGADO!
joelpl@gmail.com
indeorum.com

Mais conteúdo relacionado

Mais procurados

Escalabilidade, Sharding, Paralelismo e Bigdata com PostgreSQL? Yes, we can!
Escalabilidade, Sharding, Paralelismo e Bigdata com PostgreSQL? Yes, we can!Escalabilidade, Sharding, Paralelismo e Bigdata com PostgreSQL? Yes, we can!
Escalabilidade, Sharding, Paralelismo e Bigdata com PostgreSQL? Yes, we can!
Matheus Espanhol
 
Workshop Agile Testing Mindset
Workshop Agile Testing MindsetWorkshop Agile Testing Mindset
Workshop Agile Testing Mindset
Elias Nogueira
 
Python Pandas
Python PandasPython Pandas
Python Pandas
Carlos J. Costa
 
Ap i unidade 3 - levantamento de requisitos
Ap i   unidade 3 - levantamento de requisitosAp i   unidade 3 - levantamento de requisitos
Ap i unidade 3 - levantamento de requisitos
Glauber Aquino
 
Gerenciamento de Projetos com PRINCE2
Gerenciamento de Projetos com PRINCE2Gerenciamento de Projetos com PRINCE2
Gerenciamento de Projetos com PRINCE2
Diego Cavalca
 
Pare de começar e comece a previsibilizar
Pare de começar e comece a previsibilizarPare de começar e comece a previsibilizar
Pare de começar e comece a previsibilizar
Rodrigo Oliveira, Msc, PMP
 
Teste de software - Conhecendo e Aplicando
Teste de software - Conhecendo e AplicandoTeste de software - Conhecendo e Aplicando
Teste de software - Conhecendo e Aplicando
André Phillip Bertoletti
 
Arquitetura MVC
Arquitetura MVCArquitetura MVC
Arquitetura MVC
Thiago Pereira
 
Metodologias Ágeis para o Desenvolvimento de Software
Metodologias Ágeis para o Desenvolvimento de SoftwareMetodologias Ágeis para o Desenvolvimento de Software
Metodologias Ágeis para o Desenvolvimento de Software
Adolfo Neto
 
ABORDAGEM DE JOGOS DIGITAIS: ANÁLISE E INVERSÃO DA MECÂNICA NO JOGO ALEX KIDD...
ABORDAGEM DE JOGOS DIGITAIS: ANÁLISE E INVERSÃO DA MECÂNICA NO JOGO ALEX KIDD...ABORDAGEM DE JOGOS DIGITAIS: ANÁLISE E INVERSÃO DA MECÂNICA NO JOGO ALEX KIDD...
ABORDAGEM DE JOGOS DIGITAIS: ANÁLISE E INVERSÃO DA MECÂNICA NO JOGO ALEX KIDD...
Eliney Sabino
 
Modelo de Dicionário da eap
Modelo de Dicionário da eapModelo de Dicionário da eap
Modelo de Dicionário da eap
Fernando Palma
 
Aula 03 - Classes math e string - JAVA
Aula 03   - Classes math e string - JAVAAula 03   - Classes math e string - JAVA
Aula 03 - Classes math e string - JAVA
ULBRA
 
Engenharia de requisitos
Engenharia de requisitosEngenharia de requisitos
Engenharia de requisitos
Mailson Queiroz
 
Choosing the right QA strategy for a successful project
Choosing the right QA strategy for a successful projectChoosing the right QA strategy for a successful project
Choosing the right QA strategy for a successful project
The Software House
 
Termo+de+abertura+do+projeto (1)
Termo+de+abertura+do+projeto (1)Termo+de+abertura+do+projeto (1)
Termo+de+abertura+do+projeto (1)
Professor Sérgio Duarte
 
Prince2 - Treinamento para Certificação
Prince2 - Treinamento para CertificaçãoPrince2 - Treinamento para Certificação
Prince2 - Treinamento para Certificação
Thiago Trevisan, PMP, PRINCE2
 
Fdd
FddFdd
Ciclo desenvolvimento de sistemas
Ciclo desenvolvimento de sistemasCiclo desenvolvimento de sistemas
Ciclo desenvolvimento de sistemas
Instituto Federal de Educação Ciencia e Tecnologia
 
Gerenciamento de projetos - Iniciação
Gerenciamento de projetos - IniciaçãoGerenciamento de projetos - Iniciação
Gerenciamento de projetos - Iniciação
Paulo Junior
 
Engenharia reversa
Engenharia reversaEngenharia reversa
Engenharia reversa
Nascimento Junior
 

Mais procurados (20)

Escalabilidade, Sharding, Paralelismo e Bigdata com PostgreSQL? Yes, we can!
Escalabilidade, Sharding, Paralelismo e Bigdata com PostgreSQL? Yes, we can!Escalabilidade, Sharding, Paralelismo e Bigdata com PostgreSQL? Yes, we can!
Escalabilidade, Sharding, Paralelismo e Bigdata com PostgreSQL? Yes, we can!
 
Workshop Agile Testing Mindset
Workshop Agile Testing MindsetWorkshop Agile Testing Mindset
Workshop Agile Testing Mindset
 
Python Pandas
Python PandasPython Pandas
Python Pandas
 
Ap i unidade 3 - levantamento de requisitos
Ap i   unidade 3 - levantamento de requisitosAp i   unidade 3 - levantamento de requisitos
Ap i unidade 3 - levantamento de requisitos
 
Gerenciamento de Projetos com PRINCE2
Gerenciamento de Projetos com PRINCE2Gerenciamento de Projetos com PRINCE2
Gerenciamento de Projetos com PRINCE2
 
Pare de começar e comece a previsibilizar
Pare de começar e comece a previsibilizarPare de começar e comece a previsibilizar
Pare de começar e comece a previsibilizar
 
Teste de software - Conhecendo e Aplicando
Teste de software - Conhecendo e AplicandoTeste de software - Conhecendo e Aplicando
Teste de software - Conhecendo e Aplicando
 
Arquitetura MVC
Arquitetura MVCArquitetura MVC
Arquitetura MVC
 
Metodologias Ágeis para o Desenvolvimento de Software
Metodologias Ágeis para o Desenvolvimento de SoftwareMetodologias Ágeis para o Desenvolvimento de Software
Metodologias Ágeis para o Desenvolvimento de Software
 
ABORDAGEM DE JOGOS DIGITAIS: ANÁLISE E INVERSÃO DA MECÂNICA NO JOGO ALEX KIDD...
ABORDAGEM DE JOGOS DIGITAIS: ANÁLISE E INVERSÃO DA MECÂNICA NO JOGO ALEX KIDD...ABORDAGEM DE JOGOS DIGITAIS: ANÁLISE E INVERSÃO DA MECÂNICA NO JOGO ALEX KIDD...
ABORDAGEM DE JOGOS DIGITAIS: ANÁLISE E INVERSÃO DA MECÂNICA NO JOGO ALEX KIDD...
 
Modelo de Dicionário da eap
Modelo de Dicionário da eapModelo de Dicionário da eap
Modelo de Dicionário da eap
 
Aula 03 - Classes math e string - JAVA
Aula 03   - Classes math e string - JAVAAula 03   - Classes math e string - JAVA
Aula 03 - Classes math e string - JAVA
 
Engenharia de requisitos
Engenharia de requisitosEngenharia de requisitos
Engenharia de requisitos
 
Choosing the right QA strategy for a successful project
Choosing the right QA strategy for a successful projectChoosing the right QA strategy for a successful project
Choosing the right QA strategy for a successful project
 
Termo+de+abertura+do+projeto (1)
Termo+de+abertura+do+projeto (1)Termo+de+abertura+do+projeto (1)
Termo+de+abertura+do+projeto (1)
 
Prince2 - Treinamento para Certificação
Prince2 - Treinamento para CertificaçãoPrince2 - Treinamento para Certificação
Prince2 - Treinamento para Certificação
 
Fdd
FddFdd
Fdd
 
Ciclo desenvolvimento de sistemas
Ciclo desenvolvimento de sistemasCiclo desenvolvimento de sistemas
Ciclo desenvolvimento de sistemas
 
Gerenciamento de projetos - Iniciação
Gerenciamento de projetos - IniciaçãoGerenciamento de projetos - Iniciação
Gerenciamento de projetos - Iniciação
 
Engenharia reversa
Engenharia reversaEngenharia reversa
Engenharia reversa
 

Semelhante a Boas práticas de desenvolvimento para Jupyter Notebooks

PHPZEIRO: Adote um framework
PHPZEIRO: Adote um frameworkPHPZEIRO: Adote um framework
PHPZEIRO: Adote um framework
Leonardo "Hackin" Freire
 
Clean Code - Boas práticas para desenvolvimento
Clean Code - Boas práticas para desenvolvimentoClean Code - Boas práticas para desenvolvimento
Clean Code - Boas práticas para desenvolvimento
Paulo Henrique da Silva
 
TDD com Código Legado - "Atualizado"
TDD com Código Legado - "Atualizado"TDD com Código Legado - "Atualizado"
TDD com Código Legado - "Atualizado"
Cesar Romero
 
TDD com Código Legado
TDD com Código LegadoTDD com Código Legado
TDD com Código Legado
Cesar Romero
 
Clean Code: Por um mundo com códigos melhores - The Developers Conference - P...
Clean Code: Por um mundo com códigos melhores - The Developers Conference - P...Clean Code: Por um mundo com códigos melhores - The Developers Conference - P...
Clean Code: Por um mundo com códigos melhores - The Developers Conference - P...
Thiago Barradas
 
#DNAD15 - Diminuindo sofrimento com código legado de linguagens não mainstreams
#DNAD15  - Diminuindo sofrimento com código legado de linguagens não mainstreams#DNAD15  - Diminuindo sofrimento com código legado de linguagens não mainstreams
#DNAD15 - Diminuindo sofrimento com código legado de linguagens não mainstreams
Jacqueline Abreu
 
Paradigmas de Linguagens de Programação - Quatro Paradigmas + Ambientes de Pr...
Paradigmas de Linguagens de Programação - Quatro Paradigmas + Ambientes de Pr...Paradigmas de Linguagens de Programação - Quatro Paradigmas + Ambientes de Pr...
Paradigmas de Linguagens de Programação - Quatro Paradigmas + Ambientes de Pr...
Adriano Teixeira de Souza
 
Extreme Experience 2018 | Python para quem sabe Delphi
Extreme Experience 2018 | Python para quem sabe DelphiExtreme Experience 2018 | Python para quem sabe Delphi
Extreme Experience 2018 | Python para quem sabe Delphi
Mario Guedes
 
ZeroBugsProject - Técnicas de programação efetivas
ZeroBugsProject - Técnicas de programação efetivasZeroBugsProject - Técnicas de programação efetivas
ZeroBugsProject - Técnicas de programação efetivas
Rafael Chinelato Del Nero
 
O que é código bonito?
O que é código bonito?O que é código bonito?
O que é código bonito?
Maurício Aniche
 
Clean Architecture
Clean ArchitectureClean Architecture
Clean Architecture
Rodrigo Branas
 
A Arte do Código Limpo
A Arte do Código LimpoA Arte do Código Limpo
A Arte do Código Limpo
Juliana Fideles
 
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
 
Programação Orientada a Objetos - Pós Graduação - aula 1
Programação Orientada a Objetos - Pós Graduação - aula 1Programação Orientada a Objetos - Pós Graduação - aula 1
Programação Orientada a Objetos - Pós Graduação - aula 1
Carlos Eduardo
 
Carreira de Desenvolvimento
Carreira de DesenvolvimentoCarreira de Desenvolvimento
Carreira de Desenvolvimento
Alvaro Viebrantz
 
Princípios Básicos para Desenvolvedores
Princípios Básicos para DesenvolvedoresPrincípios Básicos para Desenvolvedores
Princípios Básicos para Desenvolvedores
guitoper
 
O que é ser um bom programador?
O que é ser um bom programador?O que é ser um bom programador?
O que é ser um bom programador?
Lucas Boeing Scarduelli
 
Clean code @rogeriofontes-techfriday-everis
Clean code @rogeriofontes-techfriday-everisClean code @rogeriofontes-techfriday-everis
Clean code @rogeriofontes-techfriday-everis
Rogerio Fontes
 
Boas praticas em_desenvolvimento_de_software
Boas praticas em_desenvolvimento_de_softwareBoas praticas em_desenvolvimento_de_software
Boas praticas em_desenvolvimento_de_software
ivanassisleal
 
Dicas para sua carreira de Desenvolvedor PHP
Dicas para sua carreira de Desenvolvedor PHPDicas para sua carreira de Desenvolvedor PHP
Dicas para sua carreira de Desenvolvedor PHP
Douglas V. Pasqua
 

Semelhante a Boas práticas de desenvolvimento para Jupyter Notebooks (20)

PHPZEIRO: Adote um framework
PHPZEIRO: Adote um frameworkPHPZEIRO: Adote um framework
PHPZEIRO: Adote um framework
 
Clean Code - Boas práticas para desenvolvimento
Clean Code - Boas práticas para desenvolvimentoClean Code - Boas práticas para desenvolvimento
Clean Code - Boas práticas para desenvolvimento
 
TDD com Código Legado - "Atualizado"
TDD com Código Legado - "Atualizado"TDD com Código Legado - "Atualizado"
TDD com Código Legado - "Atualizado"
 
TDD com Código Legado
TDD com Código LegadoTDD com Código Legado
TDD com Código Legado
 
Clean Code: Por um mundo com códigos melhores - The Developers Conference - P...
Clean Code: Por um mundo com códigos melhores - The Developers Conference - P...Clean Code: Por um mundo com códigos melhores - The Developers Conference - P...
Clean Code: Por um mundo com códigos melhores - The Developers Conference - P...
 
#DNAD15 - Diminuindo sofrimento com código legado de linguagens não mainstreams
#DNAD15  - Diminuindo sofrimento com código legado de linguagens não mainstreams#DNAD15  - Diminuindo sofrimento com código legado de linguagens não mainstreams
#DNAD15 - Diminuindo sofrimento com código legado de linguagens não mainstreams
 
Paradigmas de Linguagens de Programação - Quatro Paradigmas + Ambientes de Pr...
Paradigmas de Linguagens de Programação - Quatro Paradigmas + Ambientes de Pr...Paradigmas de Linguagens de Programação - Quatro Paradigmas + Ambientes de Pr...
Paradigmas de Linguagens de Programação - Quatro Paradigmas + Ambientes de Pr...
 
Extreme Experience 2018 | Python para quem sabe Delphi
Extreme Experience 2018 | Python para quem sabe DelphiExtreme Experience 2018 | Python para quem sabe Delphi
Extreme Experience 2018 | Python para quem sabe Delphi
 
ZeroBugsProject - Técnicas de programação efetivas
ZeroBugsProject - Técnicas de programação efetivasZeroBugsProject - Técnicas de programação efetivas
ZeroBugsProject - Técnicas de programação efetivas
 
O que é código bonito?
O que é código bonito?O que é código bonito?
O que é código bonito?
 
Clean Architecture
Clean ArchitectureClean Architecture
Clean Architecture
 
A Arte do Código Limpo
A Arte do Código LimpoA Arte do Código Limpo
A Arte do Código Limpo
 
Django - Desenvolvimento web ágil com Python
Django - Desenvolvimento web ágil com PythonDjango - Desenvolvimento web ágil com Python
Django - Desenvolvimento web ágil com Python
 
Programação Orientada a Objetos - Pós Graduação - aula 1
Programação Orientada a Objetos - Pós Graduação - aula 1Programação Orientada a Objetos - Pós Graduação - aula 1
Programação Orientada a Objetos - Pós Graduação - aula 1
 
Carreira de Desenvolvimento
Carreira de DesenvolvimentoCarreira de Desenvolvimento
Carreira de Desenvolvimento
 
Princípios Básicos para Desenvolvedores
Princípios Básicos para DesenvolvedoresPrincípios Básicos para Desenvolvedores
Princípios Básicos para Desenvolvedores
 
O que é ser um bom programador?
O que é ser um bom programador?O que é ser um bom programador?
O que é ser um bom programador?
 
Clean code @rogeriofontes-techfriday-everis
Clean code @rogeriofontes-techfriday-everisClean code @rogeriofontes-techfriday-everis
Clean code @rogeriofontes-techfriday-everis
 
Boas praticas em_desenvolvimento_de_software
Boas praticas em_desenvolvimento_de_softwareBoas praticas em_desenvolvimento_de_software
Boas praticas em_desenvolvimento_de_software
 
Dicas para sua carreira de Desenvolvedor PHP
Dicas para sua carreira de Desenvolvedor PHPDicas para sua carreira de Desenvolvedor PHP
Dicas para sua carreira de Desenvolvedor PHP
 

Mais de Joel Pinho Lucas

Engajando usuários nos portais de conteúdo digital da Globo através de Sistem...
Engajando usuários nos portais de conteúdo digital da Globo através de Sistem...Engajando usuários nos portais de conteúdo digital da Globo através de Sistem...
Engajando usuários nos portais de conteúdo digital da Globo através de Sistem...
Joel Pinho Lucas
 
Discovering Lookalike audiences at scale for digital publishing with Spark MLlib
Discovering Lookalike audiences at scale for digital publishing with Spark MLlibDiscovering Lookalike audiences at scale for digital publishing with Spark MLlib
Discovering Lookalike audiences at scale for digital publishing with Spark MLlib
Joel Pinho Lucas
 
Casos de Uso de Big Data e Ciência de Dados no Mercado
 Casos de Uso de Big Data e Ciência de Dados no Mercado Casos de Uso de Big Data e Ciência de Dados no Mercado
Casos de Uso de Big Data e Ciência de Dados no Mercado
Joel Pinho Lucas
 
Building machine learning applications locally with spark
Building machine learning applications locally with sparkBuilding machine learning applications locally with spark
Building machine learning applications locally with spark
Joel Pinho Lucas
 
Utilizando Machine Learning e Java para classificar o conteúdo de páginas Web
Utilizando Machine Learning e Java para classificar o conteúdo de páginas WebUtilizando Machine Learning e Java para classificar o conteúdo de páginas Web
Utilizando Machine Learning e Java para classificar o conteúdo de páginas Web
Joel Pinho Lucas
 
Conceitos e práticas em Sistemas de Recomendação
Conceitos e práticas em Sistemas de RecomendaçãoConceitos e práticas em Sistemas de Recomendação
Conceitos e práticas em Sistemas de Recomendação
Joel Pinho Lucas
 
Bigdata gameverse
Bigdata gameverseBigdata gameverse
Bigdata gameverse
Joel Pinho Lucas
 

Mais de Joel Pinho Lucas (7)

Engajando usuários nos portais de conteúdo digital da Globo através de Sistem...
Engajando usuários nos portais de conteúdo digital da Globo através de Sistem...Engajando usuários nos portais de conteúdo digital da Globo através de Sistem...
Engajando usuários nos portais de conteúdo digital da Globo através de Sistem...
 
Discovering Lookalike audiences at scale for digital publishing with Spark MLlib
Discovering Lookalike audiences at scale for digital publishing with Spark MLlibDiscovering Lookalike audiences at scale for digital publishing with Spark MLlib
Discovering Lookalike audiences at scale for digital publishing with Spark MLlib
 
Casos de Uso de Big Data e Ciência de Dados no Mercado
 Casos de Uso de Big Data e Ciência de Dados no Mercado Casos de Uso de Big Data e Ciência de Dados no Mercado
Casos de Uso de Big Data e Ciência de Dados no Mercado
 
Building machine learning applications locally with spark
Building machine learning applications locally with sparkBuilding machine learning applications locally with spark
Building machine learning applications locally with spark
 
Utilizando Machine Learning e Java para classificar o conteúdo de páginas Web
Utilizando Machine Learning e Java para classificar o conteúdo de páginas WebUtilizando Machine Learning e Java para classificar o conteúdo de páginas Web
Utilizando Machine Learning e Java para classificar o conteúdo de páginas Web
 
Conceitos e práticas em Sistemas de Recomendação
Conceitos e práticas em Sistemas de RecomendaçãoConceitos e práticas em Sistemas de Recomendação
Conceitos e práticas em Sistemas de Recomendação
 
Bigdata gameverse
Bigdata gameverseBigdata gameverse
Bigdata gameverse
 

Último

Segurança Digital Pessoal e Boas Práticas
Segurança Digital Pessoal e Boas PráticasSegurança Digital Pessoal e Boas Práticas
Segurança Digital Pessoal e Boas Práticas
Danilo Pinotti
 
Escola Virtual - Fundação Bradesco - ITIL - Gabriel Faustino.pdf
Escola Virtual - Fundação Bradesco - ITIL - Gabriel Faustino.pdfEscola Virtual - Fundação Bradesco - ITIL - Gabriel Faustino.pdf
Escola Virtual - Fundação Bradesco - ITIL - Gabriel Faustino.pdf
Gabriel de Mattos Faustino
 
Manual-de-Credenciamento ANATER 2023.pdf
Manual-de-Credenciamento ANATER 2023.pdfManual-de-Credenciamento ANATER 2023.pdf
Manual-de-Credenciamento ANATER 2023.pdf
WELITONNOGUEIRA3
 
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdfTOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
Momento da Informática
 
História da Rádio- 1936-1970 século XIX .2.pptx
História da Rádio- 1936-1970 século XIX   .2.pptxHistória da Rádio- 1936-1970 século XIX   .2.pptx
História da Rádio- 1936-1970 século XIX .2.pptx
TomasSousa7
 
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...
Faga1939
 
Certificado Jornada Python Da Hashtag.pdf
Certificado Jornada Python Da Hashtag.pdfCertificado Jornada Python Da Hashtag.pdf
Certificado Jornada Python Da Hashtag.pdf
joaovmp3
 
Logica de Progamacao - Aula (1) (1).pptx
Logica de Progamacao - Aula (1) (1).pptxLogica de Progamacao - Aula (1) (1).pptx
Logica de Progamacao - Aula (1) (1).pptx
Momento da Informática
 

Último (8)

Segurança Digital Pessoal e Boas Práticas
Segurança Digital Pessoal e Boas PráticasSegurança Digital Pessoal e Boas Práticas
Segurança Digital Pessoal e Boas Práticas
 
Escola Virtual - Fundação Bradesco - ITIL - Gabriel Faustino.pdf
Escola Virtual - Fundação Bradesco - ITIL - Gabriel Faustino.pdfEscola Virtual - Fundação Bradesco - ITIL - Gabriel Faustino.pdf
Escola Virtual - Fundação Bradesco - ITIL - Gabriel Faustino.pdf
 
Manual-de-Credenciamento ANATER 2023.pdf
Manual-de-Credenciamento ANATER 2023.pdfManual-de-Credenciamento ANATER 2023.pdf
Manual-de-Credenciamento ANATER 2023.pdf
 
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdfTOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
 
História da Rádio- 1936-1970 século XIX .2.pptx
História da Rádio- 1936-1970 século XIX   .2.pptxHistória da Rádio- 1936-1970 século XIX   .2.pptx
História da Rádio- 1936-1970 século XIX .2.pptx
 
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...
 
Certificado Jornada Python Da Hashtag.pdf
Certificado Jornada Python Da Hashtag.pdfCertificado Jornada Python Da Hashtag.pdf
Certificado Jornada Python Da Hashtag.pdf
 
Logica de Progamacao - Aula (1) (1).pptx
Logica de Progamacao - Aula (1) (1).pptxLogica de Progamacao - Aula (1) (1).pptx
Logica de Progamacao - Aula (1) (1).pptx
 

Boas práticas de desenvolvimento para Jupyter Notebooks