לפני שלוש וחצי שנים פרסם אייזה רסקין מאמר תחת הכותרת Never use a warning when you mean undo בו הוא טען שאפשרות לבטל פעולה על ידי Undo טובה יותר מהצגת תיבת אישור לפני שהפעולה מבוצעת. הטענה המרכזית של רסקין היא שבני אדם מתרגלים לבצע פעולות כמו אישור או ביטול בצורה אוטומטית (Habituation) גם כאשר אנו לא מתכוונים לבצע אותן ולכן הצבת אפשרויות בתיבת אישור אינה כה אפקטיבית.
הפתרון שרסקין מציע מוכר כבר שנים למשתמשי ג'ימייל והוא האופציה לבטל את הפעולה האחרונה שביצעתם במקום לאשר אותה מלכתחילה. בין אם מדובר במחיקת מייל או העברת מייל לתיקייה, הממשק מציג את האפשרות בראש הדף להתחרט ולהחזיר את מצב לקדמותו. מעבר לכך, ניתן מאז מרץ 2009 להוסיף תוסף לג'ימייל שמאפשר לבטל שליחה של מייל תוך פרק זמן של כמה שניות. לפעמים זה כל מה שצריך בשביל להתחרט ולהחזיר את הגלגל אחורה.
היתרונות
תיבות אישור קופצות לנו על המסך מספיק פעמים כדי שהאינטראקציה שלנו איתן תהיה מבוססת יותר על דחף עצבי אינסטנקטיבי מאשר תהליך קוגנטיבי בו אנו חושבים ומנתחים את מה שאנו עושים. לעומת זאת, כאשר אנו בוחרים לבטל פעולה שבוצעה אנו קודם חושבים ואז מבצעים במקום שההפך יהיה נכון כאשר אנו פועלים בצורה אוטומטית מתוך הרגל. הודעות מערכת ותיבות אישור יכולות להיות סוג של מכמונת מהירות שיכולה לעכב ולעיתים לעצבן. כמעט תמיד מדובר בחלון Modal שמנטרל את האינטראקציה עם הממשק והמשתמש חייב ללחוץ על אחד הכפתורים בו בכדי לסגור אותו ולחזור להשתמש בממשק. אי אפשר להתעלם ממנו ולא תמיד יש לכך הצדקה. בהיבט הזה הסרת תיבות אישור יכול לתרום לרצף פעולות טבעי ומהיר יותר שאינו נקטע גם אם נכללת האפשרות Apply to all או Never show again. שתי האפשרויות הללו עוזרות לצמצם את מספר הפעמים בהן המשתמש צריך לאשר פקודה ומהוות לדעתי פתרון טוב בעיקר כשיש סיכוי שתיבת האישור תופיע בתדירות גבוהה.
החסרונות
החסרון העיקרי לדעתי הוא שישנם מקרים, כמו במערכות קריטיות, בהן התוצאה של ביצוע פעולה לא נכונה יכולה להיות חמורה מאוד ולכן קיים צורך לוודא את כוונת המשתמש לפני ביצוע הפעולה. זה לא בא לידי ביטוי במקרה של זריקת מייל לפח או מחיקת טיוטה ב-WordPress אך במערכות רפואיות, צבאיות ופיננסיות לדוגמא שבריר שנייה עושה את כל ההבדל ולא תמיד ניתן טכנית להתחרט ולבטל פעולה. כל זה עדיין מציב אותנו מול הבעיה של התרגלות ומעלה את השאלה כיצד אנו מתחשבים במצב הזה בכדי לצמצם ביצוע פעולות לא רצויות בלי כוונה.
חסרון נוסף הוא הקושי להעביר מידע חשוב למשתמש בנוגע לפעולה העומדת על הפרק. תיבת אישור לרוב תכלול טקסט או שאלה שנועדו להסביר למשתמש מה יקרה ומהן ההשלכות של הפעולה אותה הוא עשוי לבצע. אם מדובר בפעולה פשוטה כמו מחיקה אז אין צורך בהסבר וניתן להסיק שהפעולה ברורה מאליה אך ישנם מקרים יותר מורכבים בהם אנו לא יכולים לסמוך על כך שהמשתמש יכיר או יבין את ההשלכות של ביצוע הפעולה.
לדוגמא, כאשר מוחקים שיר מספריית השירים ב-iTunes הוא ימחק מהמכשירים שמסונכרנים בפעם הבאה שהם יסונכרנו. הודעת האישור כוללת את ההצהרה This song will also be removed from any iPod or iPhone which synchronizes with your iTunes library. כיצד היינו מלמדים את המשתמש שזה מה שיקרה אם רק היינו מציעים אפשרות לבטל את מחיקת השיר? האם עלינו לנסות ללמד או להתריע בדרכים אחרות? גוגל מציעים פתרון סביר לבעיה הזאת על ידי תוספת הקישור Learn more לצד ה-Undo אך האם זה פתרון שמתאים לכל סוג פעולה?
שילוב של השניים?
במקרה ובוחרים מאי אלו סיבות לכלול תיבת אישור אני סבור שצריך לבחון גם אפשרות Undo למקרה ומתבצעת בחירה לא רצויה. כל עוד ניתן מבחינה טכנולוגית לבטל את הפעולה האחרונה ולהחזיר את המצב לקדמותו זאת אפשרות שיכולה לפחות לספק מענה אם וכאשר המשתמש מבצע את הבחירה מתוך הרגל ולא מתוך בחירה מחושבת.
הבעיה עם תיבות האישור למיניהן הוא הנטייה האנושית לאוטומציה של הלחיצה על "אישור" שמתפתחת כתוצאה מהטרדות רבות מדי בבקשות לאישור.
הפתרון המיטבי, בעיני, הוא שילוב של Undo וחלוניות אישור. מצד אחד תמיד לאפשר undo ומצד שני להציג חלוניות אישור – אבל לצמצם את השימוש בהם למינימום. יש הקפיד שדרישות לאישור מוצגות רק במקרים שבאמת קריטי לקבל אישור מהמשתמש לפני הפעולה. התנהלות כזו תצמצם הסיכון שמשתמש יגיב מתוך ה "טיס האוטומטי".
לפני כמה שנים ראיתי שאלון בסגנון "בחן את עצמך" שנועד לבחון האם אתה מכור לטכנולוגיה.
אחת השאלות היתה "האם נעלת את המפתחות בתוך האוטו ואז ניסית לעשות undo?"
באופן כללי אני יותר בעד undo מכל הסיבות שהזכרת.
מסכים שבמקרים מסויימים צריך להשתמש בתיבת אזהרה. במקרה כזה הייתי מנסה לעשות את התיבה בעלת אופי משתנה, כך שהמשתמש יתקשה יותר להתרגל אליה.
זה לא חייב להיות שינוי מעיק (מיקום שונה על המסך בכל פעם). זה יכול להיות שינוי חביב כמו שינוי צבע, הוספת אנימציה קטנטנה (בסגנון מעבר סליידים בפאוור פוינט) או משהו בסגנון.
אם התיבה תהפוך למשהו "מגניב" שמופיע מדי פעם במערכת, המשתמש אולי אפילו יחכה להופעתה ויתיחס אליה ביתר שימת לב.
לגבי שאלת ה"חינוך" באמצעות תיבות דו-שיח, אני חושב שהבעיה שאמיר העלה נובעת מכך שאפל שעצם מערבבים בין שתי פעולות.
מחיקת השיר מהתוכנה היא פעולה אחת, ומחיקתו מהמכשיר הנייד היא פעולה אחרת ובעבור משתמשים רבים כלל לא קשורה לוגית.
עצם העובדה שהחברה בחרה לאחד את שתי הפעולות מציבה בעיני מכשול בפני המשתמש, והבחירה שלהם "לחנך" את המשתמש דרך תיבת אזהרה היא מה שנקרא Post design, ואפילו לא מאוד מוצלח.
דוגמה מצוינת לפח ש- 99% ממשתמשי המחשב נפלו בו (ודפקו את הראש בקיר) היא שמירת קובץ חדש בשם של קובץ קיים.
אני נזכר באימה שאחזה בי, חלקיק שנייה לאחר שהאצבע ירדה אוטומטית על הלחצן של העכבר כדי ללחוץ על Yes, כשהתחוור לי ששעות על עבודה ירדו לטמיון.
תרומה גדולה לאנושות יתרמו חברות התוכנה ביום שבו בכל זאת ישמרו קובץ גיבוי זמני לקובץ הדרוס, למקרה שהמשתמש אישר אוטומטית בלי לחשוב.
אמיר, תודה על פוסט מצוין ומעורר מחשבה.
אני בהחלט מסכימה שעבודה שוטפת מתנהלת טוב יותר עם אפשרות ביטול בדיעבד מאשר קטיעת התהליך בתיבות אישור (כאשר יש אפשרות לכך).
נקודה נוספת – במקרים בהם אין ברירה אלא להשתמש בתיבות האישור, חשוב לפשט אותם עד למקסימום. במערכת מסוימת אצלנו תיבות האישור כוללות לעתים חמש (!) אופציות – ואכן, שלא במפתיע, רוב המשתמשים מעדיפים שלא לנסות ולהבין את הניואנסים ולוחצים על "ביטול". אגב, רק אפשרות אחת אינה הפיכה…
יוסי – תוכנת הגרפיקה הוקטורית Corel Draw שמרה גיבויים – הן גיבוי אוטומטי כל X דקות (לבחירת המשתמש) והן שמירת הגרסה האחרונה עם כל שמירה. זה היה מאוד, מאוד שימושי…
Speaking of the Evil…
http://www.engadget.com/2010/12/15/gmail-can-now-restore-deleted-contacts-still-cant-mend-broken/
עדי, גם ב- Word יש אפשרות לשמור עותק גיבוי (ב- 2003 תחת "כלים -> אפשרויות -> שמירה -> שמור תמיד עותק גיבוי"). זה בעצם גיבוי של השמירה הקודמת. מומלץ מאוד לסמן את האפשרות הזו (אני בטוח שהיא קיימת גם ב- 2007-10). היא הצילה אותי ואחרים הרבה פעמים.
הבעיה שרוב המשתמשים לא מודעים לאפשרות הזו והגישה אליה מאוד לא ידידותית.
שאלות של ממשק יכולות להיות מעצבנות כמעט כמו שאלות ילדים באוטו
http://www.youtube.com/watch?v=ilzuHdlKHPw
אתה מוצא את עצמך עונה אוטומטית. הכפתורים האלו הם גם פירצה גדולה לפישינג וספאם ומבוססות על זה שהמערכת אף פעם לא תבין שהמשתמשת לחצה על משהו לא הגיוני.
עוד כמה דוגמאות לפתרונות טובים:
פיירפוקס וgrindstone המעולה סופרים כמה שניות לפני שניתן לך לאשר. בgrindstone יש גם פיתרון לתופעת ה'שייסה, סימנתי "אל תשאל אותי שוב" ולא הבנתי על מה'. הם נותנים לך אפשרות לקבל את כל השאלות שוב. אתה יודע שאם נדפק משהו, תוכל לשחזר, זה רק יהיה קצת זמן.
ויש מערכות וסביבות עבודה שפשוט מאפשרות להתאושש דרך ניהול גרסאות.
לדוגמה – WordPress
בבייסקאמפ וגם בדרופ-בוקס מנהלים יפה מאוד גרסאות של מסמכים, כולל מסמכי וורד.
לא ברור לי למה מייקרוסופט, שכל כך מנסה להזיז קצת את אופיס לכיוון יותר "וובי" לא מצליחה לעשות משהו כל כך פשוט ונוח כמו זה.
נתקלתי היום בדרך מקורית ודי נעימה להציג הודעת Are you sure?:
http://bit.ly/gHgtLT
אני חושב שהשימוש ב Undo הוא מצויין לפעולות שאנחנו מבצעים בתדירות גבוהה כמו טיפול בהודעות אימייל. והצגת הודעות Are you sure? מתאימה לפעולות שאנו מבצעים באופן נדיר יותר כמו מחיקת אובייקטים חשובים כמו קבצי עבודה בתוכנות וכו'.