#66 "מחכים לקודו"

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

(ואם אתם רוצים לדעת מה נגמר עם התמונות, ראו מתחת לקו.)

והמהנדס החכם אומר: השלמות מושגת לא כשאין מה להוסיף אלא כשאין מה לגרוע (אנטואן דה סנט-אכזופרי)


מתחת לקו:

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

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

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

Photo by Terje Sollie on Pexels.com

8 תגובות בנושא “#66 "מחכים לקודו"

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

    Liked by 1 person

  2. יש מצב שמדובר בDAD JOKE!

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

    Liked by 1 person

  3. חייב להגיב לגבי test coverage שבהומור קליל הקטנת וצימצמת. אצלנו בחברה לוקחים את הנושא מאוד ברצינות ואין קוד שנכנס מבלי שהוא מכוסה ב unit tests. כל כך הרבה פעמים כשעשינו refactor סמכנו על ה coverage שלנו שיציל אותנו מטעויות ואכן אף פעם הוא לא אכזב אותנו. אז שתדע שאפשר גם אחרת.

    Liked by 1 person

להשאיר תגובה

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

הלוגו של WordPress.com

אתה מגיב באמצעות חשבון WordPress.com שלך. לצאת מהמערכת /  לשנות )

תמונת Twitter

אתה מגיב באמצעות חשבון Twitter שלך. לצאת מהמערכת /  לשנות )

תמונת Facebook

אתה מגיב באמצעות חשבון Facebook שלך. לצאת מהמערכת /  לשנות )

מתחבר ל-%s