מחפש צרות | מיכאל שטאל

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

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

הנה מה שהמפתחים של תוכנת ההתקנה הניחו:

  1. המשתמש מוריד את התוכנה בקליק מהאתר והיא יורדת לספריית Downloads.
  2. המשתמש בוחר בברירת המחדל להיכן התוכנה תותקן (משהו בכיוון של C:\Program Files)

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

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

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

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

אז תחת הכותרת של "צריך שכל דבר יהיה במקום"  העברתי את תוכנת ההתקנה לספריה בשם  C:\Installers\PhotoBook

והקלקתי פעמיים כדי להתקין. להפתעתי קיבלתי את זה:

אה! נזכרתי שגם בעבר נתקלתי בבעייה שהתוכנה מציגה הודעות בג'יבריש, ואחרי חיפוש מצאתי באתר החברה את ההוראות איך לעשות שההודעות יכתבו בעברית. קצת מנדנד ודורש גם Reboot , אבל מילא – אני ילד גדול ויודע להתמודד.

אחרי האתחול מחדש. הקלקתי שוב על קובץ ההתקנה. הפעם הופתעתי עוד יותר:

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

כאן כבר נכנסו החושים המקצועיים שלי לפעולה. רגע, אמרתי. בואי ננסה להתקין מתיקיה אחרת. הסרתי את התוכנה בעזרת uninstall, העברתי את תוכנת ההתקנה לספריית PhotoBook, והפעלתי שוב. הודעת השגיאה חזרה!
שימי לב, אמרתי לאשת התמיכה: כשמנסים להפעיל את ההתקנה מתוך ספריה בשם PhotoBook, מקבלים את הודעת השגיאה!(1) מה שעשה עלי רושם (ואם להודות על האמת, גם קצת הנאה שרק בודקים מכירים), לא עשה רושם גדול על הצד השני. "המשתמש צריך להתקין את התוכנה מ-downloads" היתה התגובה. וכדי שלא להשאיר אותי בלי תוכנה מותקנת, היא העבירה את תוכנת ההתקנה מספריית PhotoBook לספריה אחת מעליה – ספריה שבה אני שומר באופן מסודר את תוכנות ההתקנה השונות בהן השתמשתי עד עכשיו.

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

הטכנאית הפעילה את תוכנת ההתקנה ועמדה לאשר את ברירת המחדל של התקנת התוכנה ל-C:\Program Files (x86)\PhotoBook. 

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

ואני חושב: נפלא. איזה באלגן…

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

מה ששמעתם. כל הקבצים!!!!

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

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

אז מה היה לנו כאן?

1. אי-תאימות-אחורה: גרסה חדשה לא פותחת קבצים שנוצרו בגרסה מוקדמת יותר.

2. לוקליזציה: תוכנת ההתקנה מניחה תצורה (קונפיגורציה) מסויימת על מנת שתציג הודעות בעברית. כאשר התצורה אינה נכונה, התוכנה לא מתריעה על כך, לא נותנת הנחיות (באנגלית) שיעזרו למשתמש לדעת איך להמשיך - אלא מציגה ג'יבריש על המסך.

3. התוכנה לא מבחינה בין מצב שבו התוכנה מופעלת, למצב שבו פתוחה ספריה ששמה כשם התוכנה.

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

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

וכמובן החשד שאולי לא בודקים את תוכנת ההתקנה מספיק טוב.

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

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

 

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

(2) https://testprincipia.com/other-testing-stuff/#stuff7