Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Cumbuca Dev: Ensinando com Open Source - 71º Py...
Search
Camila Maia
January 26, 2024
Technology
0
51
Cumbuca Dev: Ensinando com Open Source - 71º Python Floripa no MeLi
https://www.meetup.com/floripa-python-meetup/events/298597924/
Camila Maia
January 26, 2024
Tweet
Share
More Decks by Camila Maia
See All by Camila Maia
GitHub Actions - Semana DevOps LINUXTips.pdf
camilamaia
0
22
Minha Jornada em Developer Experience (DX) - DevOpsDays Salvador 2024
camilamaia
0
19
COMO E PORQUE ENSINAR A PROGRAMAR COM OPEN SOURCE - Python Brasil 2023
camilamaia
0
41
Como testar e manter APIs de qualidade - Codecon Digital 2023
camilamaia
0
390
factory_boy: testing like a pro. DjangoCon US 2022
camilamaia
0
370
ScanAPI Workshop. DjangoCon EU 2022
camilamaia
0
320
factory_boy: testing like a pro. DjangoCon EU 2022
camilamaia
1
410
Como testar e documentar REST APIs com ScanAPI - Agile Testers Conference 2021
camilamaia
0
250
factory_boy: Testando Objetos Complexos Python Brasil 2021
camilamaia
0
340
Other Decks in Technology
See All in Technology
Why Platform Engineering? - マルチプロダクト・少人数 SRE の壁を越える挑戦 -
nulabinc
PRO
5
450
AIによるコードレビューで開発体験を向上させよう!
moongift
PRO
0
450
経済メディア編集部の実務に小さく刺さるAI / small-ai-with-editorial
nkzn
2
420
正式リリースされた Semantic Kernel の Agent Framework 全部紹介!
okazuki
1
1.2k
本当に必要なのは「QAという技術」だった!試行錯誤から生まれた、品質とデリバリーの両取りアプローチ / Turns Out, "QA as a Discipline" Was the Key!
ar_tama
9
4.7k
Google Cloud Next 2025 Recap アプリケーション開発を加速する機能アップデート / Application development-related features of Google Cloud
ryokotmng
0
250
dbtとリバースETLでデータ連携の複雑さに立ち向かう
morookacube
0
890
LINE 購物幕後推手
line_developers_tw
PRO
0
560
計装を見直してアプリケーションパフォーマンスを改善させた話
donkomura
1
130
続・やっぱり余白が大切だった話
kakehashi
PRO
4
340
TanStack Start 技術選定の裏側 / Findy-Lunch-LT-TanStack-Start
iktakahiro
1
150
技術選定を突き詰める 懇親会LT
okaru
2
830
Featured
See All Featured
Visualization
eitanlees
146
16k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
A Modern Web Designer's Workflow
chriscoyier
693
190k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
710
KATA
mclloyd
29
14k
Building Adaptive Systems
keathley
41
2.5k
The Straight Up "How To Draw Better" Workshop
denniskardys
233
140k
For a Future-Friendly Web
brad_frost
177
9.7k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
45
7.2k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.6k
Transcript
71º Python Floripa no MeLi Cumbuca Dev: Ensinando com Open
Source
speakerdeck.com/camilamaia
Camila Maia
Eu LGBTQIA+ PcD Jogar bola Bateria
Comunidades DX Open Source ScanAPI 2010
None
ANON
None
None
None
None
None
None
None
None
None
None
None
EXPERIÊNCIA TRABALHO
None
None
Largar o emprego para poder estudar mais? ? ? ?
? ? ? ? ?
None
Como vocês ajudariam Anon?
ACONTECEU COMIGO
E mais de uma vez…
None
Teoria: Cursos/ Material de Apoio
Tempo Limitado
Não reinventar a roda
Foco em apenas um curso por vez
Prática: Open Source 🤯
OPEN SOURCE
Código projetado para ser acessado abertamente pelo público
Todas as pessoas podem vê-lo
(e deve ser compreensível por pessoas programadoras)
Modificá-lo conforme necessidades
Distribuí-lo conforme necessidades
Descentralizado e Colaborativo
COMO?
1:1's Objetivos Conhecer a pessoa Medir temperatura Laço / Vínculo
1. Aula/material sobre o tópico
2. Pair comigo guiando
3. Pair com a pessoa guiando
4. Fazer por si
TÓPICO: GIT + GITHUB
None
Markdown Fork Issue PR
Hora de ir para a vida real!
BRUTILS
None
None
Criado em 2017
Não recebia mais manutenção nem novas features
Tapa inicial: automação, doc, lint…
É o projeto ideal!
As regras de negócio não são complexas
Cada funcionalidade tem escopo bem definido
Não precisa aprender sobre frameworks, múltiplas libs, web…
Fácil de compreender o valor e o propósito
None
TÓPICO: BIBLIOTECA PYTHON
Para que serve O quê é Estrutura Como funciona
PyPI
TÓPICO: EXPERIÊNCIA DO USUÁRIO
READMEs
Repensar assinaturas dos utilitários
Pensar em Padronizações
TÓPICO: TDD
Alteração das assinaturas dos utilitários
Refatoração
Criação de novas funcionalidades
Regex
TÓPICO: CI/CD COM GITHUB ACTIONS
Para que serve CI/CD O quê é CI/CD Estrutura GHA
O quê é GitHub Actions
Makefile
Workflow para checar lint
Workflow para rodar testes
TÓPICO: APRENDENDO A FAZER RELEASES (PYPI)
Versão Semântica
Poetry
CHANGELOG
Workflow para publicar release
TÓPICO: COLABORAÇÃO
Licença
Código de Conduta
Criação de templates para issues
Criação de templates para PRs
Criação de grupos no GitHub
Contributing: local
Contributing: release
Revisão de PRs
Resolução de conflitos de código
TÓPICO: GERÊNCIA DE PROJETOS
SCRUM
POR QUE?
Experiência profissional REAL
Contempla o ciclo completo de desenvolvimento de software
Planejamento ➡ operação/manutenção
Colaboração
Gerenciamento de Projeto
Portfólio
GitHub Sponsors 🤑🤑🤑
Currículo
Entrevistas de Emprego
Impacto
Consegue entender se gosta de fato
RESULTADOS
None
15 contribuidores
+200 PRs
120 issues resolvidas
135 ⭐
EXPANDINDO A IDEIA
None
Promover a diversidade e a igualdade na área de TI,
empoderando grupos minoritários através da educação.
MINORIAS NO TOPO
COMUNIDADE
EXPERIÊNCIA TRABALHO
EXPERIÊNCIA TEORIA + OPEN SOURCE + COMUNIDADE OPORTUNIDADE
Ajudar poucas pessoas por vez, mas com foco total
Não reinventar a roda: material e comunidades
🐣
cumbuca.dev
Obrigada!
@cmaiacd camilamaia.com github.com/camilamaia github.com/antoniamaia