תוכן עניינים

איך להתחיל לתרום לפרויקטים גדולים של קוד פתוח דרך דוקומנטציה

מצאתם פרויקט קוד פתוח מעניין בשפות\טכנולוגיות שהייתם שמחים להעמיק בהם.
כנראה בתור התחלה הלכתם בגיטהאב לissues ,לראות אם קיימת בעיה שתוכלו לעזור בה.
וכנראה שגם כל issue נראה כמו ג’יבריש, עם הפניות לקבצים ופונקציות שלא ברור אפילו איך אפשר להתחיל לעבוד עליהם.

הבעיה היא שמאוד קשה להתחיל לתרום לפרויקט גדול אם לא מתמצאים בתוכו.
פרויקטים גדולים מורכבים מחלקים רבים, ונדרשת רמה של הבנה מסוימת בקוד של הפרויקט כדי להתחיל לתרום לקוד.
העמקה לתוך פרויקט זה דבר שיכול לקחת שעות רבות של למידה והרבה מאוד מתכנתים מוותרים באמצע כי זה באמת מבאס ללמוד וללמוד בלי פידבק ובלי לדעת אם באמת תצא תרומת קוד בסוף.

תרומה דרך הדוקומנטציה של פרויקט היא דרך מעולה לתרום לפרויקט תוך כדי למידה שלו עד שנגיע למצב שנוכל לתרום גם לקוד שלו.
המטרה שלנו היא בעצם משולשת -
לשמור על מוטיבציה תוך כדי הפרויקט, על ידי תרומה משמעותית לחלק בפרויקט שהרבה פעמים מוזנח אבל קריטי ביותר, הדוקומנטציה.
ליצור חיבור עם המתחזקים והצגת נוכחות בפרויקט על ידי קבלת פידבק מהם ויצירת קשר ראשוני איתם.
ללמוד לעומק את הפרויקט

התהליך הוא מאוד פשוט, תתחילו להשתמש בפרויקט כמו כל מתכנת שהיה מתחיל להשתמש בו.
בדרך כלל זה אומר לקרוא את הדוקומנטציה הקיימת ולהתחיל לתכנת, כמובן כתלות בפרויקט.
לדוגמא כלי בקוד פתוח שמשתמשים בו בשרשרת לאימון מודל AI, תתחילו עם מודל בסיסי ותנסו לשלב את הפרויקט במודל.
או לדוגמא במקרה של אתר, נסו להרים את סביבת העבודה מקומית אצלכם.

שימוש בפרויקט הייתם עושים בכל מקרה בשביל ללמוד את הפרויקט.
השוני היחידי הוא שעכשיו, אתם צריכים להיות אקטיבים.

עקבתם אחרי הדוקומנטציה ומשהו לא היה ברור, חסרים שלבים בהסבר או אפילו לא עובד?
דבר ראשון,תעלו את הבעיה בדוקומנטציה בתור issue באופן אירוני הרבה פעמים מתחזקי פרויקטים מפספסים דוקומנטציה גרועה. הם בדרך כלל מכירים את הפרויקט כל כך טוב וסביבת העבודה שלהם כבר מוכנה שגם אם יש בעיה בדוקומנטציה, הם לא משתמשים בה ולא שמים לב.

דבר שני, תתקנו את הבעיה בדוקומנטציה בעצמכם מעבר לכך שתלמדו מכך המון,זאת ההזדמנות מעולה שלכם ליצור חיבור עם המתחזק ולהראות שאתם רציניים.
מאוד קל למתחזקים לעשות approve לבקשות pull request של דוקומנטציה, קל לבדוק בקשה כזאת ואין סיכון שמשהו יפגע בקוד.
בנוסף לכך דוקומנטציה יותר טובה = יותר משתמשים בפרויקט ולכן הסבירות שתקבלו פידבק מהיר הוא מאוד גבוהה.

ברגע שמקבלים פידבק ובשאיפה עושים לכם pull request, אתם בעניינים.
מתחזק קיבל רושם שאתם רציניים לגבי הפרויקט והוא ישמח לכוון אתכם לקטעים בקוד שדורשים עזרה.
בהרבה מקרים הוא גם ישקיע בכם זמן למענה על שאלות\דיון שלא היו משקיעים בכם ללא היכרות מוקדמת.

בהצלחה!