JavaRush /בלוג Java /Random-HE /פרויקטי קוד פתוח: מה זה ולמה כדאי לך להיות חלק מקהילת הקו...

פרויקטי קוד פתוח: מה זה ולמה כדאי לך להיות חלק מקהילת הקוד הפתוח

פורסם בקבוצה
אנו מביאים לידיעתכם עיבוד למאמר מאת Jonathan Beckman , מפתח מארה"ב, שתיאר את החוויה האישית שלו בהשתתפות בפרויקט קוד פתוח. פרויקטי קוד פתוח: מה זה ולמה כדאי לך להיות חלק מקהילת הקוד הפתוח - 1מהחומר הזה תלמדו:
  • מהם פרויקטי קוד פתוח;
  • איך אתה יכול לתרום;
  • היכן לחפש פרויקטים ומשימות.

למה כדאי לקחת על עצמו פרויקטים בקוד פתוח?

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

פרויקט קוד פתוח על האצבעות שלך

אוהבים לטייל בפארק? אולי לא עכשיו, כי זה כבר נובמבר, כמו שאומרים "החורף מגיע!" אני בטוח שבמזג אוויר טוב תיהנו לשוטט בין העצים לאורך הסמטאות המטופחות. אבל מה אם הפארק האהוב עליך היה נטוש על ידי השירותים העירוניים? זה יהפוך מהר לבלגן. זבל היה מפוזר בכל מקום, מעורב בפסולת של כלבים, מחכה במתח עד שמישהו סוף סוף ייכנס לתוכם. לא סביר שתמשיך ללכת לשם לטיולים.
פרויקטי קוד פתוח: מה זה ולמה כדאי לך להיות חלק מקהילת הקוד הפתוח - 2
כעת דמיינו תמונה משמחת יותר: קבוצת מתנדבים לקחה אחריות על תחזוקת הפארק האהוב עליהם. היא מקצה באופן קבוע כספים כדי להפוך משהו לא מטופח ומוזנח למשהו מאוד יפה ושימושי לאנשים אחרים. והוא עושה זאת לא רק להנאה אישית, אלא גם לשמחת הציבור. סביר להניח שהפארק המועדף עליך נתמך על ידי המסים שלנו, אבל באופן כללי המצב לעיל מתאר כיצד פועלים פרויקטי קוד פתוח.
תוכנות חינמיות וקוד פתוח הן אפליקציות שהקוד שלהן זמין לכולם. ניתן להוריד ו/או להשתמש בהם בכל מספר מכשירים. אתה חופשי לקחת את קוד התוכנית ולעשות איתו מה שאתה רוצה, ואז להפיץ אותו בין חבריך. הסיבה לכך היא שתוכניות כאלה מופצות תחת רישיונות חינמיים, כגון רישיון MIT.
בעוד שכל התוכנות מיועדות בעיקרה למשתמש הקצה, כמפתח אתה יכול לתרום לפרויקט קוד פתוח ולהפוך את העולם למקום טוב יותר עם תוכנות חדשות זמינות. אם אתה רוצה לקחת חלק בפרויקט קוד פתוח, אתה צריך להבין מי אחראי עליו ולנסות ליצור אינטראקציה עם האנשים האלה. אני לא מתכוון לייסר אותם חצי למוות בשאלות ולצפות להשגחה מקיפה במהלך העבודה. אתה מבוגר עצמאי (גם אם אתה עדיין לא מבוגר, להיות עצמאי זה רעיון מצוין!). אני מקווה שלא צריך יותר להוביל ביד ולתאר כל צעד. אני לא עוזר לך עם זה. אבל אני יכול לתת לך כמה עצות טובות שיעזרו לך כשאתה מנסה לתרום את התרומה הראשונה שלך ואולי לכלול את פיסת הקוד שלך בפרויקט קוד פתוח.

חפש פרויקט

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

היכן לחפש פרויקטים בקוד פתוח

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

מציאת בעיה ראשונה טובה

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

התחלה ומבוא

התחלת פרויקט יכולה להיראות קלה בצורה מטעה, אבל ישנן מלכודות רבות. לאחר שבחרת בעיה לפתור, עליך לפרוס את הפרויקט במחשב שלך. סביר להניח שמקורות הפרויקט יהיו "כבדים" (אם כי זה תלוי בפרויקט). ייתכן שתצטרך להתקין מספר רב של תלות רק כדי להפעיל את הפרויקט.
פרויקטי קוד פתוח: מה זה ולמה כדאי לך להיות חלק מקהילת הקוד הפתוח - 4
בפרויקט שהייתי מעורב בו היו מעט רגעים כאלה, אבל זה לא אומר שזה היה קל. לדוגמה, היינו צריכים להתקין גרסאות ספציפיות של Ruby וגרסאות ספציפיות של Rails, PostgreSQL, Phantom JS ו- Gemfile עם רשימה של Gems להתקנה. זה לא נראה כמו דרישה גדולה, אבל הייתה לי בעיה גדולה למצוא את הגרסה הספציפית של רובי הדרושה כדי לפתח את הפרויקט שיעבוד על המחשב שלי. לבסוף, השתמשתי ב-RVM כדי להחליף גרסאות: זה עוד דבר שלמדתי, רק כדי להתקין את הפרויקט ולהפעיל אותו במחשב. כשהשקתי את הפרויקט, ראיתי שהוא כתוב ב-Angular and Coffee Script, תוך שימוש ב-Active Record כדי ליצור אינטראקציה עם נתונים המגיעים מהחלק האחורי. אלה היו דברים חדשים עבורנו, והיינו צריכים להבין אותם בעצמנו לפני התחלת העבודה על הפרויקט.

חפש משימות אחרות

אולי אתה לא צריך את זה עכשיו, או אפילו צריך את זה בעתיד הקרוב, אבל נתקלתי בזה כמעט מיד. זה מזל גדול לשים לב מיד שמשהו לא עובד כמו שצריך בפרויקט. אם אתה מוצא באג כזה, עבור אל האתר העובד ובדוק אם הוא קיים. אל תמהרו לכתוב לתמיכה, אולי הכל עובד. בדרך כלל אוצרים שולטים במצב ולא אמורות להיות שגיאות קריטיות. אבל אם בכל זאת מצאתם משהו שדורש תשומת לב, מצאו ובדקו בין המשימות שכבר קיימות. סביר להניח שהמשימה הבעייתית כבר נרשמה וסביר להניח שאינך צריך לעשות דבר. אם כי אולי כדאי לפתור את זה בעצמך לאחר שתסיים את מה שאתה עובד עליו.
פרויקטי קוד פתוח: מה זה ולמה כדאי לך להיות חלק מקהילת הקוד הפתוח - 5
כאשר אתה מעצב ורושם משימה חדשה, הקפד לתאר אותה בפירוט רב ככל האפשר. השתמש בצילומי מסך כדי להמחיש בבירור את מה שאתה מנסה לומר ולהקל ככל האפשר על כל מי שמסתכל באתר להבין את הבעיה שאתה מתאר. במקרה שלי, בסופו של דבר הוספתי שתי משימות נוספות מעבר למשימות שהוקצו לי. לא יכולתי אפילו להגיש בקשת משיכה (זה היה בגלל מגבלות אבטחה). זה הרגיש כאילו לקחתי שני צעדים אחורה עבור הפרויקט, אבל במציאות, תיאור וארגון משימות עדיין מזיזים את הפרויקט קדימה. יצירת בקשת משיכה (PR)
Pull request - הצעה לשינוי הקוד במאגר (מאגר קוד פרויקט). אם אתם עובדים על פרויקט פתוח, תמיד כדאי ליצור סניף משלכם, ורצוי לבצע שינויים בקוד הראשי (מאסטר) רק לאחר אישור בקשות pull על ידי אוצרי הפרויקט.
פתרת את הבעיה שהוקצה לך. לפני כתיבת דוח התקדמות, הצג את הפתרון למישהו שיכול להעריך אותו. תצוגה מקדימה היא תמיד רעיון מצוין, אבל עבור התרומה הראשונה שלך לפרויקט קוד פתוח, זה חובה . אתה לא רוצה להסמיק בגלל קטע קוד לא גמור או שגוי? מאותה סיבה, אוצרי הפרויקט יבקשו מכם לעבור את כל הבדיקות הנדרשות לפני הגשת בקשת משיכה. לכן, בדקו את עצמכם מבעוד מועד כדי להיות בטוחים בעבודתכם ותקנו אותה במידת הצורך לפני קבלת אישור מהאוצרים. ודאו שאתם מקפידים על השמות או הסגנון המקובלים על אוצרי הפרויקט. אתה יכול למצוא מידע בקובץ CONTRIBUTING.md , לרוב הפרויקטים יש את זה. גם שם תוכלו להבהיר באיזו צורה עליכם ליצור הודעת התחייבות, כיצד אמור להיראות התיאור של בקשת המשיכה שלכם וכיצד ליצור משימה חדשה.

עזוב את המשימה

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

סיכום

אני מאמין שהשתתפות בפיתוח פרויקט קוד פתוח היא יתרון עצום. אתה מתאמן ובו בזמן עושה משהו מועיל עבור אנשים אחרים. מצד שני, הפרויקט הזה יכול להפוך לעוד נקודה בקורות החיים שלכם ולספק יתרונות נוספים במאבק על התפקיד הרצוי. רק ביום שישי האחרון דיברתי עם מתכנת שקיבל את העבודה שלו (עבודה מאוד מגניבה ומעניינת, כזו שיכולה לשנות את העולם לטובה, ואני ממש לא צוחק) בזכות העבודה שלו על פרויקטים בקוד פתוח.
הערות
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION