Post by Eyal Lior on Jan 26, 2016 21:54:13 GMT 2
סקראם: "אה... עבדת רק 6 שעות אתמול??! מה עשית בשאר הזמן??!"
היום אני הולך לפתוח על שיטת העבודה שנקראת סקראם. אג'ייל-סקראם.
אג'ייל זה דבר נהדר, אני לגמרי תומך ברעיון של אג'ייל, בכל העקרונות שעומדים מאחרי זה כמו להוציא הרבה רליסים, ולראות איך הלקוחות מסתדרים ומה בעצם הדרישות, האם מה שאנחנו מפתחים זה באמת מה שהמשתמשים הולכים ליהנות ממנו, ואם לא, אז עדיף שאנחנו נשנה את הכיוון ואת האסטרטגיה ואת ההשקעה של האנרגיה.
אחת מהמטודולוגיות של פיתוח שאנחנו צריכים להיות רגילים אליה זה מה שנקרא ריפקטורינג. וריפקטורינג כמטודולוגיה זה הצד השני של אותו המטבע כשאנחנו מדברים על אג'ייל. כשאנחנו אומרים אג'ייל אנחנו אומרים "בואו נעשה את הדבר המינימלי, נוציא אותו החוצה, ואז נראה אם אנחנו רוצים להמשיך להשקיע בזה. אם כן, נוכל אולי לכתוב אותו מחדש כאשר נצטרך."
מטודולוגיית הפיתוח שמכונה "סקראם" מנסה לתחום את כל הפיתוח, לתוך כמה משבצות, שכביכול אמורות להתאים למטודולוגיה של אג'ייל. ושוב, אג'ייל זה מונח יותר מידי מפוצץ בשביל משהו מאוד פשוט. מה שזה אומר זה שאנחנו לא צריכים לעשות תוכנית יותר מידי גדולה ולגלות את כל הדרישות וההשלכות בעצמנו, ולפתח במשך שנה וחצי עד שהלקוח מקבל את התוצר הסופי לידיים שלו לראשונה - אלא - להוציא כמה שיותר מהר ולקבל כמה שיותר פידבקים מהעולם שבחוץ, בכדי שלא נשקיע אנרגיה במשהו שלא נחוץ. זה כל מה שאג'ייל אומר. סקראם זה כבר משהו אחר לגמרי., ומה שסקראם אומר בגדול זה שאנחנו אחת לשבועיים או שלוש עושים תכנון, ובתכנון הזה אנחנו מפרטים ממש ברמה של שעות, נושאים ותת נושאים למשימות קטנות שכל אחת מהן משוערכת בשעות.
בחברה הקודמת שעבדתי בה כמפתח ובה עבדו עם סקראם, אני הייתי צריך כל שבועיים להכין תוכנית עבודה שבה אני לוקח את כל הסיפורים בגדולים והקטנים, ומפרק אותם למשימות, שלכל משימה הייתי צריך להגדיר זמנים כגון שעה, שלוש שעות, יומיים וכו' - והיום איפה שאני עובד, אנחנו לא עושים את זה כך, פה יש את ראשי הצוותים (שעל פי דת הסקראם מכונים סקראם-מאסטרים, או פוקוס-מאסטרים). אז אין לנו ראש צוות, ולא שזה שם מכובד כי זה מזכיר לנו שאנחנו רק ידיים והוא הראש, אלא שיש לנו מאסטר. אדון. אז כיום במקום בו אני עובד יש לנו פוקוס מאסטר שמגיע ואומר לנו מהי התוכנית, זה מה שאנחנו הולכים לעשות בשלוש שבועות הבאים, ואז הוא אומר מי יעשה מה, ולכל אחד יש משימה או סיפור.
עכשיו, הנה הבעיה: אני הייתי רגיל לעבוד בשיטת אג'ייל - כלומר - היה לי חלק מהמוצר שאני הייתי אחראי לעבוד אליו, ואני מדבר על החברה הקודמת קודמת, והייתי ממש אחראי על כל הפיתוח של אותו החלק במוצר - הייתי מחליט לאיזה חלקים לעשות ריפקטורינג ולכתוב אותם מחדש, באיזה חלקים שווה להשקיע, איזה שווה להזניח, וכמובן אם משהו היה מתקלקל זה היה התחת שלי שהיה צריך לשבת ולחמם כיסא ולפתור את הבעיות. אם מישהו צריך לטוס ולהציג את המוצר ומשהו פתאום לא פועל, איזו התקנה נכשלת ויש פגישה חשובה - אני זה שצריך להיות בלחץ לגרום לזה לפעול - ולא הייתה לי שום בעיה, סיפקתי עבודה מאוד טובה שם, והמוצר התפתח בצורה מאוד נהדרת ובכלל לא הייתי צריך לעבוד קשה. למעשה הייתי עובד ממש קל. הייתי עובד בין שעתיים לארבע שעות ביום, וגם לא כל יום. מה שכן, אני בכוונה לא עבדתי הרבה שעות, מכיוון שלא רציתי להשקיע המון אנרגיה ולגמור את עצמי, ואז לגלות שהשקעתי את זה במקום הלא נכון. זה חשוב מאוד לשמור על האנרגיה, וגם, כחלק מהפיתוח הייתי קופץ מדבר לדבר, ולפעמים הייתי אומר "אוו.... אם אני כבר פה, אז אני אעשה את זה ואת זה" והייתי גם מאוד קשוב למוזה שלי. להרגשה שלי, ולאנרגיה שלי - מיכוון שאני בנאדם - וכבנאדם יש לי יותר מרק אונה שמאלית שיודעת קצת לוגיקה, יש לי גם אונה ימנית ויש לי אזור שלם במוח שנקרא תת-מודע, שהוא אזור שאין לנו אליו גישה ישירה, והוא עובד בזמן שלו. מי שלא יודע, לתת מודע אין ציר זמן, ולכן החלומות שלנו יכולים לפעמים להידמות לסלט של מחשבות, ולכן כאשר לאנשים מציקים דברים מהעבר וטראומות מהילדות - זה בגלל שבתת-מודע, אזור הסטוראג' בגדול וגם אזור העיבוד העיקרי שלנו, אין שם ציר של זמן. התפיסה הזו של זמן פשוט לא קיימת שם, אבל אנחנו בכל זאת יכולים להשתמש בו בצורה נהדרת.
אני אתן לכם דוגמה לאיך אני, ולמעשה כולנו משתמשים בתת-מודע: היה איזה יועץ שחזר לעבוד איתי בחברה הקודמת קודמת, וכשהוא בא בפעם השניה לעבוד איתנו, שכחתי איך קוראים לו וזה היה ממש לא נעים. במשך יומיים לא הצלחתי לשחזר את השם שלו, ואז, בנסיעה הביתה כשאני עומד ברמזור - פתאום אני שומע את השם שלו בתוך הראש שלי. פוף. הופיע בחזרה בראש שלי - וזה בדיוק מה שהתת-מודע עושה. אנחנו מבקשים ממנו משהו, והוא הולך ועושה את זה בזמן שלו, ברקע, ואז הוא חוזר אלינו עם תשובה. התת-מודע שלנו יכול לעשות המון המון פעולות, הרבה יותר ממה שהחלק המודע שלנו יכול לעשות. הוא עושה איזה מיליון פעולות בו זמנית כרגע, ודברים לוקחים זמן. זו גם חלק מהסיבה מדוע לפעמים יש לנו "מוזה" - כשהתת-מודע חוזר אלינו עם מידע ותובנות שרצינו בהן לפני שעה, או יומיים או שנה. ושאני הייתי עובד, הייתי עובד בצורה שאני מאוד קשוב ל-"מוזה" שלי, ואני באמת זורם עם מה שבא לי לעשות. פתאום יש לי איזו תובנה לגבי איך אני יכול לשפר משהו כלשהו, שיתרום המון למה שאנחנו עושים עכשיו, אז אני עושה את זה. וכמובן שלא הייתי משפר דברים שאנחנו לא צריכים עכשיו, כי הייתי עובד אג'ייל. הייתי מוציא את התוכנה ללקוחות, הייתי מוסיף עוד פיצ'ר. הנה, שיפרתי את מה שהציק לכם. כן. אבל הייתי נותן למוזה שלי להכתיב לי מה אני יכול לשפר. לא הייתי אומר לעצמי "השבוע אני אקח את המסך של החיפוש ואני אוסיף לו כפתור שעושה זה, וכפתור שעושה סייב, ואני אוסיף פה תפריט עליון וכפתור פייבוריטס" - לא הייתי עובד בצורה הזאת מכיוון שזה אומר לעבוד רק עם החלק המודע של הראש, רק עם צד שמאל, והבעיה השנייה היא שבצורה שאני עובד בה היום - מוגדרת לי משימה, ואני נמדד לפי המשימה הזאת. אז יש לי איזה סטורי, והסטורי הזה מורכב מאולי איזה שלוה טאסקים, ותודות לאלוהי הסקראם בחברה שבה אני היום אני לא נמדד לפי שעות על כל דבר שאני... אני לא תמחרתי כל משימה בשעות ספציפיות, אבל האמת... אנחנו כן אבל זה פשוט לא... לא מחמירים עם העניין הזה, שהדיווח לא ממש משקף את המציאות, ויש חריגות, ולא נורא מחמירים, למרות שקצת כןם נותנים עם זה על הראש.
דת המיקרו מנג'מנט החדשה
עכשיו איפה הבעיה? הבעיה היא שאני רגיל לפתח בצורה שפתאום אני אומר לעצמי "אווו.... יש פה עוד משהו קטן שאני יכול לעשות וזה ישפר את המוצר, זה ישפר את מה שאני עושה" וכשאני משפר את מה שאני עושה, אני מקבל קרדיט. אבל כשאנחנו עובדים בסקראם, מה שקורה זה שאם אני עושה משהו מחוץ למשימות שמוגדרות על הנייר בשבילי, אני לא הולך לקבל על זה קרדיט, ולהיפך, יכול להיות שיגידו לי "אל תעשה כרגע דברים שלא כתובים על הנייר. אל תרגיז אותי! יש לך משימה! תתרכז בה!" וזה ממש ככה, ואני מדבר על מקום שהוא יחסית רגוע והוא לא לוקח את הסקראם בתור אההה.... דת מה שנקרא. עכשיו כמובן שהוא כן לוקח את הסקראם בתור דת, אבל...תראו, אף אחד לא הולך להגיד שהוא לוקח את הסקראם בתור דת. כולם, כל מי שתומך בסקראם - יגיד ש-"יש כאלו שלוקחים את זה בתור דת, אני לא." וזה כל מי שתומך בסקראם יגיד. אין אחד שיגיד "כן, אני מאלו שלוקחים את זה כמו דת."
בסופו של דבר אנשים כן לוקחים את זה בתור דת מאחר ומדובר פה בפולחן, בפגישות בוקר שבהן מבזבזים את הזמן של כולם בשביל לדבר עם הבוס ולהגיד לו מה המצב. במקום שהבוס ילך אדם אדם בזמנו החופשי ומתי שיש לבנאדם זמן, והוא ישב איתו ויתעדכן איפה הוא נמצא, והוא יבנה לעצמו איזו מפה של מי נמצא איפה....
במקום זה יש את הפגישה שנקראת "דיילי" ובה כולם צריכים לשבת ולבזבז את הזמן שלהם, את הראש שלהם, את המקום שלהם בראש, ולשמוע את החברים שלהם מדברים עם הבוס - שזה גם מטריד, וגם ממלא את המוח בזבל, וגם לוקח זמן. אז כן, סקראם זה דת.
אז יש לנו את העניין שאני לא יכול לעשות דברים שהם מחוץ למה שרשום לי לעשות, כי (א) אני לא אקבל על זה קרדיט (ב) יגמר לי הזמן לעשות א הדברים שאני כן צריך לעשות ו-(ג) יכול להיות שיגידו לי "אל תעשה את זה מכיוון שאין לנו זמן לבדוק את זה, ואנחנו לא רוצים שאתה תתפזר..." וכל מיני קשקושים שכאלה. ומעבר לכך, אם אני מזהה שיש משהו חשוב לעשות, ואני עושה אותו, אין לי קרדיט.
עכשיו, למה אנשים משתמשים בסקראם? למה מנהלים אוהבים להשתמש בסקראם?
קודם כל, זה מאפשר להם שליטה בצוות, ואז הם לא צריכים להאמין בצוות. הם לא צריכים שלמתכנתים תהיה מוטיבציה, הם לא צריכים לתגמל אותם, אלא הם פשוט אומרים "אוקי, אני אומר לך תעשה X, אתה עושה X, אני מודד שעשית את X" והם מקבלים שליטה ב-100% על מה שהמתכנת עושה.
זו גישה שהיא מאוד לא פרודוקטיבית, אפילו לפני 100 שנים, טוב, קצת פחות, הנרי פורד בספרו "חיי ועבודתי"
מתאר מצב שבו הוא נתן לעובדים שלו במפעל להתעסק בכל מני נושאים, לא היה עובד שהיתה לו משימה מוגדרת. כל עובד היה "עובד של המפעל. עובד של החברה." הוא היה יכול להגדיל ראש ולעשות את מה שהוא מרגיש נכון לעשות, והנרי פורד לא היה דורש מהעובדים שלו לכתוב ולתעד את ההמצאות שלהם. זאת אומרת, כאשר עובדים במפעל פורד היו עורכים כל מני ניסויים על מנת להמציא המצאות וחידושים, הם לא היו צריכים לתעד ולהגיד "טוב, ניסיתי לעשות דבר כזה... וזה לא הצליח לי." מכיוון שהרעיון של לתעד (ועשו את זה במקומות אחרים) היה שאנשים לא יעשו את אותו הדבר פעמיים איפה שזה נכשל - אבל הנרי פורד הבין שהזמן שלוקח לתעד דברים כאלה... הוא אמר שעדיף ששני עובדים ינסו להמציא את אותה ההמצאה ויכשלו פעמיים - מאשר שתיהם יבזבזו זמן לתעד כל דבר קטן שהם עושים.
"שום דבר לא הולך להשתנות"
עכשיו, מה שאנחנו עושים פה עם SCRUM זה - אנחנו שוכחים לגמרי את כל השיעור הזה של הנרי פורד, ואנחנו מנסים לתעד את כל הפעולות של המתכנתים - וזה פשוט בלתי אפשרי, מכיוון שזה, או שזה פשוט לא יעיל ובלתי תחרותי, מכיוון שמתי שאני ניהלתי בצורה חופשית מוצר או מודול מתוך מוצר, והייתה לי את כל האוטונומיה ואת החופש להחליט מה ואיך ומתי - הייתי יכול לקפוץ מדבר לדבר ולעשות המון דברים ולהכניס המון שיפורים קטנים - שבסופו של דבר, הלקוח היה מקבל ואומר "וואו, גם זה השתנה וגם זה השתפר, והביע הזו נפתרה, וואו..." - הלקוחות היו מאוד שמחים, אנשים היו מאוד שמחים - ולי זה היה מאפשר לשלוט טוב מאוד בהתפתחות של המוצר שאני אחראי על הפיתוח שלו. עכשיו העניין הוא כזה, שמכניסים SCRUM, או יותר נכון, כשמנהל "מוכר" לממונים מעליו את שיטת העבודה הזאת, נניח שמנהל פיתוח או מישהו בכיר בתחום התוכנה, בא ואומר למנהלים הבכירים של החברה "אני רוצה שנעבור לעבוד ב-SCRUM" - מה שהוא אומר להם זה "שום דבר לא הולך להשתנות, אני פשוט הולך לכתוב פה על דף את מה שקורה, ואז אני אהיה במעקב הרבה יותר טוב אחר מה שקורה" וזה נראה כאילו שפיתוח התוכנה הולך להמשיך כסדרו, ופשוט אנחנו נהייה במעקב יותר טוב. זה הרי טוב להיות במעקב, זה טוב להיו מודע למה שקורה. אז זה נותן את ההרגשה, כביכול, כאילו אנחנו לא משנים שום דבר, אנחנו פשוט רושמים כל דבר - כמה לוקח לנו זמן. וזה פשוט לא נכון מכיוון שיש כל כך הרבה דברים שאנחנו עושים, ודברים שהייתי עושה בפרויקטים שהייתי אחראי עליהם - מתוך מחשבה מאוד מאוד ... היו לי המון מחשבות בראש, ופתאום הייתי מגיע לאיזו תובנה, ועושה איזה משהו... ואם הייתי צריך מראש מה אני עושה, לא הייתי יכול לחזות מראש את כמות ה... את אלפי המחשבות האלה, שמתוכן הייתי שולף על פי האינטואיציה וההרגשה, ומה שהתת-מודע שולף ככה תוך כדי... אם אני עובד במהלך שבועיים, ובזמן הזה התת-מודע הולך לזרוק לי המון המון דברים, ואני הייתי פועל על פיהם, והייתי פועל ביעילות מאוד גבוה, ולכן, לא הייתי צריך יותר משעתיים ביום. אבל אם אני צריך במשך שעתיים, שלוש או ארבע אפילו, להגדיר מה אני הולך לעשות בשבועיים הבאים, אז מה שאני אעשה בשבועיים הבאים לא יהיה מבוסס על אלפי מחשבות שעולות מתוך התת מודע, מהאינטואיציה, ומהרגש, אלא הייתי עובד על תוכנית שתכננתי בארבע שעות. לכן המלאכה הייתה הרבה פחות חכמה ומתוחכמת - וזה עניין מאוד גדול. וזה מראה ש-SCRUM, זה ממש לא אותו הדבר כמו לעבוד בלי SCRUM.ספרינט... לי זה נשמע מאוד מתיש
המהות של הפיתוח, צורת העבודה היא לחלוטין שונה מלעבוד פשוט AGILE ולשחרר גרסאות תוכנה לעתים תכופות. בקיצור, ההצגה שמנהלי פיתוח עושים למנהלים של החברות, ואומרים להם "היי... יש לי שיטת פיתוח שנקראת SCRUM וזה מאוד טוב כי אנחנו נעבוד מאוד קרוב, אני אהיה מאוד קרוב לצוות ואני כל בוקר אשמע מה הם עושים, וכל שבועיים אנחנו נעשה דמו ונראה מה עשינו, ונשחרר גרסה," וזיבולי שכל, וכל ההצגה הזו נועדה לגרום למנהלים שלמעלה למעלה למעלה, לחשוב ששום דבר לא משתנה. וזה כמובן רחוק מלהיות נכון. מכיוון שיש פה משהו גדול שמשתנה, והנה דוגמה לאחד הדברים שמשתנים זה *מי משלם על פאקים*. מי משלם על טעויות. מה שקורה זה שיושבים ומתכננים את הספרינט, ורק המילה עצמה, ספרינט, דוחה אותי. כן. ספרינט זו הגדרה של פרק הזמן אותו מתכננים מראש, ובסופו עושים דמו, ומראים מה פיתחו. ספרינט זו מילה שמתארת את השלב האחרון במרוץ, שאתה רץ במרתון, שבו אתה מוציא את כל האנרגיה שלך. זה להוציא פרץ של אנרגיה, ספרינט. אני לא רואה שום סיבה שמתכנתים יצטרכו לעבוד בספרינט של שבועיים, ואז עוד ספרינט של שבועיים, ושוב... לי זה נשמע מאוד מתיש. אבל מי שמעודד את השיטה של SCRUM זה מישהו שהוא מעוד לא בוטח במתכנתים שלו, ולא יכול לתת להם חופש - למרות שהוא האי שבחר אותם מתוך מאות קורות חיים, ועשרות אנשים שרצו להגיע והגיעו לראיונות. אז אני חושב שהסיבה שמנהלים בוחרים להשתמש בסקראם, זה בגלל שאין להם בטחון עצמי, ביחס להחלטות של עצמם, ביחס לאנשים שהם בעצמם בחרו להביא לעבודה.
"כנראה שאתה לא יודע לתכנן"
העניין הוא כזה, כשאנחנו עושים תכנון של ספרינט, וכל מתכנת אומר "העניין הזה, הסיפור הזה, המשימה הזאת - מורכבת מתת משימות כאלה וכאלה, וזה ייקח לי 4 שעות וזה ייקח לי שעתיים וזה ייקח לי 5 שעות" אבל הנה העניין, וזה אחד העניינים הגדולים - ואני קודם כל אסביר את הבעיות ואז אני אסביר מעבר לכך, מדוע למנהלים אין בעיה עם כך שזו שיטה מאוד בעייתית. אז הנה, עוד בעיה אחת קטנה. נניח אני התחייבתי שמשהו קטן ייקח לי 4 שעות, ובפועל הוא לקח לי רק שעה. זו חריגה של 400% בתכנון. לקח לי רבע מהזמן. או שאולי אמרתי שמשהו ייקח לי 4 שעות ובסוף זה לקח לי יומיים. זו חריגה של 400% לכאן או לכאן. עכשיו, אם זה לקח לי יותר, אני כנראה לא מתכנת טוב, ואם סיימתי את זה ברבע מהזמן, אז זה לא שאני גאון ומבריק ומצאתי פתרון יצירתי שפשוט פותר את הבעיה מהר, לא, אני פשוט לא יודע לתכנן טוב. זאת אומרת שלמתכנתים נהייתה מוטיבציה לעשות רק את מה שכתוב על הדף, לא יותר ולא פחות. נהייתה להם גם מוטיבציה לתמחר את זה בהרבה זמן בכדי שיהיה להם קל להתאים את מה שהם עושים לדף. ושוב, אם למתכנת לוקח הרבה יותר זמן ממה שהוא אמר שייקח לו... אחרי הכל, אתה לא יכול באמת לדעת מה יהיה התוכן של מלאכת מחשבת תכנות, זה הרי מלאכת מחשבה - זו לא עבודה פיזית וזה לא רוטינות שכבר עשינו מיליון פעם, זה משהו אחר ושונה - ולבוא ולתכנן ב-4 שעות מה אתה תעשה במשך 80 שעות - אתה לא יכול. אתה לא יכול להגיד כמה זמן יקח לך לפתור בעיה שהיא מלאכת מחשבה, ולהגיד "אני יכול לתכנן את המחשבות שלי ב-80 שעות הבאות, בתוך 4 שעות". אלא אם כן אתה מתכנן לא לחשוב כמעט כלום, ולעשות מעט מאוד - אתה לא יכול באמת לתכנן בתוך 4 שעות על מה אתה תחשוב במהלך 80 שעות. זה לא הגיוני.
מעבר לזה, כמו שאמרתי, אם אני יצירתי ואם אני פותר את הבעיה מהר מידי, יבואו אלי בטענות ויגידו שאני לא יודע לתכנת. אם זה לוקח לי יותר זמן, גם אני לא יודע לתכנן, וגם אני לא יודע לתכנת כנראה. עכשיו, מי משלם על טעויות בתכנון? נגיד הספקנו רק חצי ממה שאנחנו אמורים להספיק... אוקי, אז מי הולך להיות אחראי על הליקוי הזה? אחרי הכל, הראש צוות שואל את כולם "כמה זמן זה ייקח לך? וכמה זמן זה ייקח לך? אוקי, אז זה מה שאנחנו נעשה בשבועיים הבאים." ואז לא מספיקים לעשות את זה, והוא יאשים את המתכנתים. הוא הולך להגיד "הם לא יודעים לתכנן. הם לא יודעים לשערך את העבודה שלהם." ולעומת זאת, אם העובדים סיימו כולם בזמן, מהר, תקתקו ופתרו את הבעיות ממש בזמן, אז אפשר למשוך עוד משימות. אבל עדיין הר"צ יוכל לבוא למנהלים ולהגיד "הם לא ידעו להעריך מה צריך לעשות" - ועוד בעיה שיש בגישה הזאת היא שלפעמים אני מצאתי את עצמי במצב שאין לי מה לעשות, מכיוון שהר"צ שלי לא נמצא, ואני אמור להתעסק רק בדברים שהוא נותן לי להתעסק בהם. אוקי, אז זה חלק מהבעיות בשיטה הזאת, סקראם...
בוא נתפשר על 80% נבואות ו-20% אי-ודאות
עכשיו כמובן שברגע שיש בעיה, תמיד אפשר להאשים את המתכנתים שבלמטה שהם לא ידעו להעריך כמה זמן... אפילו אם זה משהו שאי אפשר להעריך אותו. אפילו אם זה באמת תחום שאי אפשר להעריך אותו, זה לא משנה בגלל שאנחנו עובדים בסקראם והמתכנתים נדרשים בכל ספרינט וספרינט להעריך כמה זמן ייקח להם ומה הם יספיקו והם אלו שיקבלו את כל האשמה אם הם לא יספיקו, אפילו אם זה משהו שמנהל בוגר ומנוסה אמור לדעת, שיש רמה מסוימת של סיכון בסוגים שונים של פיתוח, ושאי אפשר לצפות דברים מסוימים או שלפעמים צריך לנסות שבועיים שלושה ולחקור משהו ואז אם אפשר לעשות אותו או אי אפשר לעשות אותו - ובשיטה של סקראם אתה יכול פשוט להגיד למתכנת "תגיד לי כמה זמן זה ייקח לך" וברוב המקומות, דורשים מהמתכנתים, אומרים להם "שמע, אתה לא צריך לדעת בדיוק בדיוק כמה זמן זה יקח לך, אבל בערך..." וכשהם אומרים בערך הם מתכוונים ל-80% דיוק. ושוב, אם אני אומר "זה יקח לי 4 שעות" וזה לוקח לי בסוף רק שעתיים, אני לא יודע לתכנן... ואם אני אומר 4 שעות וזה לוקח לי 6 שעות, באים אלי בהאשמות - זו שיטה מאוד מאוד בעייתית.וההצגה הזאת, שמנהלי פיתוח עושים למנהלים שלהם בשביל למכור להם את השיטה הזאת, הם אומרים להם "אנחנו לא הולכים לשנות את איך שמתכנתים עובדים. אנחנו ניתן להם לעבוד איך שהם רגילים, יהיה להם את כל השיקול המקצועי שלהם, אנחנו פשוט רוצים להיות במעקב אחרי מה שהם עושים." וזה ממש לא נכון כי הם דורשים מהמתכנתים להעריך בזמן דברים שמתכנתים לא היו רוצים להעריך בזמן - אבל עכשיו הם חייבים להעריך בזמן עכשיו, ואז הם יקבלו על הראש טענות כי ההערכה שלהם לא נכונה. למרות מלכתחילה הם לא רצו להעריך זמנים.
ובכלל, יש את החברות שבהן עובדים עם קלפים שיש עליהם מספרי פיבונצ'י... אף אחד לא חושב למה לעזאזל אנחנו צריכים מספרי פיבונצ'י?! למה לא סתם מ-1 עד 10? אנשים לא שואלים את עצמם למה, הם מתאימים את עצמם למי שמעליהם, ומי שמעליהם מתאים את עצמו לעדר הכללי.
שיטת הפיתוח סקראם מנקזת לחלוטין כל יכולת יצירתית מהמתכנת. אין שום דבר יצירתי שאתה יכול לעשות אם אתה מתכנן ב-4 שעות את מה שאתה מתכנן לעשות בשבועיים או שלושה הבאים. גם אם יתנו לך להיות יצירתי, מה הטעם? אתה ברוב המקומות לא תקבל על זה שום קרדיט.
כולם עושים הכל
בעיה נוספת עם סקראם זה כאשר נכנס מתכנת חדש לצוות, ובמיוחד אם זו חברה גדולה, לאף אחד אין אינטרס לעזור לו. כל אחד נמצא במרדף אחרי השלמת המשימות שמתוזמנות אצלו בלוח ומתומחרות בזמן... ומכיוון ש-"כולם עושים הכל", ואין לך חלק בתוכנה שהוא שלך ואתה נמדד לפי ההצלחה שלך לתחזק ולשפר ולקדם את החלק הזה, אלא כולם עושים את הכל כי כל אחד הוא בר-החלפה, וכל אחד אפשר לזרוק ולהחליף, לכל אחד יש תחליף... וכו' ידה ידה ידה וכו' וכו' וכו'. אז כולם עושים את העבודה של כולם וכולם עובדים בסקראם והפוקוס מאסטר אומר "עכשיו אתה תעשה את זה, עכשיו אתה תעשה את זה," ואף אחד לא יכול לקחת יוזמה, ולהיות יצירתי ולומר "היום אני רוצה לקחת את זה, היום אני רוצה לעשות משהו יותר טוב," מאחר וכל מתכנת צריך לקבל מהפוקוס מאסטר מטלות. עכשיו, אם הגיע מתכנת חדש לחברה, אין לאף אחד אינטרס לעזור לו כי כל אחד נמצא במרדף אחרי הדברים הקטנים שמתומחרים אצלו בזמן, ומצד שני - מי הולך להפסיד אם הוא לא הולך להצליח? אם הוא לא ילמד, אם דברים לא יעבדו לו והוא לא יצליח להעריך נכון דברים ולא יצליח לעמוד בהערכות שלו או של ה-"מאסטר" שלו, הרי לא הולכים להאשים את הפוקוס מאסטר. הולכים להאשים אותו. להגיד לו "אתה... אתה לא יודע לעמוד בהערכות שלך. אתה לא יודע להעריך דברים נכון." הפוקוס מאסטר רק שואל כמה זמן אתה מעריך שדברים ייקחו לך - אתה זה שלא עמדת בהערכה.
שיטת העבודה הזו נותנת בסופו של דבר לאנשים שנמצאים יותר גבוה בדרג - רשת ביטחון. זה שומר עליהם מפני אשמה כאשר יש פאשלות. מנגד, זה גם מצמצם את הפאשלות וזה גם מצמצם לגמרי את המהירות וגם את האיכות. מאוד. אבל, יש עדיין התפתחות, יש עדיין שיפור. קורים מעט מאוד דברים, אבל הם על הדף. כך למעשה קל למנהלים לחזות את ההתפתחות של המוצר. אמנם המוצר מתפתח לאט מאוד, והמתכנתים נשחקים הרבה הרבה יותר, ונמנע מהם להתפתח מכיוון שאין לך שום פתח ליזמות וליצירתיות. אתה רק עושה את מה שאומרים לך. איך אתה יכול להתפתח? איך אתה יכול להוכיח שאתה טוב יותר ממישהו אחר? אין לך קטע שהוא רק שלך, שאתה עובד עליו ויש לך אחריות עליו לטוב ולרע. לא, כולם עושים הכל וכל אחד ניתן להחלפה. השיטה הזו מאוד משרתת בעיקר את אלו שמאוד מפחדים על התפקיד שלהם.
כמה זמן לוקח לנקות חדר שירותים עם 4 אסלות?
אז כמו שאמרתי כבר, זה בלתי אפשרי לקחת משימות גדולות ולחלק אותן למשימות קטנות מראש, מכיוון שאם היה אפשר... בעצם... מה כן אפשר בקלות לחלק למשימות קטנות ולתאר בפרוטרוט, ולעמוד בהערכות ולהצליח לתכנן שבועיים קדימה? משימות שהן רוטינות. עבודות ניקיון למשל. קל לחשב כמה זמן לוקח לנקות חדר שירותים עם 4 אסלות, אפשר לדעת כמה זמן לוקח לטאטא אולם כדורסל, זה קל מאוד לפרק משימות כאלו לגורמים ולחשב כמה זמן ייקח למלות דלי במים, להביא את חומרי הניקוי - דברים שהם רוטינות שכבר עשינו אותם הרבה פעמים, והם די פשוטים בסה"כ, והם לא תלויים בהרבה מרכיבים חיצוניים - קל מאוד לחלק לצ'אנקים קטנים ולחשב כמה זמן כל דבר ייקח, ולחבר את זה - למרות שגם פה שאנחנו מתחילים לעשות את זה זה נופל. בתוכנה זה פשוט לא אפשרי. אבל משומה, 99.5% מהחברות עושות את זה.אם אנחנו אומרים לעצמנו שלא יכול להיות ש-99.5% מהחברות עושות משהו שהוא לא טוב, אנחנו צריכים לזכור באיזה עולם אנחנו חיים... יש בו המון בעיות, ואם כל כך הרבה אנשים לא היו טיפשים, העולם לא היה נראה ככה. הוא היה נראה הרבה יותר טוב. עכשיו סקראם, זה רעיון שמאוד קל למכור אותו מכיוון שכל אחד היה רוצה שתהיה לו את היכולת לחזות את העתיד. במיוחד מנהלים, ומנהלי פיתוח - וזה מתחיל כאשר מנהל פיתוח הולך למנכ"ל ואומר לו "אני יודע שאתה חם עלי, ועצבני שדברים לא זזים פה ושנכשלנו, ואתה לא מבין שיש סיכון בפיתוח - אז אני הולך לעשות מהלך שיבטיח את התחת שלי, בכדי שלא תוכל לפטר אותי. זה הולך לגרום לך להעביר את הכעס מעל הראש שלי, הישר למתכנתים הקטנים. אני הולך לומר לך כמה זמן משהו הולך לקחת לנו, אבל כל מה שאני הולך לעשות זה לעשות חיבור של כל הזמנים שהמתכנתים מתחתי אומרים שייקח להם. כי עכשיו אם אנחנו לא עומדים בזמנים, זה לא אני, זה הם."
והמנהל שהוא למעלה, הוא גבוה, הוא אומר לעצמו "רגע, אתה אומר לי עכשיו שאנחנו הולכים לעבוד בשיטה שתאפשר לנו לחזות איך דברים יעשו ומתי הם יהיו מוכנים? וואו! נהדר! אני רוצה שאנחנו נוכל לחזות את העתיד! זה דבר נהדר! כן!" למנהל פיתוח זה דבר נהדר מכיוון שכאשר תהיה אשמה ויהיה משהו לא בסדר, זה יחלוף מעל הראש שלו ויכנס ישר בפרצוף של המתכנתים הקטנים.
שרוף את כל האנרגיה שלך עכשיו
עכשיו שאנחנו מדברים על טכנולוגיה חדשה, או על פיטצ'רים חדשים, דברים שלא עשינו בעבר, דברים שהם לא רוטינות, זה לא מציאותי לקחת שעתיים ולתכנן שבועיים של עבודה קדימה. זו דרך להבטיח שאנחנו לא נשתמש ב-99% מהמוח שלנו. זה כל מה שזה. ושוב, אם אנחנו שואלים את עצמנו "למה זה קורה?" אז זה קורה בגלל שאנשים לא סומכים אחד על השני. מנהלים לא סומכים על מנהלי הפיתוח, ומנהלי הפיתוח לא סומכים על ראשי הצוותים, וראשי הצוותים לא סומכים על המתכנתים שלהם. אני מניח גם שסיבה נוספת היא חוסר מוטיבציה וחוסר סיבה. צריכה להיות סיבה שלאדם תהיה מוטיבציה, זה לא שבנאדם בא למקום עבודה ופתאום "וואו! יש לי כל כך הרבה מוטיבציה להישאר הרבה שעות, לעשות משהו ממש טוב, או מבריק..." אני חושב שהמוטיבציה באה מתי שיש לנו מה להרוויח. עכשיו אם באמת נותנים לי להתבטא מבחינה יצירתית ומקצועית ונותנים לי את האוטונומיה שלי ולא סופרים לי שעות ואומרים לי "בסדר, אתה יכול לבוא לשעתיים וללכת לים מחר לא לבוא" אני חושב שיהיה לי את האינטרס הכי טוב שיכול להיות שגם אם אני בא לשעתיים או ל-4 שעות בשבוע, שאני אעשה עבודה יותר טובה מכל השוק. מכל מתכנת בשוק.זא אומרת, אם אני לא אצליח אני אצטרך לעזוב ולעבוד במקום שבו סופרים לי את השעות, אז ככל שאנחנו נותנים חופש למתכנת, אנחנו נותנים לו מוטיבציה להצליח בעבודה שלו - ואני טוען שאפשר להצליח בשעתיים עבודה ביום. וימי חופש בלי לספור אפילו. זו הגישה שלי. ושוב, אם אנחנו רוצים לחזות דברים, אנחנו לא צריכים לבוא ולהגיד "אני רוצה שאתה תעבוד 9 שעות ביום, כל שעה תגיד לי מה אתה עושה, או כל יום תגיד לי על מה אתה עובד." כן? כי הדבר שהכי קל לחזות - אי עשייה. לא לעשות כלום זה דבר פשוט הכי קל לחזות. דבר שהכי קשה לחזות זו יצירתיות, אינטואיציה, עבודה עם הרגש. עם התת-מודע וכו'. ושוב, אם אנחנו הולכים לזלזל עד כדי כך באנשים שעובדים מתחתינו, ולקרוא לפרק זמן הזה שבו אנחנו מבקשים מהם לעשות דבירם ותכנן מראש "ספרינט", לא מספיק שאנחנו מנצלים אותם וממלכדים אותם עם הרעיון הזה של התכנון.... ולא אכפת לנו מהעובדה שאם הם יגלו שצריך לעשות עוד כמה דברים בדרך אז הם בזבזו את הזמן שלהם, כי אנחנו לא הולכים להעריך אותם על הזמן שהם חשבו על זה וכתבו את זה, אנחנו רק מודדים אותם לפי מה שיש על הנייר... לבוא ולקרוא לזה "ספרינט"?? זה נשמע לי פשוט בזיון. זלזול לא נורמלי. להגיד להם "שרוף את כל האנרגיה שלך עכשיו, וגם שבוע הבא, וגם שבוע אחרי זה.." זה גועל נפש.
"מה עשית בשאר הזמן"
עכשיו, כל מה ששיטת העבודה הזו בסופו של דבר אומרת, היא אומרת "אנחנו עושים מיקרו מנג'מנט לאנשים". עכשיו, מיקרו מנג'מנט זה דבר שעושים רק אנשים שיש להם הפרעה טורדנית-כפייתית ודחף לשלוט באחרים. למונח מיקרו-מנג'מנט כבר יצא שם כזה רע, שפשוט היו חייבים להמציא שם חדש בשביל שיוכלו להמשיך לעשות את זה. מעבר לזה, נגיד אני יושב וסיימתי משימה, ונגיד שנגמר לי המשימות על הדף. סקראם מאסטרים יגידו לנו שמה שצריך לעשות זה לקחת עוד משימה, כי יש ימבה משימות. מה שזה אומר שאני לא יכול לקחת לעצמי זמן לנוח ולחשוב ומה שנקרא להרהר. אין לי את הזמן ככה ממש לתת לדברים לשקוע, לתת למחשבות ולמידע שנכנס לשקוע, ולתת לתובנות לצוף. אין לי את הזמן הזה. כאם אני אשב ולא אעשה כלום... בסוף היום יגידו לי "אה... עבדת רק 6 שעות היום??! עבדת רק 4 שעות על משימות מהלוח?? מה עשית בשאר הזמן??!" ואני לא סתם אומר את זה, אלו שאלות ששאלו אותי. אשכרה סקראם-מאסטר שלי שאל אותי, והיה שואל אותי באופן קבוע "מה עשית בשאר הזמן" חחחח.... כאילו שיש לי מחויבות לעבוד על משימות מהנייר במשך 8 שעות ביום. מזל שלא 9. לפחות ככה רשמית יש לי חצי שעה לחשוב על דברים וחצי שעה לאכול.אז יש לנו פה מין מחויבות כזו של "מה עשית בזמן הזה? ולמה לא עבדת? מה... לא עבדת לא כלום?!" יש לנו מחויבות ופחד כמניע לפיתוח - במקום אהבה, וכיף... במקום שתהיה לנו שמחה וכיף ואהבה למה שאנחנו עושים, ומוזה... אנחנו צריכים כל הזמן להגיד על מ אנחנו עובדים ולהגיד על מה עבדנו בכדי שאני אוכל להראות שעבדתי 9 שעות היום. ש-8 שעות עבדתי על משימות מהלוח. ואני לא יכול לתת לראש שלי לנוח, להירגע, לתת לאינטואיציה לבעוט החוצה ולהראות לי את הדרך ואת הפתרונות החמים, וכל הדברים הנהדרים האלה... אין אותם.
אז במילים אחרות - סקראם זו דרך להבטיח ש-90% מהעבודה לא תעשה - אף פעם. ואחד המיתוסים מסביב סקראם זה שסקראם מספק לנו רשימה אין-סופית של מטלות שאנחנו צריכים לעשות אותן. אבל שום, סקראם מבטיח ש-90% מהמשימות ומהמטלות לעולם לא נדע שהן בכלל צריכות להיעשות. אנחנו בכלל לא נעלה על זה. וכן, יהיה לנו רשימת מטלות ומשימות גדולה, אבל את הדברים החשובים, 90% מהדברים החשובים לא יהיו ברשימה הזו - וזה מה שסקראם בא להבטיח.
לספור שורות קוד
ושוב, אם אני מגדיל את הראש ועושה כל מיני דברים קטנים - מי מקבל את הקרדיט? לא אני. לא המפתח. הסקראם מאסטר שלי יקבל את הקרדיט על זה שהצוות שלו הצליח לעמוד במטלות. הם תכנו טוב, הם עמדו במטלות. לא משנה שמה שהציל כנראה וגרם להצלחה של המוצר זה כל הדברים הקטנים שעשיתי שמעבר למה שתוכנן על הדף. זה לא משנה.שאני התחלתי לעבוד בשנת 2000, אני וחבר שעבד איתי מאוד אהבנו את העבודה שלנו והיינו מאוד גאים בעבודה שלנו - והתחלנו איזה מוצר מסקראצ' וכתבנו המון המון המון קוד, ובשלב מסוים התחלנו לספור שורות קוד וככה להתחרות ולראות כמה שורות אני כתבתי וכמה הוא כתב, ואחרי כמה זמן שמנו לב ש-"אתה יודע מה... אנחנו חוזרים ומוחקים שורות קוד ומקצרים דברים... אני יכול לעשות את אותו הדבר בשורה אחת אז למה לכתוב 3 מסובכות? פה עשיתי טעות, משהו שבכלל לא צריך אז אני אמחק את זה... ואז מה שקורה זה שאני מגיע לעבודה ואני מצמצם שורות קוד ומוסיף כמה שורות קוד ואז זה נראה שלא כתבתי כלום." אנחנו הבנו די מהר שלספור שורות קוד זו לא דרך טובה למדוד את העבודה - וסקראם, אחת המהויות של סקראם היום, לצערי הדבר המזוויע הזה כבר קורה באופן נרחב, בכל שוק התוכנה בארץ וכנראה בעולם, שממש 99% מהחברות בין אם חברות גדולו או סטארטאפים קטנים - כולם עובדים בצורה הזו של סקראם. וכל מה שזה עושה זה אותה השטות כמו לספור שורות קוד. זו הדרך החדשה של לעשות את אותו הדבר המטומטם הישן. זה ניסיון למדוד קוד, סוג של מידה שכזו, לתפוקה של מתכנת. אין לזה שום משמעות וזה מטופש וזה עניין של זמן עד שאנשים יבינו שזה מטופש ופשוט יפסיקו כמו שהפסיקו לספור שורות קוד. אוקי?
ושוב, אם אני מסיים משימה של 4 ימים ב-3 שעות אני הולך לקבל האשמות, ולתת הסברים, במקום שאקבל כפיים ויגידו לי "אתה יודע מה? סע הביתה, קח אפילו את מחר יום חופש." בעבודה הקודמת קודמת שהייתי עובד, אם הייתי מצליח לעשות דבר שכזה ולפתור משהו ככה ממש בשמינית מהזמן, היו אומרים לי קח יום חופש. צא תנוח, יופי, כל הכבוד. היו מסתכלים על התוצר, על הערך שהייתי מכניס, והיו אומרים "אוקי, זה היה משהו חשוב, היינו מוכנים לתת לזה חודש, הוא סיים את זה בפחות משבוע, הוא יכול לקחת ולהתפנן לעצמו כמה שהוא רוצה. מצידנו עד סוף החודש. הוא בסדר, אנחנו יכולים להפסיק לפקח עליו, הוא עושה עבודה טובה." כן? ולי הייתה את כל המוטיבציה לשמור על העבודה הזאת, כי הייתי מקבל קרדיט על ההצלחות שהייתי מביא לשם.
אבל במקומות שעבדתי בהם בהמשך, איפה שעבדו בסקראם? אם אני חס וחלילה אצליח לסיים ב-3 שעות משימה של 4 ימים, אני צריך לתת הרבה הסברים... והדבר שהכי קל לחזות זה לא לעשות כלום.
אתה תשלוט בעצמך ואני אשלוט בעצמי
עכשיו, בואו נדבר תכלס. אף אחד לא מאמין באמת שסקראם זה דבר טוב. אף אחד. אם ניקח את המאמין, הבנאדם שהכי הכי מאמין בסקראם. ראש צוות שמנהל את הצוות שלו בסקראם, וניתן לו משימה לעשות, נגיד לו "שמע, לך הביתה, ובמשך שבוע תעבוד על המשימות האלה והאלה. תשפר את התוכנה, את הביצועים, תשפר את הממשק, תוסיף תמיכה לדרייבר הזה, לא משנה מה. נגיד לו קח, לך, תהיה בבית לבד, תעבוד עם עצמך למשך שבוע." הוא לא הולך לנהל את עצמו בסקראם - ככה שזה מראה שלסקראם אין שום יתרון אם הוא לא עושה את זה בעצמו. מדובר פה בפולחן, מדובר פה בשליטה באנשים, בבעיות של אמון שיש למנהלים, ואני פשוט לא מבין איך קרה ש-99.5% מהתעשייה בארץ לוקה בתסמונת סקראם הזאת.ושוב... יש לנו את המצגת שיש בסוף כל ספרינט, איפה שאנחנו אמורים להציג להנהלה את "כל מה שעשינו" במהלך הספרינט. מה שאמרנו שנעשה ומה שעשינו. וכמובן בזמן שאנחנו עושים את זה אנחנו מנסים לדחוס את כל העבודה של המפתחים למין סוג של קצב. כאילו שהם עובדים עם איזה קצב. בום. בום. בום. בום. בום. רק צריך להוסיף מתופף לצד ה"מאסטר". זה להתייחס לראש בתור מכונה, או שריר שאפשר לצפות את הקצב עבודה שלו. אם הייתי עובד בניקיון אז כן, היינו מצפים לאיזה קצב קבוע והייתי שמח למוזיקה קצבית ברקע.
מכיוון שפיתוח תוכנה זה לא אותו הדבר כמו לנקות חדר שירותים או מסדרון, אנחנו לא יכולים להתייחס לפעולה של לפתח תוכנה בתור משהו שאפשר להכניס אותו לרוטינה, או למדוד אותו לפי רק מה שאפשר להראות למנהלים אחד לשבועיים, או להגיד הנה מה שהבטחנו והנה מה שעשינו - כי אז אנחנו לוקחים את כל הדברים הקטנים שמתכנתים עושים, שהופכים את המוצר לגאוני, ליציב, לקל לתחזוקה וניהול, וכל הברים שהם באמת יכולים להשפיע המון על התכנה - דברים שמתכנתים רוצים ואוהבים להתבטא וגאים בעצמם שהם עושים משהו חכם, ואנחנו נותנים לשואב אבק לבוא ולשאוב את כל הקרדיט על הדברים האלה, וזה פשוט... המתכנת לא מקבל קרדיט על הדברים הטובים שהוא עושה. הוא צריך לסבול כל יום ישיבות "דיילי" מביישות, בהן יגידו לך "מה עשית אתמול?? מה?? לא שרפת 8 שעו על משימות שנמצאות על הדף??"
לעזור לעובד החדש
ושוב, אתה לא יכול לבוא ולהגיד "כן, הייתי צריך לעזור לעובד החדש" כי אז יגידו לך "לא... זה לא טוב... תמחרת פה משימות על הדף, אתה צריך לעמוד בהן. אתה רוצה לעזור לבנאדם, תבקש את זה מראש, נשים את זה בתוכנית, נכתוב 'שעתיים של עזרה' ותלך לעזור לו" - עכשיו נניח באמת נכתוב "שעתיים עזרה למתכנת החדש" ובאותו היו הוא לא יהיה צריך, אז אתה לא מתכנן טוב. שוב, הרעיון שאנחנו אמורים לחזות את העתיד, זו כזו תקוות שווא, והבעיה הכי גדולה היא מכיוון שהאנשים שלמטה, המתכנתים שבתחתית סולם הדרגות, בתחתית הפירמידה - הם היחידים שנדרשים לתת הערכת זמנים לממונים שלהם. כי הסקראם מאסטר, ראש צוות, מי שמעלי בדרגה אחת בפירמידה - הוא לא צריך להעריך כלום. הוא רק עושה זה+זה+זה+זה=כמה יצא ההערכות זמנים של כולם. אין לו שום אחריות אישית. אין לו שום אפשרות לפשל, הוא לא לוקח שום סיכון על עצמו בשיטה הזאת של לחזות את העתיד ולהעריך זמנים ומשימות.מה סקראם מביא לנו זה פוקוס ממש דוגמטי על תהליכים ועל תזמון של דברים, במקום שאנחנו נהיה עסוקים בדברים שבאמת חשובים כמו יצירתיות, אמביציה, מוטיבציה, ועבודה קשה באמת. כזו שמונעת מתשוקה. עכשיו, כאשר אנחנו עובדים ויש לנו מוטיבציה, וכל התנאים מתקיימים והכל פועל כמו שצריך, תקשורת בין המתכנתים ותיאום ציפיות וזמנים - זה דבר שקורה באופן טבעי. אני כשאני הייתי מנהל, הייתי ניגש לאנשים ושואל אותם "מה שאתה עובד עליו, מתי אתה הולך לסיים אותו?" ואם הוא היה אומר לי "זה עוד שבוע\יומיים\שלוש שבועות" הייתי רושם לי ביומן ומתכנן בשבילו מהו אחר כאשר הוא יסיים עם זה. לא היה שום דבר שהיה בעיה והיה מצריך מין תבנית של ישיבה יומית או אחת לשבועיים או דברים שכאלה. אבל עם סקראם יש לנו פה כפייה של תהליכי תקשורת, ותכנון זמנים שפשוט נכפה עלינו כמו פולחן. זו מין הונאה כזאת, מניפולציה של ממש. יש פה מניפולציה של ממש שעובדת על העובדים, אומרים להם "שמע, אתה לא יכול להרים את הראש שלך. יש תוכנית, למה אתה לא עומד בה? עשית תוכנית בעצמך!" ואף אחד לא מוכן לרדת מהשיגעון הזה.
סקראם באמת יכול למנוע אבטלה סמויה. אבל באיזה מחיר?
לשיגעון הזה יש כל כך הרבה מגרעות וזה שולט בכל היבט בפיתוח תוכנה. יש לנו את התכנון, את הפרזנטציה של סוף ה"ספרינט", את הדיילי מיטינג, הוויקלי מיטינג, יש לך אפיק יש לך סטורי ויש לך טאסק - כל דבר מתומחר בזמן וכל דבר ממש מוגדר וכל שורת קוד יש לה סיפור וכל דבר צריך לתאר, לתכנת ולבדוק, ואתה לא יכול לעצור ולהגיד "היי היי היי כל הדבר הזה תורידו אותו ממני. תגידו לי מה אתם צריכים, ואני אמצא דרך לעשות אותו." אין את זה יותר. זה כמובן בשלב מסוים זה יתפוצץ לאנשים בפנים. הסיבה שזה עדיין לא מתפוצץ לאנשים בפנים זה שאנשים אוהבים לצמצם סיכונים, וסקראם באמת מבטיח התקדמות ושיפור בקצב הכי איטי שאפשר, אטי אבל בטוח. במילים אחרות, זה כמו לקחת את הכסף ולהשים אותו בפק"מ ולהגיד "אני, אני משקיע! כן, אני עושה אחוז ורבע בשנה! אני משקיע במקצועי." וזה מה שחברות עושות עם סקרם. הפיתוח הוא מאוד מאוד איטי, ולא איכותי, ומתיש ושובר למתכנתים את כל הנפש, אבל אפשר לצפות שלא יהיו הפתעות לא לטובה ולא לרעה. עם סקראם אתה יכול לדעת שלא יהיו לך הפתעות לרעה מאחר ואתה עושה מיקרו מנג'מנט לאנשים, ואם הם לא עובדים אתה יכול לפטר אותם מיד או להחליף אותם למישהו אחר. נכון, אז אין לך את הסיכון הזה שמישהו ישב שלושה חודשים ואז תגלה שהוא לא עושה כלום. שהוא רק רוח וצלצולים. אין לך את הסיכון שאחרי חצי שנה תגיד "וואלה, נתתי לבנאדם את כל החופש והוא בסוף לא עשה כלום."
אוקי, נכון, יש מקרים כאלה. יש, וסקראם באמת יכול למנוע את זה, אבל לא רק סקראם, גם תקשורת בריאה נורמלית יכולה לעשות את זה, לבקש מבנאדם לשתף במה הוא חוקר ומה הוא מתכנן לעשות עם הזמן, ומה הוא מתכנן לעשות אם זה וזה לא יעבוד... יש כל מיני מרכיבי תקשורת בין-אישית שקורים בצורה חופשיה ואינטואיטיבית, ואנחנו לא צריכים דת שלמה שמגדירה לנו מתי להתפלל ואיך להתלבש - בשביל להצליח לפתח תוכנה. מרכיב הליבה של כל דת היא ההעדפה לקבל ספקולציות על פני אי הודאות והלא נודע, וכל מה שסקראם עושה זה לספק לנו את המרכיב הזה לתוך עולם הפיתוח. מנהלים שלא מסוגלים לסבול יום אחד של אי ודאות ביחס למה שכל מתכנת בצוות עושה ייהנו מתחושת אופוריה ושליטה, שתבוא על חשבון שחיקה ומרמור של הצוות במקרה הטוב, והקניית ההרגל של בינוניות במקרה הרע. מתכנתים טובים שמכבדים את עצמם צריכים להתרחק מאנשים שמנסים לשלוט בהם, לכפות עליהם בינוניות ולקחת מהם את כל הקרדיט.