Obrigado pelo seu interesse em contribuir para o currículo de Ciência de Dados para Iniciantes! Agradecemos contribuições da comunidade.
- Código de Conduta
- Como Posso Contribuir?
- Primeiros Passos
- Diretrizes de Contribuição
- Processo de Pull Request
- Diretrizes de Estilo
- Acordo de Licença de Contribuidor
Este projeto adotou o Código de Conduta de Código Aberto da Microsoft.
Para mais informações, veja as Perguntas Frequentes sobre o Código de Conduta
ou entre em contato pelo e-mail opencode@microsoft.com para quaisquer dúvidas ou comentários adicionais.
Antes de criar relatórios de bugs, verifique os problemas existentes para evitar duplicatas. Ao criar um relatório de bug, inclua o máximo de detalhes possível:
- Use um título claro e descritivo
- Descreva os passos exatos para reproduzir o problema
- Forneça exemplos específicos (trechos de código, capturas de tela)
- Descreva o comportamento observado e o esperado
- Inclua detalhes do seu ambiente (SO, versão do Python, navegador)
Sugestões de melhorias são bem-vindas! Ao sugerir melhorias:
- Use um título claro e descritivo
- Forneça uma descrição detalhada da melhoria sugerida
- Explique por que essa melhoria seria útil
- Liste quaisquer recursos semelhantes em outros projetos, se aplicável
Melhorias na documentação são sempre apreciadas:
- Corrigir erros de digitação e gramática
- Melhorar a clareza das explicações
- Adicionar documentação ausente
- Atualizar informações desatualizadas
- Adicionar exemplos ou casos de uso
Aceitamos contribuições de código, incluindo:
- Novas lições ou exercícios
- Correções de bugs
- Melhorias em notebooks existentes
- Novos conjuntos de dados ou exemplos
- Aprimoramentos no aplicativo de quiz
Antes de contribuir, certifique-se de ter:
- Uma conta no GitHub
- Git instalado no seu sistema
- Python 3.7+ e Jupyter instalados
- Node.js e npm (para contribuições no aplicativo de quiz)
- Familiaridade com a estrutura do currículo
Veja INSTALLATION.md para instruções detalhadas de configuração.
-
Faça um fork do repositório no GitHub
-
Clone seu fork localmente:
git clone https://github.com/YOUR-USERNAME/Data-Science-For-Beginners.git cd Data-Science-For-Beginners -
Adicione o remoto upstream:
git remote add upstream https://github.com/microsoft/Data-Science-For-Beginners.git
Crie um novo branch para seu trabalho:
git checkout -b feature/your-feature-name
# or
git checkout -b fix/your-bug-fixConvenções de nomenclatura de branch:
feature/- Novos recursos ou liçõesfix/- Correções de bugsdocs/- Alterações na documentaçãorefactor/- Refatoração de código
Ao contribuir com lições ou modificar as existentes:
-
Siga a estrutura existente:
- README.md com o conteúdo da lição
- Notebook Jupyter com exercícios
- Tarefa (se aplicável)
- Link para quizzes pré e pós-lição
-
Inclua os seguintes elementos:
- Objetivos de aprendizado claros
- Explicações passo a passo
- Exemplos de código com comentários
- Exercícios para prática
- Links para recursos adicionais
-
Garanta acessibilidade:
- Use linguagem clara e simples
- Forneça texto alternativo para imagens
- Inclua comentários no código
- Considere diferentes estilos de aprendizado
-
Limpe todas as saídas antes de fazer o commit:
jupyter nbconvert --clear-output --inplace notebook.ipynb
-
Inclua células de markdown com explicações
-
Use formatação consistente:
# Import libraries at the top import pandas as pd import numpy as np import matplotlib.pyplot as plt # Use meaningful variable names # Add comments for complex operations # Follow PEP 8 style guidelines
-
Teste completamente seu notebook antes de enviar
Siga as diretrizes de estilo PEP 8:
# Good practices
import pandas as pd
def calculate_mean(data):
"""Calculate the mean of a dataset.
Args:
data (list): List of numerical values
Returns:
float: Mean of the dataset
"""
return sum(data) / len(data)Ao modificar o aplicativo de quiz:
-
Teste localmente:
cd quiz-app npm install npm run serve -
Execute o linter:
npm run lint
-
Construa com sucesso:
npm run build
-
Siga o guia de estilo do Vue.js e os padrões existentes
Ao adicionar ou atualizar traduções:
- Siga a estrutura na pasta
translations/ - Use o código do idioma como nome da pasta (ex.:
ptpara Português) - Mantenha a mesma estrutura de arquivos da versão em inglês
- Atualize os links dos quizzes para incluir o parâmetro de idioma:
?loc=pt - Teste todos os links e a formatação
-
Atualize seu branch com as alterações mais recentes:
git fetch upstream git rebase upstream/main
-
Teste suas alterações:
- Execute todos os notebooks modificados
- Teste o aplicativo de quiz, se modificado
- Verifique se todos os links funcionam
- Confira erros de ortografia e gramática
-
Faça commit das suas alterações:
git add . git commit -m "Brief description of changes"
Escreva mensagens de commit claras:
- Use tempo presente ("Adiciona recurso" em vez de "Adicionou recurso")
- Use modo imperativo ("Mover cursor para..." em vez de "Move cursor para...")
- Limite a primeira linha a 72 caracteres
- Referencie problemas e pull requests quando relevante
-
Envie para seu fork:
git push origin feature/your-feature-name
- Acesse o repositório
- Clique em "Pull requests" → "New pull request"
- Clique em "compare across forks"
- Selecione seu fork e branch
- Clique em "Create pull request"
Use títulos claros e descritivos seguindo este formato:
[Component] Brief description
Exemplos:
[Lesson 7] Corrigir erro de importação no notebook Python[Quiz App] Adicionar tradução para alemão[Docs] Atualizar README com novos pré-requisitos[Fix] Corrigir caminho de dados na lição de visualização
Inclua na descrição do seu PR:
- O que: Quais alterações você fez?
- Por que: Por que essas alterações são necessárias?
- Como: Como você implementou as alterações?
- Testes: Como você testou as alterações?
- Capturas de tela: Inclua capturas de tela para alterações visuais
- Problemas relacionados: Link para problemas relacionados (ex.: "Fixes #123")
- Verificações automáticas serão executadas no seu PR
- Os mantenedores revisarão sua contribuição
- Aborde o feedback fazendo commits adicionais
- Uma vez aprovado, um mantenedor fará o merge do seu PR
-
Exclua seu branch:
git branch -d feature/your-feature-name git push origin --delete feature/your-feature-name
-
Atualize seu fork:
git checkout main git pull upstream main git push origin main
-
Use níveis de cabeçalho consistentes
-
Inclua linhas em branco entre seções
-
Use blocos de código com especificadores de linguagem:
```python import pandas as pd ```
-
Adicione texto alternativo às imagens:
 -
Mantenha os comprimentos das linhas razoáveis (cerca de 80-100 caracteres)
- Siga o guia de estilo PEP 8
- Use nomes de variáveis significativos
- Adicione docstrings às funções
- Inclua dicas de tipo quando apropriado:
def process_data(df: pd.DataFrame) -> pd.DataFrame: """Process the input dataframe.""" return df
- Siga o guia de estilo do Vue.js 2
- Use a configuração do ESLint fornecida
- Escreva componentes modulares e reutilizáveis
- Adicione comentários para lógica complexa
- Mantenha arquivos relacionados juntos
- Use nomes de arquivos descritivos
- Siga a estrutura de diretórios existente
- Não faça commit de arquivos desnecessários (.DS_Store, .pyc, node_modules, etc.)
Este projeto aceita contribuições e sugestões. A maioria das contribuições exige que você concorde com um Acordo de Licença de Contribuidor (CLA), declarando que você tem o direito de, e realmente concede a nós os direitos de usar sua contribuição. Para detalhes, visite
https://cla.microsoft.com.
Quando você enviar um pull request, um CLA-bot determinará automaticamente se você precisa fornecer um CLA e decorará o PR adequadamente (ex.: etiqueta, comentário). Basta seguir as instruções fornecidas pelo bot. Você só precisará fazer isso uma vez em todos os repositórios que usam nosso CLA.
- Confira nosso Canal Discord #data-science-for-beginners
- Junte-se à nossa comunidade no Discord
- Revise os problemas existentes e pull requests
Suas contribuições tornam este currículo melhor para todos. Obrigado por dedicar seu tempo para contribuir!
Aviso Legal:
Este documento foi traduzido utilizando o serviço de tradução por IA Co-op Translator. Embora nos esforcemos para garantir a precisão, esteja ciente de que traduções automatizadas podem conter erros ou imprecisões. O documento original em seu idioma nativo deve ser considerado a fonte oficial. Para informações críticas, recomenda-se a tradução profissional realizada por humanos. Não nos responsabilizamos por quaisquer mal-entendidos ou interpretações equivocadas decorrentes do uso desta tradução.