Profile

Danilo J. S. Bellini @hexd


About Me

-

Events

SciPy-SP 2018-12

No dia 2018-12-01 (sábado) teremos mais um encontro do SciPy-SP.

Local: SciELO - Scientific Electronic Library Online, Avenida Onze de Junho, 269 - Vila Clementino - São Paulo, SP - CEP 04041-050

Quer palestrar no evento? Coloque as seguintes informações em sua proposta de palestra:

  • Título da palestra;
  • Duração necessária e suficiente;
  • Restrição de horário, se houver;
  • Descrição do conteúdo a ser abordado;
  • Público-alvo.

 Exemplo de proposta:

Título: Introdução ao Matplotlib

Descrição:

Já precisou fazer o gráfico de uma equação? Ou precisou visualizar os dados de uma tabela? Aprenda a criar gráficos (plots) em Python, exibindo, salvando em arquivo, personalizando e até mesmo animando o conteúdo!

Duração: de 15 a 60 minutos

Público-alvo: Qualquer pessoa que saiba o básico sobre o numpy.

Segundo encontro do GruPy-ABC

Segundo encontro do GruPy-ABC, grupo de usuários Python do Grande ABC Paulista!

O evento acontecerá na FATEC de São Caetano do Sul, no dia 16/06/2018, gratuitamente.

Maiores informações: https://grupy-abc.github.io/grupy-abc/meetups/2018/06/16/grupy-segundo-encontro.html

 

Quer palestrar no evento? Coloque as seguintes informações em sua proposta de palestra:

  • Título da palestra;
  • Duração necessária e suficiente;
  • Descrição do conteúdo a ser abordado;
  • Público-alvo.

 

Exemplo de proposta:

Título: Introdução ao Matplotlib

Descrição:

Já precisou fazer o gráfico de uma equação? Ou precisou visualizar os dados de uma tabela? Aprenda a criar gráficos (plots) em Python, exibindo, salvando em arquivo, personalizando e até mesmo animando o conteúdo!

Duração: de 15 a 60 minutos

Público-alvo: Qualquer pessoa que saiba o básico sobre o numpy.

Primeiro encontro do GruPy-ABC

Bora comemorar o nascimento do GruPy-ABC, grupo de usuários Python do Grande ABC Paulista!

O evento acontecerá na UFABC, campus de Santo André, no dia 12/05/2018 à tarde, gratuitamente.

Quer palestrar no evento? Coloque as seguintes informações em sua proposta de palestra:

  • Título com duração mínima e máxima entre colchetes;
  • Descrição, incluindo o público-alvo.

 

Exemplo de proposta:

Título: Introdução ao Matplotlib [15 a 60 minutos]

Descrição:

Já precisou fazer o gráfico de uma equação? Ou precisou visualizar os dados de uma tabela? Aprenda a criar gráficos (plots) em Python, exibindo, salvando em arquivo, personalizando e até mesmo animando o conteúdo!

Público-alvo: Qualquer pessoa que saiba o básico sobre o numpy.

SciPy-SP #5

Bibliotecas Científicas no Python

 

Você tem algum case interessante utilizando bibliotecas científicas no Python para nos contar? Ou algum material para apresentar alguma dessas bibliotecas? Ou mesmo um apanhado geral de quais são essas bibliotecas e para que elas servem?

Então venha palestrar no nosso último evento do ano!

Coloque a duração prevista ou possibilidades de duração entre colchetes ao final do título da proposta, por exemplo: "Introdução ao Numpy [15 ou 30min]".

Evento no MeetUp

Proposals

[30 min] Websockets: Criando uma sala de bate-papo com Sanic e Vanilla JS!

O objetivo é criar do zero um pequeno sistema de bate-papo usando o Sanic (microframework web assíncrono), 100% hands on, de maneira incremental, ilustrando o funcionamento e potenciais vulnerabilidades.

Assignment expressions do zero ao anti-herói

Explicação do que é o walrus, o novo recurso do Python 3.8, com usos e abusos!

AudioLazy no GruPy! (+LV2)

Palestra sobre a AudioLazy, biblioteca Python capaz de processar, sintetizar e analisar sinais iterativamente, em especial sinais de áudio.

Breve introdução ao Pandas [20 a 40 minutos]

Uma breve introdução a aspectos básicos do Pandas. O notebook estará em https://github.com/danilobellini/notebooks após a realização da palestra.

Criando um OCR no scikit-learn!

Hands-on em que desafiarei a velocidade da luz e criarei em tempo recorde um sistema de OCR (Optical Character Recognition) para dígitos escritos à mão usando o scikit-learn, biblioteca de machine learning do Python!

Dinâmica social da tolerância, motivação e confiança

Quais condutas são robustas/persistentes na sociedade? E quais tendem a desaparecer?

O que é altruísmo? Isso existe?

Quais comportamentos são benéficos para todos a médio/longo prazo?

Como podemos criar tolerância, motivação e confiança naqueles que estão de alguma forma próximos a nós? Isso é possível, mesmo que os envolvidos sejam rivais?

Do que a intolerência, a desmotivação e a desconfiança se alimentam?

O objetivo da palestra é tentar responder a essas perguntas com um pouco de filosofia/lógica, e um pouco de teoria dos jogos.

Introdução ao Sanic!

Sanic é um servidor web assíncrono para o Python com uma sintaxe baseada no Flask, escrito para ser rápido. A proposta é falar do Sanic, realizando comparações entre os frameworks (semelhanças, diferenças, vantagens e desvantagens) aonde cabível.

Tópicos (aproximadamente 10 minutos para cada tópico):

- Do "Hello world" a um serviço com muito JSON! Abordarei rotas, métodos, o módulo response e como iniciar o serviço.
- Listeners, middlewares, tratamento de erros e muito async!
- Exemplo com comunicação assíncrona com o banco de dados (PostgreSQL + SQLAlchemy Core + asyncpgsa) e envolvendo a utilização de recurso bloqueante.
- Websockets, blueprints e extensões.

Nível de dificuldade: voltado para um público que já saiba o básico de Flask e HTTP (métodos/verbos, headers da requisição, código de status de resposta, etc.). O público não precisa saber previamente o que significa "assíncrono".

Introdução ao scikit-learn

O objetivo da palestra é ilustrar como utilizar o sklearn para Machine Learning usando dados tabulares (DataFrame do Pandas ou ndarray do Numpy)!

Aprenda sobre:

- Os 3 verbos que resumem a API do sklearn;
- A diferença entre aprendizado supervisionado e não-supervisionado;
- Organização e pré-processamento da tabela de dados, incluindo treinamento e avaliação;
- Encadeamento de passos de processamento.

Jupyter Notebook 101

Vou tentar fazer um hands-on improvisado para tentar mostrar por que utilizar um IPython Notebook é útil, criando um do zero que explica algo simples de matemática, incluindo gráficos, LaTeX, Markdown, HTML.

Machine Learning com scikit-learn

Tutorial prático de machine learning visando apresentar conceitos básicos da área, convenções do scikit-learn e casos de uso.


Duração do tutorial: de 6 a 8 horas

Conhecimento prévio necessário: Familiaridade com o Python.

Conhecer o stack científico do Python, principalmente numpy e matplotlib, facilitará a compreensão.

Pré-requisitos:

Trazer o computador (o tutorial é hands-on!) com o Python (preferencialmente o 3.6) e os seguintes pacotes instalados: numpy, scipy, matplotlib, seaborn, pandas, scikit-learn.

O tutorial estará na forma de um Jupyter Notebook. O ideal é acompanhar o próprio notebook, mas tudo poderá ser feito por meio do editor de textos e do REPL que cada um preferir.

Machine Learning com scikit-learn

Tutorial prático de machine learning visando apresentar conceitos básicos da área, convenções do scikit-learn e casos de uso.

Conhecimento prévio necessário: Familiaridade com o Python e com matemática básica. Conhecer o stack científico do Python, principalmente numpy e matplotlib, facilitará a compreensão.

Pré-requisitos: Trazer o computador (o tutorial é hands-on!) com o Python (preferencialmente o 3.6) e os seguintes pacotes instalados: numpy, scipy, matplotlib, seaborn, pandas, scikit-learn.

Números no Python!

Inteiro? Ponto flutuante? Decimal? Racional! Fracionário? i ou j ... Complexo?! Logaritmo? Mediana?! Variância!!! Pera lá, cê jura que não precisa do Numpy?

O objetivo é falar sobre o que o Python traz que tem a ver com... números!

Isso inclui os seguintes módulos da biblioteca padrão do Python:

- numbers
- math
- cmath
- decimal
- fractions
- random
- statistics
- array
- struct


Além dos built-ins int, float, complex, round, range, divmod e abs, da conversão de números de/para strings, e dos recursos para conversão de objetos em números.

Plugin pytest-doctest-custom

>>> "Apresentação sobre doctest e py.test" is "nice"
True
>>> "O.o heeey, como assim?"
HUAHUAHUAHUA
>>> "Apresentação sobre doctest e py.test" is "a bad idea"
False
>>> # Ok, ¬¬ chega de strings

>>> 2 ** 3 # Matemática! Isso vai dar certo!
8, mas você não me engana!
>>> e ** (i * pi) # Bah! Duvido você fazer essa!
-1
"Bah!" pra você =P
>>> # !!! Exponencial complexa é com o Sympy! Mas...
>>> sin(t) ** 2 - cos(t) ** 2
-cos(2⋅t)
>>> # ¬¬ chega de matemática

>>> como("isso pode ser útil?")
'Com uma documentação limpa e sendo testada, por exemplo.'
>>> como(isso_seria + "limpa?")
'Tenta com um conjunto ou um dicionário...'
>>> set("23784230a4981235as4351209737484") # Quero ver!
{'0', '1', '2', '3', '4', '5', '7', '8', '9', 'a', 's'}
>>> ordenado # !?
'Sim!'

>>> "A palestra é sobre doctest" # ?
'A palestra é sobre doctest'
>>> mais_info("?")
{1: 'doctest (documentação + testes, standard library)',
 2: 'py.test',
 3: 'representação de objetos em strings',
 4: 'novo plugin pytest-doctest-custom',
 5: 'IPython.lib.pretty',
 6: 'pprint (standard library)',
 7: 'representação em diferentes versões do Python',
 8: 'e muito mais (tox, Sympy, PyPy, etc.)'}
>>> type(mais_info("?")) # ?
dict
>>> explique(4)
É um plugin que o autor da palestra criou.
>>> quero_mais_info
'Então assista!'
>>> # ¬¬ Ok, eu assisto!

Como fazer esse doctest passar nos testes? Veja em:
https://gist.github.com/danilobellini/b76a36c4fcc946ecb1d6cb92987f30d3

Polígonos, pontos e outras geometrias no Shapely (GIS) [45min]

- Breve introdução aos sistemas GIS (Sistema de Informação Geográfica)
- Dados no formato vetorial e os padrões da OGC (Open Geospatial Consortium)
- WKT, WKB e GeoJSON
- Biblioteca Shapely (Python)
- Operações com vetores
- Hands on!

Processamento espectral de sinais com a AudioLazy

Como funciona o processamento espectral?
O que é a STFT (transformada de Fourier de curto período)?
Que efeitos de áudio podemos criar com processamento espectral?
Que tipo de análises podemos conduzir dessa forma?

O objetivo dessa palestra é responder a essas perguntas com exemplos práticos e muito som, usando a AudioLazy, biblioteca GPLv3 escrita para o estudo e a prototipação de modelos de processamento de sinais em Python!

Sanic 18.12 LTS

Sanic é um servidor web assíncrono para o Python com uma sintaxe baseada no Flask, escrito para ser rápido.

Será abordada uma breve história do Sanic, com ênfase nas mudanças dessa nova versão (18.12 LTS), além de uma descrição prática dos recursos do framework, com muito código!

Sympy 101 [15 min]

Quem disse que não dá para fazer no computador contas exatas envolvendo raízes quadradas, pi, número de Euler, derivadas e limites? Nunca mais resolva um sistema linear literal na unha! Esta palestra é um hands-on de introdução ao processamento matemático simbólico em Python usando o Sympy como CAS (Computer Algebra System).

Sympy: CAS em Python

Já pensou em deixar que o computador realize operações simbólicas em cima de equações?
Por exemplo encontrar a solução de um sistema linear em que há uma variável ainda desconhecida?
Ou achar as soluções exatas envolvendo valores como "1/3", a raiz quadrada de 2, ou logaritmos?

Para esses casos, podemos usar um CAS (Computer Algebra System), e o Python possui um: o Sympy!

Essa palestra efetuará cálculos em cima dos símbolos e formulações matemáticas, ao invés de aplicar números em ponto flutuante sobre implementações das formulações.