21 KiB
ការរួមចំណែកក្នុង Data Science សម្រាប់អ្នកចាប់ផ្ដើម
សូមអរគុណសម្រាប់ការចាប់អារម្មណ៍របស់អ្នកក្នុងការរួមចំណែកទៅកាន់វគ្គសិក្សា Data Science សម្រាប់អ្នកចាប់ផ្ដើម! យើងសូមស្វាគមន៍ការរួមចំណែកពីសហគមន៍។
តារាងមាតិកា
- វិន័យអំពើ
- តើខ្ញុំអាចរួមចំណែកបានយ៉ាងដូចម្តេច?
- ការចាប់ផ្ដើម
- មគ្គុទេសក៍ការរួមចំណែក
- ដំណើរការការស្នើសុំ Pull Request
- មគ្គុទេសក៍រចនាបថ
- សន្ធិសញ្ញាប័ណ្ណអ្នករួមចំណែក
វិន័យអំពើ
គម្រោងនេះបានអនុម័ត កូដវិន័យប្រើប្រាស់មូលដ្ឋានមើលដោយ Microsoft។
សម្រាប់ព័ត៌មានបន្ថែម សូមមើល សំណួរដែលសួរញឹកញាប់អំពីកូដវិន័យ
ឬទាក់ទង opencode@microsoft.com សម្រាប់សំណួរឬមតិយោបល់បន្ថែម។
តើខ្ញុំអាចរួមចំណែកបានយ៉ាងដូចម្តេច?
ការរាយការណ៍បញ្ហា
មុនបង្កើតរបាយការណ៍កំហុស សូមពិនិត្យមើលបញ្ហាជាប់ទាក់ទងដែលមានស្រាប់ដើម្បីជៀសវាងការបំលែងដង។ ពេលអ្នកបង្កើតរបាយការណ៍កំហុស សូមបញ្ចូលព័ត៌មានលម្អិតច្រើនបំផុតដែលអាចធ្វើទៅបាន៖
- ប្រើចំណងជើងច្បាស់លាស់ និងពិពណ៌នាបញ្ជាក់
- ពិពណ៌នាជំហានច្បាស់លាស់ដើម្បីធ្វើឲ្យបញ្ហាឡើងវិញ
- ផ្តល់ឧទាហរណ៍ច្បាស់លាស់ (កូដនិងរូបភាពបង្ហាញ)
- ពិពណ៌នាពីអាកប្បកិរិយាដែលអ្នកបានសង្កេត និងអ្វីដែលអ្នករំពឹងទុក
- បញ្ចូលព័ត៌មានបរិបទរបស់អ្នក (ប្រព័ន្ធប្រតិបត្តិការ, កំណែ Python, កម្មវិធីរុករក)
ផ្តល់យោបល់បន្ថែម
យោបល់បន្ថែមសូមស្វាគមន៍! ពេលផ្តល់យោបល់:
- ប្រើចំណងជើងច្បាស់លាស់ និងពិពណ៌នាបញ្ជាក់
- ផ្តល់ពិពណ៌នាពីការកែលម្អដែលអ្នកស្នើសុំ
- ពន្យល់មូលហេតុដែលការកែប្រែនេះមានប្រយោជន៍
- រាយបញ្ជីលក្ខណៈសម្បត្តិដូចគ្នានៅក្នុងគម្រោងផ្សេងទៀត ប្រសិនបើមាន
រួមចំណែកក្នុងឯកសារយោង
ការកែលម្អឯកសារយោងគឺតែងតែទទួលស្គាល់:
- ជួសជុលកំហុសអក្ខរកម្ម និងវេយ្យាករណ៍
- ធ្វើឲ្យការពន្យល់មានភាពច្បាស់ផងដែរ
- បន្ថែមឯកសារយោងដែលខ្វះ
- ធ្វើឲ្យព័ត៌មានអាប់ដេតឲ្យទាន់សម័យ
- បន្ថែមឧទាហរណ៍ ឬករណីប្រើប្រាស់
រួមចំណែកក្នុងកូដ
យើងសូមស្វាគមន៍ការរួមចំណែកកូដរួមមាន៖
- មេរៀន ឬលំហាត់ថ្មីៗ
- ជួសជុលកំហុស
- កែលម្អសៀវភៅតំណភ្ជាប់ដែលមានស្រាប់
- ដាតាដុំ ឬឧទាហរណ៍ថ្មីៗ
- កែលម្អកម្មវិធីសំណួរ
ការចាប់ផ្ដើម
ការត្រូវមានមុន
មុនរួមចំណែក សូមធ្វើការ:
- មានគណនី GitHub
- តំឡើង Git នៅលើប្រព័ន្ធរបស់អ្នក
- តំឡើង Python 3.7+ និង Jupyter
- តំឡើង Node.js និង npm (សម្រាប់ការរួមចំណែកកម្មវិធីសំណួរ)
- របស់ភ្ជាប់ជាមួយរចនាសម្ព័ន្ធវគ្គសិក្សា
មើល INSTALLATION.md សម្រាប់ការណែនាំបំផុត។
Fork និង Clone
- Fork ឃ្លាំងទិន្នន័យ នៅលើ GitHub
- Clone Fork របស់អ្នក មកលើកុំព្យូទ័រ៖
git clone https://github.com/YOUR-USERNAME/Data-Science-For-Beginners.git cd Data-Science-For-Beginners - បន្ថែម upstream remote៖
git remote add upstream https://github.com/microsoft/Data-Science-For-Beginners.git
បង្កើតសាខាថ្មី
បង្កើតសាខាថ្មីសម្រាប់ការងាររបស់អ្នក៖
git checkout -b feature/your-feature-name
# ឬ
git checkout -b fix/your-bug-fix
បទបញ្ជាសម្រាប់ឈ្មោះសាខា៖
feature/- លក្ខណៈសម្បត្តិ ឬមេរៀនថ្មីfix/- ជួសជុលកំហុសdocs/- ការផ្លាស់ប្តូរឯកសារrefactor/- ការផ្លាស់ប្តូរកូដ
មគ្គុទេសក៍ការរួមចំណែក
សម្រាប់មាតិកាមេរៀន
ពេលរួមចំណែកឬកែលម្អមេរៀនដែលមានស្រាប់៖
-
អនុវត្តរចនាសម្ព័ន្ធដែលមានស្រាប់៖
- README.md ជាមួយមាតិកាមេរៀន
- សៀវភៅ Jupyter ជាមួយលំហាត់
- ការបែងចែក (បើមាន)
- តំណភ្ជាប់ទៅការសាកល្បងមុន និងក្រោយ
-
រួមបញ្ចូលធាតុទាំងនេះ៖
- គោលបំណងរៀនដែលច្បាស់
- ពិពណ៌នាដំណាក់កាលជាដំណាក់កាល
- ឧទាហរណ៍កូដជាសេចក្ដីយល់ឃើញ
- លំហាត់សម្រាប់អនុវត្ត
- តំណភ្ជាប់ទៅធនធានបន្ថែម
-
ធានាការចូលដំណើរការ៖
- ប្រើភាសាដែលធម្មតា និងច្បាស់
- បញ្ចូលអត្ថបទ alt សម្រាប់រូបភាព
- រួមបញ្ចូលចំណាំកូដ
- អនុវត្តចំពោះលក្ខណៈរៀនដ៏ខុសគ្នា
សម្រាប់សៀវភៅ Jupyter
-
សម្អាតចេញពីលទ្ធផលទាំងអស់ មុនពេលប្តូរ៖
jupyter nbconvert --clear-output --inplace notebook.ipynb -
រួមបញ្ចូលផ្នែក markdown ជាមួយពិពណ៌នា
-
ប្រើរចនាបថស៊ីជម្រៅកំណត់៖
# នាំចូលបណ្ណាល័យនៅខាងលើ import pandas as pd import numpy as np import matplotlib.pyplot as plt # ប្រើឈ្មោះអថេរដែលមានន័យ # បន្ថែមកំណត់ចំណាំសម្រាប់ប្រតិបត្តិការដ៏ពិបាក # តាមដានមីស្តង់រចនាបថ PEP 8 -
សាកល្បងសៀវភៅរបស់អ្នកយ៉ាងពេញលេញ មុនពេលដាក់ស្នើ
សម្រាប់កូដ Python
អនុវត្តតាមមគ្គុទេសក៍រចនាបថ PEP 8៖
# ប៉ាត់ប៉ូលល្អ
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)
សម្រាប់ការរួមចំណែកកម្មវិធីសំណួរ
ពេលកែលម្អកម្មវិធីសំណួរ៖
-
សាកល្បងបណ្ដាច់មូលដ្ឋាន៖
cd quiz-app npm install npm run serve -
បើកដំណើរការ linter៖
npm run lint -
សាងសង់ដោយជោគជ័យ៖
npm run build -
អនុវត្តមាគ៌ារចនាបថ Vue.js និងគំរូដែលមានស្រាប់
សម្រាប់ការបកប្រែ
ពេលបន្ថែម ឬកែលម្អការបកប្រែ៖
- អនុវត្តរចនាសម្ព័ន្ធក្នុងថត
translations/ - ប្រើកូដភាសាជាឈ្មោះថត (ឧ.
frសម្រាប់ភាសាបារាំង) - រក្សារចនាសម្ព័ន្ធឯកសារដូចជាភាសាអង់គ្លេស
- បច្ចុប្បន្នភាពតំណភ្ជាប់ជាមួយប៉ារ៉ាម៉ែត្រភាសា៖
?loc=fr - សាកល្បងតំណទាំងអស់ និងរចនាបថ
ដំណើរការជូនពរ Pull Request
មុនបញ្ជូន
-
ធ្វើឲ្យសាខារបស់អ្នកទាន់សម័យជាមួយការផ្លាស់ប្តូរទំនើបបំផុត៖
git fetch upstream git rebase upstream/main -
សាកល្បងការផ្លាស់ប្តូររបស់អ្នក៖
- បើកទស្សនាវិជ្ជាបានបង្កើតបានទាំងឡាយ
- សាកល្បងកម្មវិធីសំណួរចំពោះការកែប្រែ
- ផ្ទៀងផ្ទាត់តំណទាំងអស់
- ពិនិត្យកំហុសសរសេរពាក្យ និងវេយ្យាករណ៍
-
Commit ការផ្លាស់ប្តូររបស់អ្នក៖
git add . git commit -m "Brief description of changes"សរសេរពាក្យ commit ឲ្យច្បាស់៖
- ប្រើសព្ទវេលាបច្ចុប្បន្ន ("Add feature" មិនមែន "Added feature")
- ប្រើបំពានបរិបទ ("Move cursor to..." មិនមែន "Moves cursor to...")
- កំណត់បន្ទាត់ទីមួយមិនឲ្យលើស 72 តួអក្សរ
- ឧបករណ៍បញ្ហា និង pull requests ដែលពាក់ព័ន្ធ
-
បញ្ចូនទៅ fork របស់អ្នក៖
git push origin feature/your-feature-name
ការបង្កើត Pull Request
- ទៅកាន់ repository
- ចុច "Pull requests" → "New pull request"
- ចុច "compare across forks"
- ជ្រើស fork និងសាខារបស់អ្នក
- ចុច "Create pull request"
ទ្រង់ទ្រាយចំណងជើង PR
ប្រើចំណងជើងច្បាស់លាស់ តាមទ្រង់ទ្រាយដូចខាងក្រោម៖
[Component] Brief description
ឧទាហរណ៍៖
[Lesson 7] ជួសជុលកំហុសនាំចូលសៀវភៅ Python[Quiz App] បន្ថែមការបកប្រែ ភាសាអាល្លឺម៉ង់[Docs] ថ្មីសម័យ README ជាមួយការទាមទារថ្មីៗ[Fix] កែប្រែផ្លូវទិន្នន័យនៅ មេរៀនបង្ហាញទិន្នន័យ
ការពិពណ៌នាប្រកាស PR
រួមបញ្ចូលក្នុងការពិពណ៌នាប្រកាស PR របស់អ្នក៖
- អ្វី៖ តើអ្នកបានផ្លាស់ប្តូរអ្វី?
- ហេតុអ្វី៖ ហេតុអ្វីការផ្លាស់ប្តូរនេះចាំបាច់?
- របៀប៖ តើធ្វើការផ្លាស់ប្តូរយ៉ាងដូចម្តេច?
- ការសាកល្បង៖ តើអ្នកបានសាកល្បងការផ្លាស់ប្តូរដូចម្តេច?
- រូបថតអេក្រង់៖ បញ្ចូលរូបថតអេក្រង់សម្រាប់ការផ្លាស់ប្តូរក្នុងចក្ខុវិស័យ
- បញ្ហាដែលពាក់ព័ន្ធ៖ តំណបញ្ហាដែលពាក់ព័ន្ធ (ឧ. "Fixes #123")
ដំណើរការត្រួតពិនិត្យ
- ការត្រួតពិនិត្យស្វ័យប្រវត្តិ នឹងដំណើរការលេី PR របស់អ្នក
- អ្នកថែទាំនឹងពិនិត្យការរួមចំណែករបស់អ្នក
- ដោះស្រាយមតិយោបល់ ដោយបង្កើត commit បន្ថែម
- ពេលទទួលស្គាល់ ហើយអ្នកថែទាំនឹងបញ្ចូល PR របស់អ្នក
បន្ទាប់ពី PR របស់អ្នកត្រូវបានបញ្ចូល
-
លុបសាខាររបស់អ្នក៖
git branch -d feature/your-feature-name git push origin --delete feature/your-feature-name -
ផ្ទុះសាខា fork របស់អ្នក៖
git checkout main git pull upstream main git push origin main
មគ្គុទេសក៍រចនាបថ
Markdown
- ប្រើកម្រិតជំពូកយ៉ាងរឹងមាំ
- រក្សាបន្ទាត់ទទេ រវាងផ្នែក
- ប្រើទ្រង់ទ្រាយកូដជាមួយនៃភាសាបញ្ជាក់៖
```python import pandas as pd ``` - បន្ថែមអត្ថបទ alt ទៅរូបភាព៖
 - រក្សាប្រវែងបន្ទាត់សមរម្យ (ប្រហែល ៨០-១០០ តួអក្សរ)
Python
- អនុវត្តមគ្គុទេសក៍រចនាបថ PEP 8
- ប្រើឈ្មោះផ្ទុកមានន័យ
- បន្ថែម docstrings ទៅមុខងារ
- រួមបញ្ចូលសញ្ញាប្រភេទពេលដែលសមស្រប៖
def process_data(df: pd.DataFrame) -> pd.DataFrame: """Process the input dataframe.""" return df
JavaScript/Vue.js
- អនុវត្តមគ្គុទេសក៍រចនាបថ Vue.js 2
- ប្រើការកំណត់ ESLint ដែលបានផ្តល់
- សរសេរតំបន់មេធ្វើបានច្រើន និងអាចប្រើឡើងវិញ
- បន្ថែមចំណាំសម្រាប់តុល្យភាពស្មុគស្មាញ
ការរៀបចំឯកសារ
- រក្សាឯកសារដែលពាក់ព័ន្ធជាក្រុម
- ប្រើឈ្មោះឯកសារដែលពិពណ៌នា
- អនុវត្តរចនាសម្ព័ន្ធថតដែលមានស្រាប់
- អត់ commit ឯកសារដែលមិនចាំបាច់ (.DS_Store, .pyc, node_modules, ល។)
សន្ធិសញ្ញាប័ណ្ណអ្នករួមចំណែក
គម្រោងនេះស្វាគមន៍ការរួមចំណែក និងយោបល់។ ការរួមចំណែកច្រើនត្រូវការអ្នកព្រមព្រៀងទៅលើ សន្ធិសញ្ញាប័ណ្ណអ្នករួមចំណែក (CLA) ដែលថ្លែងថាអ្នកមានសិទ្ធ និងពិតជាផ្តាច់សិទ្ធិឲ្យយើងប្រើប្រាស់ការរួមចំណែករបស់អ្នក។ សម្រាប់ព័ត៌មានលម្អិត ចូលទៅ https://cla.microsoft.com។
ពេលអ្នកបញ្ជូន pull request មួយ CLA-bot នឹងកំណត់ដោយស្វ័យប្រវត្តិថាតើអ្នកត្រូវការផ្តល់ CLA ឬអត់ និងតភ្ជាប់ស្លាកត្រឹមត្រូវ (ឧ. ស្លាក, មតិ)។ សូមអនុវត្តតាមការណែនាំដែលបានផ្ដល់ដោយ bot។ អ្នកត្រូវតែធ្វើម្ដងតែតែមួយគត់ សម្រាប់គ្រប់ឃ្លាំងដែលប្រើ CLA របស់យើង។
មានសំណួរទៀត?
- ពិនិត្យមើល ឆានែល Discord #data-science-for-beginners
- ចូលរួមសហគមន៍ Discord របស់យើង៖ https://aka.ms/ds4beginners/discord
- ពិនិត្យមើលបញ្ហាដែលមានស្រាប់ និង pull requests ៖ https://github.com/microsoft/Data-Science-For-Beginners/issues និង https://github.com/microsoft/Data-Science-For-Beginners/pulls
អរគុណ!
ការរួមចំណែករបស់អ្នកធ្វើឲ្យវគ្គសិក្សានេះកាន់តែល្អសម្រាប់មនុស្សគ្រប់រូប។ សូមអរគុណដែលបានចំណាយពេលក្នុងការរួមចំណែក!
ការបដិសេធ:
ឯកសារនេះត្រូវបានបម្រើប្រាស់ដោយសេវាកម្មបកប្រែ AI ដែលមានឈ្មោះ Co-op Translator។ ខណៈពេលដែលយើងខិតខំប្រឹងប្រែងដើម្បីភាពត្រឹមត្រូវ សូមយល់ដឹងថាការបកប្រែដោយស្វ័យប្រវត្តិអាចមានកំហុស ឬភាពមិនត្រឹមត្រូវមួយចំនួន។ ឯកសារដើមក្នុងភាសាមាតុភូមិគួរត្រូវបានយកទៅជាប្រភពចម្បង។ សម្រាប់ព័ត៌មានសំខាន់ៗ, គ្រាន់តែបកប្រែដោយអ្នកជំនាញមនុស្សត្រូវបានផ្តល់អនុសាសន៍។ យើងមិនទទួលខុសត្រូវចំពោះការយល់ច្រឡំណាស់ ឬការបកប្រែខុសពីការប្រើប្រាស់ការបកប្រែនេះឡើយ។