Perfil
Propostas
A infra está morta?
Nesta talk eu gostaria de abordar o mercado de trabalho, suas mudanças e as adaptações necessárias na vida pessoal e profisisonal.
Crawling the web with Python and Scrapy
This presentation will give you an overview of the open source library Scrapy. I'll present some examples from the simple use case to the more complex one. You'll see how is it possible to scale your spiders on the cloud and how to use highly available proxies distributed around the globe to archive your scraping goals.
Ensinando robótica para crianças e adolescentes
Ensinando robótica para crianças e adolescentes
Um pouco da minha experiência como professor
- o funcionamento das aulas
- quais eram as tecnologias utilizadas
- como os alunos reagiam
- aspectos socio culturais
- o que eu aprendi antes, durante e depois desse processo
- o relacionamento do Python com tudo isso
Mantendo e contribuindo com um projeto open source
Conversarei sobre como tive a ideia de fazer um plugin para o editor de código Atom e quais foram os desafios encontrados após o projeto ganhar visibilidade na comunidade internacional. A seguir mostro algumas dicas sobre como começar a contribuir com projetos open source ou como melhorar sua participação na comunidade.
- criando um projeto open source
- mantendo um projeto open source
- como contribuir com software livre
sinesp-bot
O sinesp-client tornou possível a consulta à base de dados do SINESP Cidadão sem a necessidade do preenchimento de captchas ou algum outro tipo de autenticação. O SINESP Cidadão é uma base de dados pública de veículos brasileiros. É muito útil para identificar carros ou motos roubados ou suspeitos.
Não sabemos o porquê, mas o governo não mantém uma API verdadeiramente pública para este serviço. A única maneira de acessar os dados é acessando o site do SINESP e respondendo a perguntas de verificação (captchas) para cada uma das requisições.
Felizmente as aplicações para Android e iOS permitem que a busca seja feita sem que seja preciso responder a nenhum teste captcha. A comunidade então fez uma engenharia reversa no aplicativo para que pudéssemos ter acesso a essas informações públicas sem que fosse preciso responder a esses captchas. Isso deu origem a diversas bibliotecas nas mais diversas linguagens de programação. Eu estava mantendo a sinesp-client, que era a versão em Python, amplamente utilizada por empresas de segurança, estacionamentos e até mesmo algumas repartições públicas, incluindo DETRAN e delegacias de polícia.
No entanto, a equipe do SINESP constantemente lança atualizações do aplicativo dificultando o acesso automatizado das informações e obfuscando a forma com a qual o acesso é feito. Foi então que tive a ideia de criar um repositório demonstrando a utilização de uma técnica não invasiva utilizada principalmente em testes de QA. Usei o SDK do Android e suas ferramentas agregadas e o software Appium para automatizar as consultas, simulando o comportamento de um usuário comum, ou seja, utilizando um dispositivo físico ou o emulador oficial da plataforma.
Assim, o aplicativo funciona como uma caixa preta, não sendo necessário obter detalhes sobre sua implementação, dependendo apenas dos identificadores únicos utilizados na plataforma Android e que ficam disponíveis por questões de usabilidade da Interface de Usuário do sistema operacional. Sua assinatura digital é mantida.
A prova de conceito funciona, mas o processo ainda possui muitas partes manuais, como a instalação e configuração do ambiente e do emulador do Android. Possível linha de melhorias pra tornar a utilização mais fácil e pronta para utilização em produção:
- criar um container docker com todas as dependências para execução stand-alone
- melhorar a documentação (incluindo instruções para uso de proxy)
- melhorar o código fonte (foi feito bem rápido apenas como prova de conceito)
- criar e distribuir um pacote python (setup.py e afins; pode ser no docker hub também)
Links:
- https://github.com/victor-torres/sinesp-client
[Web] Implementando suporte a multi-tenancy em uma aplicação crítica
Esta apresentação é indicada para quem planeja escalar e distribuir o seu sistema em nuvem ou tem curiosidade sobre o assunto.
Vou compartilhar informações valiosas sobre o que aprendemos com os problemas e desafios encontrados ao longo dessa jornada e boas práticas sobre o tema que poderão lhe ajudar a implementar a sua própria solução e a migrar o seu sistema ou o da sua empresa.
Você verá o que acontece quando soluções que operam em caráter on-premise, dentro dos sites ou data centers do cliente, precisam se tornar multi-tenant, suportando múltiplos clientes ou organizações.
Foi o que aconteceu com a Evolux, uma solução web de atendimento por voz construída para operações críticas e de alto valor agregado e que entrega toda a tecnologia necessária para um Call Center como serviço.
[Web] Implementando suporte a multi-tenancy em uma aplicação crítica
Esta apresentação é indicada para quem planeja escalar e distribuir o seu sistema em nuvem ou tem curiosidade sobre o assunto.
Vou compartilhar informações valiosas sobre o que aprendemos com os problemas e desafios encontrados ao longo dessa jornada e boas práticas sobre o tema que poderão lhe ajudar a implementar a sua própria solução e a migrar o seu sistema ou o da sua empresa.
Você verá o que acontece quando soluções que operam em caráter on-premise, dentro dos sites ou data centers do cliente, precisam se tornar multi-tenant, suportando múltiplos clientes ou organizações.
Foi o que aconteceu com a Evolux, uma solução web de atendimento por voz construída para operações críticas e de alto valor agregado e que entrega toda a tecnologia necessária para um Call Center como serviço.