12 KiB
Contribuind la Data Science pentru Începători
Mulțumim pentru interesul de a contribui la curriculumul Data Science pentru Începători! Salutăm contribuțiile din partea comunității.
Cuprins
- Cod de Conduită
- Cum Pot Contribui?
- Începutul
- Ghid de Contribuție
- Procesul de Pull Request
- Ghiduri de Stil
- Acord de Licență pentru Contribuitori
Cod de Conduită
Acest proiect a adoptat Codul de Conduită Open Source Microsoft.
Pentru mai multe informații, consultați FAQ-ul Codului de Conduită
sau contactați opencode@microsoft.com pentru întrebări sau comentarii suplimentare.
Cum Pot Contribui?
Raportarea Bug-urilor
Înainte de a crea rapoarte de bug-uri, verificați problemele existente pentru a evita duplicatele. Când creați un raport de bug, includeți cât mai multe detalii:
- Folosiți un titlu clar și descriptiv
- Descrieți pașii exacți pentru a reproduce problema
- Furnizați exemple specifice (fragmente de cod, capturi de ecran)
- Descrieți comportamentul observat și cel așteptat
- Includeți detalii despre mediul dvs. (OS, versiunea Python, browser)
Sugestii de Îmbunătățiri
Sugestiile de îmbunătățiri sunt binevenite! Când propuneți îmbunătățiri:
- Folosiți un titlu clar și descriptiv
- Furnizați o descriere detaliată a îmbunătățirii sugerate
- Explicați de ce această îmbunătățire ar fi utilă
- Listați funcționalități similare din alte proiecte, dacă este cazul
Contribuind la Documentație
Îmbunătățirile documentației sunt mereu apreciate:
- Corectați greșelile de ortografie și gramatică
- Îmbunătățiți claritatea explicațiilor
- Adăugați documentație lipsă
- Actualizați informațiile învechite
- Adăugați exemple sau cazuri de utilizare
Contribuind Cod
Salutăm contribuțiile de cod, inclusiv:
- Lecții sau exerciții noi
- Corectarea bug-urilor
- Îmbunătățiri ale notebook-urilor existente
- Seturi de date sau exemple noi
- Îmbunătățiri ale aplicației de quiz
Începutul
Cerințe Prealabile
Înainte de a contribui, asigurați-vă că aveți:
- Un cont GitHub
- Git instalat pe sistemul dvs.
- Python 3.7+ și Jupyter instalat
- Node.js și npm (pentru contribuții la aplicația de quiz)
- Familiaritate cu structura curriculumului
Consultați INSTALLATION.md pentru instrucțiuni detaliate de configurare.
Fork și Clone
-
Fork-uiți repository-ul pe GitHub
-
Clonați fork-ul local:
git clone https://github.com/YOUR-USERNAME/Data-Science-For-Beginners.git cd Data-Science-For-Beginners -
Adăugați upstream remote:
git remote add upstream https://github.com/microsoft/Data-Science-For-Beginners.git
Creați un Branch
Creați un branch nou pentru munca dvs.:
git checkout -b feature/your-feature-name
# or
git checkout -b fix/your-bug-fix
Convenții pentru denumirea branch-urilor:
feature/- Funcționalități sau lecții noifix/- Corectarea bug-urilordocs/- Modificări ale documentațieirefactor/- Refactorizarea codului
Ghid de Contribuție
Pentru Conținutul Lecțiilor
Când contribuiți lecții sau modificați lecții existente:
-
Respectați structura existentă:
- README.md cu conținutul lecției
- Notebook Jupyter cu exerciții
- Temă (dacă este cazul)
- Link către quiz-uri pre și post
-
Includeți aceste elemente:
- Obiective clare de învățare
- Explicații pas cu pas
- Exemple de cod cu comentarii
- Exerciții pentru practică
- Link-uri către resurse suplimentare
-
Asigurați accesibilitatea:
- Folosiți un limbaj clar și simplu
- Furnizați text alternativ pentru imagini
- Includeți comentarii în cod
- Luați în considerare stiluri diferite de învățare
Pentru Notebook-uri Jupyter
-
Ștergeți toate output-urile înainte de a face commit:
jupyter nbconvert --clear-output --inplace notebook.ipynb -
Includeți celule markdown cu explicații
-
Folosiți un format consistent:
# 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ți complet notebook-ul înainte de a-l trimite
Pentru Cod Python
Respectați ghidul de stil 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)
Pentru Contribuții la Aplicația de Quiz
Când modificați aplicația de quiz:
-
Testați local:
cd quiz-app npm install npm run serve -
Rulați linter-ul:
npm run lint -
Construiți cu succes:
npm run build -
Respectați ghidul de stil Vue.js și modelele existente
Pentru Traduceri
Când adăugați sau actualizați traduceri:
- Respectați structura din folderul
translations/ - Folosiți codul limbii ca nume de folder (de exemplu,
frpentru franceză) - Mențineți aceeași structură de fișiere ca versiunea în engleză
- Actualizați link-urile quiz-urilor pentru a include parametrul limbii:
?loc=fr - Testați toate link-urile și formatările
Procesul de Pull Request
Înainte de a Trimite
-
Actualizați branch-ul dvs. cu cele mai recente modificări:
git fetch upstream git rebase upstream/main -
Testați modificările dvs.:
- Rulați toate notebook-urile modificate
- Testați aplicația de quiz dacă a fost modificată
- Verificați toate link-urile
- Verificați greșelile de ortografie și gramatică
-
Faceți commit modificărilor dvs.:
git add . git commit -m "Brief description of changes"Scrieți mesaje de commit clare:
- Folosiți timpul prezent ("Adaugă funcționalitate" nu "Am adăugat funcționalitate")
- Folosiți modul imperativ ("Mută cursorul la..." nu "Mută cursorul la...")
- Limitați prima linie la 72 de caractere
- Faceți referire la probleme și pull request-uri relevante
-
Faceți push la fork-ul dvs.:
git push origin feature/your-feature-name
Crearea Pull Request-ului
- Accesați repository-ul
- Click pe "Pull requests" → "New pull request"
- Click pe "compare across forks"
- Selectați fork-ul și branch-ul dvs.
- Click pe "Create pull request"
Formatul Titlului PR
Folosiți titluri clare și descriptive urmând acest format:
[Component] Brief description
Exemple:
[Lesson 7] Fix Python notebook import error[Quiz App] Add German translation[Docs] Update README with new prerequisites[Fix] Correct data path in visualization lesson
Descrierea PR
Includeți în descrierea PR-ului:
- Ce: Ce modificări ați făcut?
- De ce: De ce sunt necesare aceste modificări?
- Cum: Cum ați implementat modificările?
- Testare: Cum ați testat modificările?
- Capturi de ecran: Includeți capturi de ecran pentru modificările vizuale
- Probleme asociate: Link către problemele asociate (de exemplu, "Fixes #123")
Procesul de Revizuire
- Verificările automate vor rula pe PR-ul dvs.
- Maintainerii vor revizui contribuția dvs.
- Adresați feedback-ul făcând commit-uri suplimentare
- După aprobare, un maintainer va face merge PR-ul dvs.
După ce PR-ul dvs. este Fuzionat
-
Ștergeți branch-ul dvs.:
git branch -d feature/your-feature-name git push origin --delete feature/your-feature-name -
Actualizați fork-ul dvs.:
git checkout main git pull upstream main git push origin main
Ghiduri de Stil
Markdown
-
Folosiți niveluri consistente de titluri
-
Includeți linii goale între secțiuni
-
Folosiți blocuri de cod cu specificatori de limbaj:
```python import pandas as pd ``` -
Adăugați text alternativ la imagini:
 -
Mențineți lungimea liniilor rezonabilă (aproximativ 80-100 de caractere)
Python
- Respectați ghidul de stil PEP 8
- Folosiți nume de variabile semnificative
- Adăugați docstrings la funcții
- Includeți indicii de tip acolo unde este cazul:
def process_data(df: pd.DataFrame) -> pd.DataFrame: """Process the input dataframe.""" return df
JavaScript/Vue.js
- Respectați ghidul de stil Vue.js 2
- Folosiți configurația ESLint furnizată
- Scrieți componente modulare, reutilizabile
- Adăugați comentarii pentru logica complexă
Organizarea Fișierelor
- Mențineți fișierele asociate împreună
- Folosiți nume de fișiere descriptive
- Respectați structura existentă a directoarelor
- Nu faceți commit fișierelor inutile (.DS_Store, .pyc, node_modules, etc.)
Acord de Licență pentru Contribuitori
Acest proiect salută contribuțiile și sugestiile. Majoritatea contribuțiilor necesită să
fiți de acord cu un Acord de Licență pentru Contribuitori (CLA) care declară că aveți dreptul de a,
și chiar acordați drepturile de utilizare a contribuției dvs. Pentru detalii, vizitați
https://cla.microsoft.com.
Când trimiteți un pull request, un bot CLA va determina automat dacă trebuie
să furnizați un CLA și va decora PR-ul corespunzător (de exemplu, etichetă, comentariu). Pur și simplu urmați
instrucțiunile furnizate de bot. Va trebui să faceți acest lucru o singură dată pentru toate repository-urile care folosesc CLA-ul nostru.
Întrebări?
- Verificați Canalul nostru Discord #data-science-for-beginners
- Alăturați-vă comunității noastre Discord
- Revizuiți problemele existente și pull request-urile
Mulțumim!
Contribuțiile dvs. fac acest curriculum mai bun pentru toată lumea. Mulțumim că v-ați luat timpul să contribuiți!
Declinare de responsabilitate:
Acest document a fost tradus folosind serviciul de traducere AI Co-op Translator. Deși ne străduim să asigurăm acuratețea, vă rugăm să fiți conștienți că traducerile automate pot conține erori sau inexactități. Documentul original în limba sa natală ar trebui considerat sursa autoritară. Pentru informații critice, se recomandă traducerea profesională realizată de un specialist uman. Nu ne asumăm responsabilitatea pentru eventualele neînțelegeri sau interpretări greșite care pot apărea din utilizarea acestei traduceri.