פורסם ב כלים לחיים קלים

ארגז כלים – Pull Reminders

זמן קריאה: 4 דקות

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

כשהתחלתי לכתוב על הנושא ולפרט את כל הסיבות ש-Code Reviews (או Pull Requests או Peer Review) זו כזו פרקטיקה חשובה בעיניי, ראיתי שהפוסט מתנפח ומתנפח, אז החלטתי לדחות את הכל לפוסט מאוחר יותר, והפעם להתרכז בסיבה שלשמה התכנסנו.

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

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

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

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

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

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

ספרו לי אם השתמשתן ונהנתן, או אם כבר יש לכן שיטה אפילו יותר טובה לניהול PR-ים!

7 תגובות בנושא “ארגז כלים – Pull Reminders

  1. איך את מנהלת את יתר המשימות שלך? לא כדאי שזה יופיע באותו מקום עם כל יתר הטאסקים שאת עובדת עליהם?

    1. אני מנהלת את יתר המשימות שלי ב-amaizing marvin, זה לא כלי למתכנתים אלא כלי ניהול משימות כללי והוא ממש נוח לי, ואני מכניסה לשם pull requests.
      הבעיה היא שאני לא רוצה לעשות לעצמי interrupt כל פעם שאני מקבלת בקשה, ואז אם אני לא מכניסה את זה באותו רגע למשימות שלי אז אני שוכחת.

  2. כתבתי בזמנו כלי דומה למי שעובד עם Azure DevOps, שדוגם את ה-pull requests הפתוחים ב-repo, ומשתמש בספריית ה-text to speech של ווינדוס כדי להכריז לחדר כולו שיש PR שמחכה שיטפלו בו. עזר לנו בחדר לא לשכוח שיש PRים מחכים. מי שרוצה לשחק עם זה מוזמן: https://github.com/lisardggY/VSTS.PullRequestMonitor

  3. היי מאיה, PRs הם חלק מboard המשימות שיש ברשותך. כיוון שזה חלק מהמשימות שאת מקבלת זה חייב לקבל במה באותו הboard. לכן חשוב מאוד לבחור סביבה שקיים בה echo system מלא ומשם לצמוח.

    אתן דוגמה מפורטת, לצורך העניין אני עובדת עם Atlassian כאשר יש האקו סיסטם את: jira bitbucket confluence ועוד…

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

    נניח והעבירו אליי, יש אפשרות בג׳ירה לעשות flag על טיקט ולצבוע אותו בצהוב אם אני מהווה blocker למישהו. ברגע שאני נכנסת לג׳ירה ורואה flag כזה כשהתפנתי למשימה הבאה או סאב משימה אני כמובן אגש לטיקט הזה ברמת הטיקט בשל האקו סיסטם יש את כל המידע כולל הPR הפתוח אפתח אותו ויעשה review בסיום אחזיר את הטיקט לבעליו או להבא בתור הreviewers.

    זה תהליך מאוד בריא שבנינו ואין מי שישכח או יפספס את הPR. אשמח לתגובתך.

השאר תגובה