אתחיל בשאלה: כמה מהקוראים מכירים את flan של גוגל? מי שלא מכיר מה לגוגל ול-flan (בתרגום: עוגת גבינה), מוזמן להסתכל בתוצאות בגוגל: מדובר על מערכת אנדרואיד הבאה (האם זו תהיה גירסה 2.1? 2.5? אולי בכלל 3.0? אף אחד אינו יודע בוודאות).
אחד הדברים שמצליחים לעצבן מפתחים רבים כשזה מגיע לגוגל, זה עניין היחס שלה למפתחים, ובקטע הזה יש לגוגל הרבה מה ללמוד גם ממיקרוסופט וגם מ-אפל.
בעקרון, גוגל רושמת לעצמה נקודות זכות בכך שהיא משחררת את מערכות ההפעלה שלה (כרום OS ואנדרואיד) כקוד פתוח, שזה בהחלט דבר מבורך, רק שיש בעיה מהותית אחת: מפתחים שומעים רשמית על המערכת בדיוק באותו זמן ששאר העולם שומע עליה, לא לפני כן (למעט חברות חומרה מסויימות שעובדות בשת”פ צמוד והדוק עם גוגל).
הבה ניקח את הגירסה האחרונהשל גוגל אנדרואיד, גירסה 2.0. האם מישהו ממפתחי התוכנה קיבל אימייל או הזמנה מגוגל על כך שהולכת לצאת גירסת אנדרואיד חדשה בקרוב? התשובה פשוטה: לא. למעט מהנדסי מוטורולה שעבדו עם גוגל על ה-Droid, אף אחד לא קיבל שום כניסה לקוד החדש.
מדוע בכלל העניין חשוב? בגלל עניין פשוט: הכנות של תוכנה.
ניקח את מיקרוסופט לדוגמא: כשמיקרוסופט רוצה לשחרר מערכת הפעלה חדשה (או שדרוג), היא מודיעה למפתחים שלה שמנויים ב-MSDN וגם בעיתונות על כך שעומדת לצאת מערכת הפעלה חדשה. מפתחים המנויים ב-MSDN של מיקרוסופט גם יקבלו גירסאות מוקדמות שאולי לא יהיו הכי יציבות, אבל יהיה להם משהו מול מה לפתח ולנסות את התוכנה שלהם, כך שכשהגירסה הסופית תצא (בד”כ כמה שבועות עד חודשים לפני היציאה לציבור), למפתח תהיה עבודה מועטה לבדוק את המוצר שהוא מפתח לשוק מול הגירסא הסופית של מערכת ההפעלה. כך זה נהוג עם מיקרוסופט וכך זה עם Apple ועם חברות תוכנה רבות נוספות.
במקרה של גוגל, אם אני מפתח תוכנה לשיווק עבור המשתמשים אני נדפק. ביום שגירסת מערכת ההפעלה החדשה יוצאת לאוויר העולם, זה היום שבו גם אני כמפתח יכול להוריד אותה בדיוק כמו המשתמשים והמפתחים האחרים. אלו שיהיה להם ציודים מבוססים על מערכת ההפעלה החדשה וירכשו תוכנות דרך החנות של גוגל, סביר להניח שיזעקו מדוע התוכנה שלי לא עובדת או לא עובדת טוב. לי תהיה רק אפשרות להתנצל ולהבטיח להם שדרוג חינם. גוגל לא הודיעה לי כמפתח שהולכת לצאת גירסה חדשה של מערכת ההפעלה, היא לא נתנה לי גירסה מוקדמת כדי לבדוק שהמוצרים שלי בכלל רצים על המערכת החדשה או זמן להתכונן כדי לתקן/לשפר את המוצר שלי שלא רק ירוץ במערכת ההפעלה החדשה, אלא גם יתמוך בפונקציונאליות שמערכת ההפעלה החדשה נותנת.
גוגל צריכים להתעורר ולהתחיל להבין שהיחס שלהם למפתחים הוא גרוע. כמה גרוע? מאוד. אין תמיכה רשמית שאני יכול לשאול שאלות טכניות כמפתח ומישהו יהיה חייב לענות לי. יש קבוצות דיון שאם בא למפתחים לענות, אז יענו ואם לא.. אוכל לדפוק את הראש בקיר. באפל,במיקרוסופט, אדובי ואחרים – יש גם יש. במילים אחרות: זה שגוגל משחררת את הקוד באותו יום בו מוכרזת המערכת זה נחמד, אבל אני צריך את זה מס’ חודשים לפני כן, ואין לי בעיה לחתום על NDA בשביל לקבל את הקוד, כי כמו שאינני מעוניין שהמתחרים יראו את המוצר שלי לפני שאכריז עליו, גם גוגל לא יכולה לחשוף את המערכת לפני ההכרזה הרשמית ולשם כך קיים הסכם ה-NDA.
אפל מלקה את מפתחיה בשוטים (מתי המוצר שלך יופיע בחנות שלהם? שאלה מצויינת, תלוי בקריזה של הבודקים. האם האפליקציה שלך תאושר? שאלה מצויינת! תלוי אם אפל לא יתפסו קריזה על פיפס קטן באפליקציה שלך וישלחו לך Reject. הלקוח החליט שהוא רוצה החזר כספי? אתה מפסיד 100% מהמחיר למרות שקיבלת רק 70%… מתי שתקבל את כספך. אין זמן מוגדר שאפל מתחייבת לעמוד בו) אבל גירסת OS 3 היתה זמינה למפתחים הרבה לפני שהיתה זמינה לציבור, וגוגל צריכה ללמוד מכך.
לסיכום: מערכת הפעלה יכולה לקום או ליפול על דבר אחד חשוב: מוצרים נלווים (תוכנה, חומרה, שרותים וכו’). כשאתה דופק את אלו שמפתחים את המוצרים הנלווים כמה וכמה פעמים, אל תתפלא בסוף אם המערכת שלך נופלת כי אחרים כבר לא מוכנים ליפול שוב לשטיקים שלך.
כדאי שגוגל ילמדו זאת מהר.