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

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

 FatCamera/ Getty Images Isrel

צלם/תמונה: FatCamera/ Getty Images Israel

מאת איתמר הבר, מטיף טכנולוגי, Redis Labs (רדיס לאבס)

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

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

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

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

איך בוחרים פרויקט?

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

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

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

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

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

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

 הכירו את חברי הקהילה

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

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

הכתבה בחסות Redis Labs (רדיס לאבס)

חברת Redis Labs (רדיס לאבס) היא הבית של פרויקט הקוד החופשי והפתוח רדיס וספקית פתרונות מסחריים עבורו. רדיס הוא בסיס הנתונים בזיכרון הפופולרי ביותר בעולם, ומשמש בשלל תפקידים הדורשים ביצועים גבוהים. מוצרי החברה זמינים הן כשרות בעננים ציבוריים, פרטיים והיברידים, והן להורדה והתקנה בסביבת הלקוח. ב-7 למרץ עורכת החברה אירוע חופשי ופתוח העוסק בקוד חופשי ופתוח - להרשמה לחצו כאן.

כתב אורח

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

הגב

6 Comments on "עשו לעצמכם טובה ואמצו תחביב: פיתוח בקוד פתוח"

avatar
Photo and Image Files
 
 
 
Audio and Video Files
 
 
 
Other File Types
 
 
 
Sort by:   newest | oldest | most voted
חצי חצי
Guest

רק לי זה נשמע שהם רכבו על השם רדיט?

דגי דג
Guest

אתה לא הכי מחובר לעולם, אה?
תקרא קצת מה זה Redis (ספויילר קל – רדיס קיים הרבה לפני שרדיסלאבס קמו),

כתב אורח, מטיף טכנולוגי
Guest
כתב אורח, מטיף טכנולוגי

לא ספויילר, מקור גאווה :)

כתב אורח, מטיף טכנולוגי
Guest
כתב אורח, מטיף טכנולוגי

דווקא הרבה מתבלבלים, ומאחר שיש פורום רדיס ברדיט )/r/redis( תמיד הדפדפן משלים לי ללא נכון (ולפעמים אני גם מנסה להריץ reddit-server בטעות). אבל לא, לא רוכבים על כלום.

כתב אורח, מטיף טכנולוגי
Guest
כתב אורח, מטיף טכנולוגי

ואגב, עברית שפה קשה למחשבים

Guest
Guest

כן רק לך

wpDiscuz

תגיות לכתבה: