יום ראשון, 19 באפריל 2009

Open Source לעומת פיתרון של תוכנה כשירות

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

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

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

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

  3. מוצר שהוא כלי עבודה עבורי, ולא יותר מזה, אני לא רוצה להתעסק איתו, ולא לחשוב עליו:
    מה קורה אם נופל השרת? מה יש על השרת?
    מה צריך לגבות? איפה הקבצים שעשיתי להם attachments יושבים?
    מה קורה עם אני משדרג את ה-Apache? או את ה-JRE של המכונה?
    האם מישהו צריך להתחבר מרחוק? האם זה מאובטח? האם זה SSL? האם צריך לעדכן DNS?
    איפה יישב השרת?
    כל השאלות הללו, אלו מחשבות קטנות ומציקות שתמיד נמצאות ברקע. בשיטת תוכנה כשירות כל הנ"ל לא מעניין אותי.

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

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

  2. אם בסה"כ, ה-Total Cost of Ownership יוצא יותר זול. ישנם המון אקסלים וגרפים באינטרנט שמנסים לענות על השאלה, אבל מבחינתי השיקול החשוב הוא - אם אני מקצוען בתחום או רוצה לפתח מומחיות בתחום.
    למשל, בדוגמא של ה-CRM, אם אנחנו נגיע למצב שיהיו לנו כל כך הרבה משתמשי CRM, שתצדיק העסקה (עלות מעביד) של עובד שזוהי המומחיות שלו, אז יכול להיות שנעדיף את SugarCRM.
    עובד זה יצטרך לדאוג, כמובן, ל-customizations, לגיבויים, לשינוי בקוד אם צריך, לעדכונים, לשרת , לאבטחה וכו'. כמובן שצריך לקחת בחשבון את העלות של השרת והגיבויים והעזרה הטכנית הנוספת שהוא עלול להזדקק לה. אבל הרעיון צריך להיות ברור -> אם חשובה לי מומחיות בתחום ה-CRM, אז יכול להיות שאעדיף מישהו פנימי שיתעסק רק בזה. אם המומחיות ב-CRM אינה חלק מהליבה של העסק שלי, כנראה שאוותר, או שאקח חברה שזוהי הליבה של העסק שלה.
לסיכום: חבל לי לראות שוב ושוב אנשים שחושבים "אה, זה באגזילה זה קל!" ואז נותנים למישהו להתקין (בדרך כלל לאחד התותחים כדי שזה לא יקח יותר מדי זמן), אחרי חודשיים מגלים שהם צריכים יותר, או חמור מזה, מתחילים לתת למי שהתקין כל מיני משימות בתחום.
עכשיו, כיוון שבדרך כלל מי שהתקין בפעם הראשונה הוא האיש הכי מוכשר בפיתוח או ב-QA (רצינו לחסוך זמן, זוכרים?), אז הזמן שלו ממילא עמוס. הוספתם לו עוד משימות ואז, או שהוא לא עושה אותם, או שזה בא על חשבון דברים אחרים. אם הוא מספיק לעשות את הכל, אז בדרך כלל הוא שוכח משהו (גיבויים זוכרים? מה עם ה-attachments?), ונשחק ממילא. בסוף, לארגון זה עולה הרבה יותר. כל זאת למה? כי הם רצו לחסוך כמה עשרות דולרים למשתמש לחודש.
בסוף, הם משלמים יותר, לאחר שבזבזו הרבה זמן מיותר וכסף, ובדרך כלל לאחר שעבדו למשך חודשים עם מוצר נחות.

לנו יש כל כך הרבה דברים שאנחנו מתעסקים איתם בשוטף. בנוגע ל-CRM, הראש שלי נקי.

2 comments:

  1. אפשר להנות משני העולמות להתחיל עם SaaS של מוצר קוד פתוח ולקבל אופציה להתקין מקומית.
    אנחנו באקטיבטק מציעים Vtiger CRM בעברית (וריציה של Sugar) כ- SaaS, הלקוח יכול בכל נקודה לקבל גיבוי ולהתקין מקומית.
    להלן קישור: http://www.active.co.il/crm
    השבמחק
  2. מסכים. זהו סוג של תוכנה כשירות, כאשר מאחור עומד גוף (אבא) שאחראי על האדמיניסטרציה שברקע ונותן ראש נקי ושקט. למעשה, זה לא משנה אם הגוף מריץ תוכנה שהוא פיתח (כמונו), או אם הגוף מתקין תוכנה חינמית, ודואג להכל, כל זאת כמובן רק במידה ואם יש באגים או תקלות בתוכנה, הוא יודע לטפל בהם ולתת תמיכה כמו שצריך.
    השבמחק