11 KiB
Contribuire a Data Science for Beginners
Grazie per il tuo interesse nel contribuire al curriculum di Data Science for Beginners! Accogliamo con piacere i contributi della comunità.
Indice
- Codice di Condotta
- Come Posso Contribuire?
- Per Iniziare
- Linee Guida per i Contributi
- Processo di Pull Request
- Linee Guida di Stile
- Accordo di Licenza per i Contributori
Codice di Condotta
Questo progetto ha adottato il Codice di Condotta Open Source di Microsoft.
Per ulteriori informazioni, consulta le FAQ sul Codice di Condotta
o contatta opencode@microsoft.com per eventuali domande o commenti.
Come Posso Contribuire?
Segnalare Bug
Prima di creare segnalazioni di bug, controlla i problemi esistenti per evitare duplicati. Quando crei una segnalazione di bug, includi il maggior numero di dettagli possibile:
- Usa un titolo chiaro e descrittivo
- Descrivi i passaggi esatti per riprodurre il problema
- Fornisci esempi specifici (frammenti di codice, screenshot)
- Descrivi il comportamento osservato e quello atteso
- Includi i dettagli del tuo ambiente (OS, versione di Python, browser)
Suggerire Miglioramenti
I suggerimenti per miglioramenti sono benvenuti! Quando suggerisci miglioramenti:
- Usa un titolo chiaro e descrittivo
- Fornisci una descrizione dettagliata del miglioramento suggerito
- Spiega perché questo miglioramento sarebbe utile
- Elenca eventuali funzionalità simili in altri progetti, se applicabile
Contribuire alla Documentazione
I miglioramenti alla documentazione sono sempre apprezzati:
- Correggi errori di battitura e grammaticali
- Migliora la chiarezza delle spiegazioni
- Aggiungi documentazione mancante
- Aggiorna informazioni obsolete
- Aggiungi esempi o casi d'uso
Contribuire al Codice
Accogliamo contributi al codice, inclusi:
- Nuove lezioni o esercizi
- Correzioni di bug
- Miglioramenti ai notebook esistenti
- Nuovi dataset o esempi
- Miglioramenti all'applicazione dei quiz
Per Iniziare
Prerequisiti
Prima di contribuire, assicurati di avere:
- Un account GitHub
- Git installato sul tuo sistema
- Python 3.7+ e Jupyter installati
- Node.js e npm (per contributi all'app dei quiz)
- Familiarità con la struttura del curriculum
Consulta INSTALLATION.md per istruzioni dettagliate sulla configurazione.
Fork e Clone
-
Fai il fork del repository su GitHub
-
Clona il tuo fork localmente:
git clone https://github.com/YOUR-USERNAME/Data-Science-For-Beginners.git cd Data-Science-For-Beginners -
Aggiungi il remote upstream:
git remote add upstream https://github.com/microsoft/Data-Science-For-Beginners.git
Crea un Branch
Crea un nuovo branch per il tuo lavoro:
git checkout -b feature/your-feature-name
# or
git checkout -b fix/your-bug-fix
Convenzioni per la denominazione dei branch:
feature/- Nuove funzionalità o lezionifix/- Correzioni di bugdocs/- Modifiche alla documentazionerefactor/- Refactoring del codice
Linee Guida per i Contributi
Per il Contenuto delle Lezioni
Quando contribuisci con lezioni o modifichi quelle esistenti:
-
Segui la struttura esistente:
- README.md con il contenuto della lezione
- Notebook Jupyter con esercizi
- Compito (se applicabile)
- Link ai quiz pre e post lezione
-
Includi questi elementi:
- Obiettivi di apprendimento chiari
- Spiegazioni passo-passo
- Esempi di codice con commenti
- Esercizi per la pratica
- Link a risorse aggiuntive
-
Garantisci l'accessibilità:
- Usa un linguaggio chiaro e semplice
- Fornisci testo alternativo per le immagini
- Includi commenti nel codice
- Considera diversi stili di apprendimento
Per i Notebook Jupyter
-
Cancella tutti gli output prima di fare il commit:
jupyter nbconvert --clear-output --inplace notebook.ipynb -
Includi celle markdown con spiegazioni
-
Usa una formattazione coerente:
# 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 -
Testa completamente il tuo notebook prima di inviarlo
Per il Codice Python
Segui le linee guida di stile 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)
Per i Contributi all'App dei Quiz
Quando modifichi l'applicazione dei quiz:
-
Testa localmente:
cd quiz-app npm install npm run serve -
Esegui il linter:
npm run lint -
Compila con successo:
npm run build -
Segui la guida di stile Vue.js e i modelli esistenti
Per le Traduzioni
Quando aggiungi o aggiorni traduzioni:
- Segui la struttura nella cartella
translations/ - Usa il codice della lingua come nome della cartella (es.
itper italiano) - Mantieni la stessa struttura dei file della versione inglese
- Aggiorna i link dei quiz per includere il parametro della lingua:
?loc=it - Testa tutti i link e la formattazione
Processo di Pull Request
Prima di Inviare
-
Aggiorna il tuo branch con le modifiche più recenti:
git fetch upstream git rebase upstream/main -
Testa le tue modifiche:
- Esegui tutti i notebook modificati
- Testa l'app dei quiz se modificata
- Verifica che tutti i link funzionino
- Controlla errori di ortografia e grammatica
-
Fai il commit delle tue modifiche:
git add . git commit -m "Brief description of changes"Scrivi messaggi di commit chiari:
- Usa il tempo presente ("Aggiungi funzionalità" non "Aggiunta funzionalità")
- Usa il modo imperativo ("Sposta il cursore su..." non "Sposta il cursore su...")
- Limita la prima riga a 72 caratteri
- Fai riferimento a problemi e pull request quando rilevante
-
Fai il push al tuo fork:
git push origin feature/your-feature-name
Creare la Pull Request
- Vai al repository
- Clicca su "Pull requests" → "New pull request"
- Clicca su "compare across forks"
- Seleziona il tuo fork e branch
- Clicca su "Create pull request"
Formato del Titolo della PR
Usa titoli chiari e descrittivi seguendo questo formato:
[Component] Brief description
Esempi:
[Lesson 7] Fix errore di importazione notebook Python[Quiz App] Aggiungi traduzione in tedesco[Docs] Aggiorna README con nuovi prerequisiti[Fix] Correggi percorso dati nella lezione di visualizzazione
Descrizione della PR
Includi nella descrizione della PR:
- Cosa: Quali modifiche hai apportato?
- Perché: Perché queste modifiche sono necessarie?
- Come: Come hai implementato le modifiche?
- Test: Come hai testato le modifiche?
- Screenshot: Includi screenshot per modifiche visive
- Problemi correlati: Link ai problemi correlati (es. "Fixes #123")
Processo di Revisione
- Controlli automatici verranno eseguiti sulla tua PR
- I manutentori revisioneranno il tuo contributo
- Rispondi al feedback facendo commit aggiuntivi
- Una volta approvata, un manutentore unirà la tua PR
Dopo che la tua PR è stata Unita
-
Elimina il tuo branch:
git branch -d feature/your-feature-name git push origin --delete feature/your-feature-name -
Aggiorna il tuo fork:
git checkout main git pull upstream main git push origin main
Linee Guida di Stile
Markdown
-
Usa livelli di intestazione coerenti
-
Includi righe vuote tra le sezioni
-
Usa blocchi di codice con specificatori di linguaggio:
```python import pandas as pd ``` -
Aggiungi testo alternativo alle immagini:
 -
Mantieni lunghezze di riga ragionevoli (circa 80-100 caratteri)
Python
- Segui la guida di stile PEP 8
- Usa nomi di variabili significativi
- Aggiungi docstring alle funzioni
- Includi suggerimenti di tipo dove appropriato:
def process_data(df: pd.DataFrame) -> pd.DataFrame: """Process the input dataframe.""" return df
JavaScript/Vue.js
- Segui la guida di stile Vue.js 2
- Usa la configurazione ESLint fornita
- Scrivi componenti modulari e riutilizzabili
- Aggiungi commenti per la logica complessa
Organizzazione dei File
- Mantieni i file correlati insieme
- Usa nomi di file descrittivi
- Segui la struttura delle directory esistente
- Non fare commit di file non necessari (.DS_Store, .pyc, node_modules, ecc.)
Accordo di Licenza per i Contributori
Questo progetto accoglie contributi e suggerimenti. La maggior parte dei contributi richiede che tu accetti un Accordo di Licenza per i Contributori (CLA) dichiarando che hai il diritto di, e effettivamente concedi, i diritti per utilizzare il tuo contributo. Per dettagli, visita
https://cla.microsoft.com.
Quando invii una pull request, un bot CLA determinerà automaticamente se devi fornire un CLA e decorerà la PR di conseguenza (es. etichetta, commento). Segui semplicemente le istruzioni fornite dal bot. Dovrai farlo solo una volta per tutti i repository che utilizzano il nostro CLA.
Domande?
- Controlla il nostro Canale Discord #data-science-for-beginners
- Unisciti alla nostra comunità Discord
- Consulta i problemi esistenti e le pull request
Grazie!
I tuoi contributi rendono questo curriculum migliore per tutti. Grazie per dedicare il tuo tempo a contribuire!
Disclaimer:
Questo documento è stato tradotto utilizzando il servizio di traduzione automatica Co-op Translator. Sebbene ci impegniamo per garantire l'accuratezza, si prega di notare che le traduzioni automatiche possono contenere errori o imprecisioni. Il documento originale nella sua lingua nativa dovrebbe essere considerato la fonte autorevole. Per informazioni critiche, si raccomanda una traduzione professionale effettuata da un traduttore umano. Non siamo responsabili per eventuali incomprensioni o interpretazioni errate derivanti dall'uso di questa traduzione.