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
COMO E PORQUE ENSINAR A PROGRAMAR COM OPEN SOU...
Search
Camila Maia
November 04, 2023
0
41
COMO E PORQUE ENSINAR A PROGRAMAR COM OPEN SOURCE - Python Brasil 2023
Camila Maia
November 04, 2023
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
21
Cumbuca Dev: Ensinando com Open Source - 71º Python Floripa no MeLi
camilamaia
0
52
Como testar e manter APIs de qualidade - Codecon Digital 2023
camilamaia
0
400
factory_boy: testing like a pro. DjangoCon US 2022
camilamaia
0
390
ScanAPI Workshop. DjangoCon EU 2022
camilamaia
0
330
factory_boy: testing like a pro. DjangoCon EU 2022
camilamaia
1
420
Como testar e documentar REST APIs com ScanAPI - Agile Testers Conference 2021
camilamaia
0
260
factory_boy: Testando Objetos Complexos Python Brasil 2021
camilamaia
0
350
Featured
See All Featured
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.6k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
45
7.3k
GitHub's CSS Performance
jonrohan
1031
460k
Optimizing for Happiness
mojombo
378
70k
Six Lessons from altMBA
skipperchong
28
3.8k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
52
2.8k
Java REST API Framework Comparison - PWX 2021
mraible
31
8.6k
Testing 201, or: Great Expectations
jmmastey
42
7.5k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
19
1.3k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
160
15k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.9k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Transcript
COMO E PORQUE ENSINAR A PROGRAMAR COM OPEN SOURCE
speakerdeck.com/camilamaia
Camila Maia
Eu LGBTQIA+ PcD Bateria Jogar bola
Comunidades DX Open Source ScanAPI 2010
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…
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
None
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
Fork Issue PR Markdown
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
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: DEPENDÊNCIAS
dependabot
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
hacktoberfest
+1k downloads por mês
13 contribuidores
+165 PRs
94 issues resolvidas
+90 ⭐
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
VOCÊS SÃO FODA
@cmaiacd camilamaia.com github.com/camilamaia github.com/antoniamaia