פרישת תוכנה ללקוח

זהירות !!!!1

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

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

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

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

ובכן אני מדבר כמובן על אלו שאם בכלל יצליחו לקרוא את המתכון (הגבוהים מבניהם) עדיין לא ידעו מה לעשות איתו (איפה הכפתור next next next ה"ידידותי" הזה ?). איך בדיוק הפלא הזה שיצרתם הולך לעבוד אצל אותם יצורים דוחים (טרולים נחשבים לידידותיים לידם, למרות שאנחנו נוטים לעצבן) ? ובכן התהליך הזה נקרא פרישה. ולא זה לא הלחם עם השוקלד שהיה לכם בטירונות (למה לעזאזל אני עדיין זוכר את זה אחרי למעלה מעשור ?!) – מדובר במינימום פעולות שהמשתמש צריך לעשות בשביל שהתוצר באמצעות הכלי להשמדה המונית שיצרתם. בWindows נהוג לספק קובץ setup.exe או קובץ נקודה msi, בלינוקס ובבס"ד (Berkeley Software Distribution) נהוג לעבוד עם חבילות (זו הדרך לדעתי הנכונה יותר, אבל הפחות ידידותית למפלצות האלו שנקראים משתמשים – שלומי, השגיאה מכוונת), ובמערכות אחרות לפעמים צריך לשבור את הראש קצת יותר.

הבעיה היא שכלים כמו רובי, ג'אווה** פיתון, פרל וכו' הופכות להיות לא רלוונטיות, אלא אם הצלמית בשולחן העבודה תעבוד ללא התערבות המשתמש, אבל מה עם ניהול תלויות של מודולים שונים ? מה המשתמש האידיוט (או סתם ההדיוטה) צריך לטפל בזה ? ואז פתאום שפות מפורשות עם כל הכוח שלהן הופכות להיות שמשון ללא שיער עיניים וכמעט ללא רוח חיים. פתאום 12 השורות שרשמתם בשביל ליצור דפדפן ב OpenGL שנותן תחושה עם משקפיים מתאימות ש Avatar הוא סרט לא מושקע ואין לו שום אפקט ש Compiz Fusion לא מספק כבר 20 שנה – שווה בערך לגרגר אבק בגשם, או במילים אחרות: לא שווה את הבית (יותר כמו הר, אבל לא משנה) הבודד שאותו הוא תופס.

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

* לא אמרתי שהנושא לא חשוב/מעניין, רק אמרתי שהוא עוקצני.

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

5 מחשבות על “פרישת תוכנה ללקוח

  1. ארתיום

    זאת הסיבה שאני מעדיף לפתח למפתחים…

    לך תסביר לאיש ש־BiDiTeX הוא preprocessor וזה בסדר להריץ אותה משורת פקודות… כולם רוצים אינטגרציה עם GUI כאשר יש עורך טקסט וחצי שבכלל יודע להתמודד כמו שצריך עם עברית (במיוחד בחלונות) וכל אחד עובד איך שנוח לו.

    לך תסביר לאיש שאני שכרטיס השרת שלו לא יעבוד של קזית 3 כי הוא דורש דרייברים קנייניים….

    הרבה יותר פשוט עם CppCMS… תן tar.gz הם יקמפלו, יתקינו ועוד ידווחו על בעיות בנוסף! היא עיקר שהוראות התקנה תהיינה ברורות… טוב, עד שאצטרך לתמוך במשתמשי MSVC שלא יבינו למה אי אפשר לתת להם msi ויצפו ממך לקמפל להם את הכל ל־MSVC 2005/2008/2010 ולתת להם גם ICU וגם zlib ו־python ביחד…

  2. ik_5 מאת

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

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

  3. el.il

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

כתיבת תגובה

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

הלוגו של WordPress.com

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

תמונת Twitter

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

תמונת Facebook

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

תמונת גוגל פלוס

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

מתחבר ל-%s