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

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