יום שני, 25 באפריל 2022

438 With Philip from Deepchecks about OSS GTM

פודקאסט מספר 438 של רברס עם פלטפורמה - הוקלט ב-18 באפריל 2022, חג פסח שמח - אורי ורן מארחים את פיליפ מחברת Deepchecks לשיחה על  Deepchecks ועל Go To Market Strategy מכיוון ה-Open Source.


(רן) ולפני כן - פיליפ, ספר לנו קצת עליך: מאיפה באת? מה אתה עושה? מה עשית לפני כן?
  • (פיליפ) תמיד קשה לתמצת קורות חיים בזמן קצר, אז רק נגיד במילה - נולדתי בארה”ב, אתם יכולים לזהות לפי השם, ובגיל 5 עליתי לארץ.
    • לימים למדתי בתיכון למדעים ואמנויות בירושלים, שם עסקנו בדברים יחסית כמותיים - פיסיקה, מחשבים ודברים בסגנון הזה.
    • והיה לי איזה “ג’וק” שאני רוצה ללכת לקרבי, אבל בסוף התקבלתי לתלפיות והתלבטתי הרבה - בסוף הלכתי לתלפיות, אבל נשאר לי קצת הג’וק הזה, וכמה בוגרי תלפיות שיכנעו אותי שגם אם אני אבוא לתלפיות אז אוכל עדיין אחר כך לעשות את זה.
    • הייתי תקופה די קצרה במורן - עסקתי בתחום של חקר ביצועים, שזה אפשר להגיד “להשתמש במספרים כדי לעשות דברים אופרטיביים”, ואחרי מורן גם עשיתי במשך תקופה את אותו הדבר בזרוע היבשה.
    • מתישהו באו לשם כדי להציג לארגון שהייתי שייך אליו תחום שנקרא Machine Learning - וספציפית היה גוף שהיה בזמנו די אנונימי ובאו להציג פרויקט שהם עשו וכשקשור ל-Machine Learning.
      • הם השתמשו ב-Random Forest בשביל לחזות משהו שקשור לפעילות האופרטיבית - וממש התלהבתי
      • עברתי לזה, ומשם רוב הרקע שלי בעולם של Machine Learning.
    • לימים גם עבדתי על איזשהו אלגוריתם במסגרת התזה, שקוראים לו AugBoost, יחד עם עם פרופסור ליאור רוקח - ו- To make a long story short אז יחד עם איתו ויחד עם שיר חורב, שהייתה איתי במסלול בתלפיות, הקמנו את Deepchecks, שבין היתר Addresses some of the problems we felt as users, בעולם ה-Machine Learning.
  • (רן) אז ליאור רוקח, למי שלא מכיר, היה לי את העונג להכיר - הוא פרופסור באוניברסיטת בן גוריון, ומאוד אוהב עצים, לפי מה שראיתי - כותב עליהם ספרים  . . . . עצי סיווג למיניהם: הזכרת את Random Forest והזכרת איזשהו אלגוריתם Boosting שאני לא מכיר, אבל אני מניח שפחות או יותר מה-Domain  . . . 
  • (אורי) אל תגיד פה - בפרדס-חנה - כרכור - “נורא אוהב עצים” . . . זה  . . . .
  • (רן) למה? יש לזה איזושהי משמעות סודית פה?
  • (אורי) לא, פשוט כולם מחבקי-עצים פה . . . 
  • (רן) אז ליאור בונה עצים . . . אבל הפוך, עם השורש למעלה.

אז פיליפ - קודם כל אלו קורות חיים מעניינים ולא שגרתיים וזה נחמד לשמוע ולהכיר. 
הזכרת את Deepchecks - מי היא Deepchecks, ומה אתם עושים שם?
  • (פיליפ) Deepchecks עוסקת בתחום של Continuous Validation for Machine Learning.
  • הרעיון הוא שיש, בכמה שלבים שונים במהלך הפיתוח וה-Deployment של המודלים של Machine Learning, יש כמה אתגרים יחסית ייחודיים שקשורים ל-Testing ו-Monitoring ול-Validation וכו’ - ו-Deepchecks מנסה לתת פתרון מאוד כוללני לדבר הזה
    • כלומר - לוודא, בכל השלבים השונים, שהמודלים וה-Data מתנהגים כמו שהיינו מצפים.
  • התחלנו כחברה שעוסקת ב-Monitoring ורוב הפוקוס שלה ב-Monitoring - ובגדול פונים ל-Team Leads או ל-Group Leads ומנסים לשכנע אותם לעשות POC.
    • ולפני סדר גודל של כחצי שנה עשינו מעבר יחסית חד למשהו שתמיד הייתה לנו תשוקה אליו, אבל רק עכשיו פיענחנו איך לעשות את זה, או שפיצחנו את איך לעשות את זה - וזה לתוך עולם ה-Product-Led Growth, וספציפית להיות Led by Open Source.
    • כלומר - במקום לפנות עכשיו לאיזשהו מקבל החלטות או מhשהו שיבין “מה טוב” בשביל הצוות שלו או הקבוצה שלו, אנחנו מנסים שיהיה יחסית הרבה שימוש “מלמטה” [Bottom-up], בצורה שהיא אורגנית, וזה משפיע המון . . . 

(רן) אז קודם כל - זה סופר-מעניין, אבל לפני שנגיע ל-GTM, ה-Go-To-Market, הזכרת את הנושא Continuous Validation אז בוא נראה אם אני מבין את זה. אני אגיד את זה במילים שלי - אם, נגיד, עבור מפתחי תוכנה יש Continuous Integration, ששומר על הנכונות של הקוד - זאת אומרת שאני כותב טסטים ואני מצפה שאם ה-Input לפונקציה הוא “כזה” אז ה-Output יהיה “כזה” - אז ב-Data או ב-Machine Learning, למעשה לא מספיק לבדוק את הנכונות של הפונקציה - לצורך העניין אם אתה בונה עץ סיווג, אז לא מספיק לבדוק האם העץ מסווג נכון בהינתן Data סטטי, אלא אתה גם רוצה לדעת האם ה-Data שלך תואם את הציפיות שלך . . . 
(אורי) כדי שלא יהיה Garbage-In-Garbage-Out . . . 
(רן) כן, זאת אומרת, לצורך העניין, ש-Data שיש לו Bias לאיזשהו כיוון יכול לייצר מודל שלא התכוונת אליו.
זו דוגמא אחת, ואני מניח שאתם ראיתם גם הרבה דוגמאות אחרות . . . ההבנה שלי פה נכונה?
  • (פילפ) בדיוק - I couldn’t have said it better myself . . .  מבחינת הפתרון אולי באמת אוכל לתת כמה דוגמאות ספציפיות 
    • הדוגמא הכי קלאסית שאפשר לתת וממש הייתה אחת הדוגמאות שהייתה לנו בראש בזמן שהתחלנו לעבוד על Deepchecks: תדמיינו לרגע שכשמאמנים Machine Learning אז לוקחים Data של אימון וזה Data שבעצם  . . .
      • את כל עולם ה-Machine Learning, אומרים שאם רוצים לפשט את “מה זה” אז זה בעצם “תכנות על ידי דוגמאות” . . . במקום לתכנת על ידי זה שמסבירים את הלוגיקה, נותנים דוגמאות ומשמתמשים בעקרונות מתימטיים או באלגוריתמים כדי להסביר למחשב בסוף מה לעשות.
      • אז יש את הדוגמא של עצים - יש כל מיני אלגוריתמים אחרים בסגנון של  . . . . גם דברים כמו רשתות נוירונים שכולנו מכירים, או למדנו לפחות - SVM וגם דברים שמי שהיה בכל מיני מעבדות בפיסיקה וכל מיני דברים כאלה אז ראה שמותחים קו ב-Excel או שעושים רגרסיה לוגיסטית וכל הדברים האלה, שיושבים תחת Machine Learning . . . 
    • אז הדוגמא שאנחנו חשבנו עליה בתחילת הדרך זה - והפתיע אותנו שלנו אין מענה לזה - זה מה קורה אם מאמנים על Data מסויים
      • נגיד שאנחנו מדברים על Data של בנאדם, ובין ה-Train לבין ה-Production מישהו הכניס Bug ובטעות התחלפו שתי עמודות, כלומר - נגיד שמה שהיה הגובה עכשיו נחשב כמשקל, ועכשיו המשמעויות הן הפוכות, כי זה נקלט בסדר הפוך.
      • וה-Bug הזה או הבעיה הזו יכולה להישאר במערכת שנים, כלומר - גם אם עושים Re-train שוב ושוב ושוב, נגיד במקומות כמו Outbrain שעושים Re-train כל הזמן, לא בהכרח יש מנגנון שבכלל תופס בעיות כשהן מוטמעות בפנים . . .
      • אז זו בעיה אחת, מהסוג שנקרא לו Miss-match בין Training ל-Production.
    • יש דברים שקשורים גם לזה שפשוט אולי בהתחלה כשהמודל Machine Learning היה Deployed הוא היה בסדר, אבל  . . . אלו, נגיד, בעיות שאפשר להבדיל בין Production ל-Production - שנגיד ההתפלגות השתנתה לאורך זמן . . . 
      • דוגמא קלאסית לזה שאם תסתכלו, נגיד, על דונלד טראמפ - אומרים את השם שלו לפני שהוא נבחר להיות נשיא ואחרי שהוא נבחר להיות נשיא, והמשמעות יכולה להיות שונה, והדברים האלה משוייכים לתחום או לנושא שנקרא Data Drift או Context Drift 
      • בלי להיכנס לניואנסים של ההבדלים ביניהם - יכול להיות שהמודל היה ממש-ממש בסדר ועבד מצויין בשלושה שבועות הראשונים, ובחודש שאחר כך פתאום נכנסת בעיה . . . 
(אורי) אז איך זה באמת . . . Drifting של Data over time . . .
(רן) בתוכנה נהוג להגיד שהתוכנה נחלדת . . .  זה נשמע מאוד לא אינטואיטיבי, זאת אומרת - איפה יש לך חלודה? [הרבה זמן בלי באמפרס, חסרים Memes על Rust…] אבל כן, ככל שעובר זמן, גם בשירותי תכונה, דברים מעניינים קורים - אם זה דיסקים שמתמלאים, אם זה Database-ים שניהיים יותר ויותר איטיים וכו’ - אז נוצרת “חלודה”, לכאורה, בתוכנה, ודברים, כמו שאמרת, דומים יכולים לקרות גם במודלים של Machine Learning. כמובן שמסיבות אחרות, אבל גם הם יכולים לקרות.

לכל Founder יש תמיד איזה סיפור נורא רומנטי על על איך התחלתי את החברה - אולי כדאי לך לחשוב על סיפור שבו, אתה יודע, שירתת במורן ופתאום היה לך Data-drift  וחיילים ניצלו מטיל כי גילית את זה . . . . בקיצור, תמציא איזה משהו יפה.
  • (פיליפ) אבל בנימה קצת יותר רצינית - כן, במחקרי מידע מבצעי או כמו שאנחנו אהבנו לקרוא לזה, משהו שהגיע מהתחרויות שהיינו משתתפים בהן, ממ”מ - אז משהו מאוד יפה שם הוא שהיינו יכולים לעבוד על הפרויקטים הכי קשים בשיתופי פעולה עם כל מיני גופים אחרים
    • בגדול, בהרבה ארגונים אחרים היו מתחילים לעסוק באיזשהו פרויקט והיו מגיעים לאיזשהן דילמות משמעותיות - ואז אנחנו היינו נכנסים.
    • החסרון הוא כמובן ש-we didn’t do our own product, end-to-end, אבל בדרך כלל היתרון הוא שראינו המון - ובאמת זה היה חלק מהמוטיבציה, כי ראינו שוב ושוב את אותן בעיות
  • אבל רק משהו על הנקודה הקודמת שאמרת, על “לחלד” וכו’, משהו שדי מגניב כשחושבים על זה - מי מכם שהיה בצד שמנסים למכור לו תוכנת Machine Learning, אז הרבה פעמים ה-Pitch הוא “תראו, עכשיו זה מדויק ב-90%, אבל זו מכונה לומדת ועם הזמן זה הופך להיות יותר ויותר מדויק כי יש יותר דוגמאות” -
    •  אני אף פעם לא ראיתי את זה . . . אף פעם לא ראיתי את הדיוק עולה עם הזמן . . . 
    • (אורי) אתה אומר שזה רק ההיפך . . .
    • (פיליפ) במקרה הטוב זה נשאר אותו הדבר, פחות או יותר, עד כדי רעשים - אבל רוב הזמן זה יותר עם הזמן.
      • אפשר לעשות כל מיני דברים כדי לתקן, אבל . . . 
    • (רן) זה כמו הפרסומות ש”כשאתה ישן, הכסף שלך עובד” וכל זה - זה לא באמת עובד . . . 

(אורי) אז רגע, אני רוצה להכניס פה קצת אקטואליה לעניין - ב-Outbrain, לא מזמן, היה לנו סוג של באג אפי [Epic] כזה . . . עוד פעם, זה מסוג הדברים שאתה לא קורא להם “Bug” אלא “Issue”, כי זה לא שמישהו כתב את קוד לא טוב אלא שמשהו “החליד”, אוקיי? אני אתאר בקצרה מה קרה - יש מודל, הוא לומד באופן Continuous ויש לו מנגנון שברגע שהוא רואה שהדיוק של הלמידה יורד, הוא עוצר הכל, עוצר את ה-Production Line - מפסיקים לייצר מודלים כי ירד הדיוק, כמובן שזה כשעובר איזשהו Threshold. 
ומה שקרה זה שזה לא עצר בזמן - מודל אחד דפוק נכנס ונפרש ב-Production, על חלק מ-Production - ואז ה-Line נעצר, כיוון שלא קפצה ההתרעה הנכונה - ובמשך יום-ומשהו היינו עם מודל דפוק ב-Production.
אבל הטריגר שלנו על הדיוק של המודל . . . .
  • (פיליפ) שנייה, לפני זה - אתה יכול בבקשה להגיד כמה מהתעבורה עברה שם? מה הנזק, פחות או יותר?
(אורי) שני-שליש מהתעבורה עבדה על מודל דפוק במשך יום, 30 שעות . . . יש הרבה למידות מהסיפור הזה וכו’, אבל משהו כמו שני-שליש מהתעבורה למשך 30 שעות - וזה הוריד הכנסות וכו’ וכו’.
אבל בגדול, הטריגר נמצא שם - הוא הדיוק של המודל, והדיוק שלו נפגע. זאת אומרת, מה שמעניין אותך זה לא כמה ה-Data עשה Drift לאורך הדרך - זה דבר שיכול לקרות. ולהיפך - אנחנו לפחות מאמנים מודל באופן תכוף כי אנחנו יודעים שה-Data  עובר Drifting ,ואנחנו יודעים שדונלד טראמפ אתמול היה מעניין ומחר לא מעניין, או אם ניקח משהו הרבה יותר - תוך כמה זמן לוקח לתת סטירה לבנאדם? צריך חצי שנייה? בסדר, אז תוך חצי שנייה, Will Smith ניהיה הדבר הכי חם בעולם . . . .וגם הבחור השני, Chris Rock, ניהיה . . . אבל בגלל השינויים הגדולים האלה, מאוד חשוב לנו לאמן מודלים מהר ובאופן תכוף. אז ל-Drift הזה של ה-Data אנחנו נותנים את המענה הזה, אבל . . .
(רן) אז אתה אומר שמבחינתך, Drift זה דווקא Feature, זה לא  . . .
(אורי) Drift זה Feature! [יש לנו Bumper sticker חדש?] . . .
(רן) ה-Data משתנה, ואתה רוצה לשקף את זה כמה שיותר מהר ב-Production.
(אורי) בדיוק - אבל בסוף אני רוצה לבדוק את ה-End-state, שזה הדיוק של המודל - אז השאלה היא איפה אתם בודקים?
  • (פיליפ) קודם כל, רגע לפני שנגיע ל-Deepchecks: התחום הזה הוא תחום שיש לכל חברה שיש לה מודלים ב-Production.
    • ככל שיש יותר מודלים ב-Production, לפעמים סופרים ממש מודלים . . . כמה דברים שעושים פרדיקציה (Prediction), שלפעמים וזה מעניין להסתכל על Task-ים
      • זאת אומרת שלפעמים יכול להיות מודל, לא יודע - לכל גיאוגרפיה  יש Task שונה וכו’.
    • אבל בגדול, ככל שיש יותר מודלים ב-Production אז נתקלים במגוון יותר רחב של אתגרים שקשורים לתחום הזה שנקרא Observability ב-Production.
  • בעצם יש, הייתי אומר, סוג של שני Clsuter-ים קיצוניים, ויש הרבה כמובן באמצע - 
    • אחד מהם דומה למה שאתה [אורי] עכשיו סיפרת בדוגמא שלכם, של Outbrain - מי שיש לו המון Data כל הזמן והמון Labeling כל הזמן, אז בדרך כלל האתגרים שלו קשורים ל-Re-Training
      • זאת אומרת - לוודא שכשעושים Re-Training אז דברים לא נדפקו.
      • ואז צריך המון מגינים מסוגים שונים של תרחישים.
    • לפעמים יש את הקיצון השני, של Label שיכול להגיע נורא באיחור - יכול להיות מצב שבו אין לי מה לעשות Re-Training יותר מפעם בכמה חודשים, או לפעמים פעם בשנה, כי רק פעם בכמה חודשים אני יודע מה עם ההלוואה שנתתי או משהו בסגנון הזה
      • ואז האתגר הוא לנסות להעריך איפה תיהיה פגיעה בביצועים, לפני שאני יודע להעריך את ביצועים בצורה מדוייקת . . . 
(אורי) אנחנו פשוט נמצאים בשוק שהוא מאוד זז, מאוד Volatile-י . . . 
  • (פיליפ) אז צריך להגיד - יש בעיות ש-Re-Training לא פותר.
    • סתם לדוגמא: נניח שהייתה לך עמודה שהכל בה Null-ים, אבל גם בפעם הקודמת זה הכל היה Null-ים . . . 
    • או הדוגמא שאמרתי, שיש לך איזה Bug של . . . 
    • (רן) החלפת עמודות . . . .
    • (פיליפ) כן, ההחלפת עמודות שאמרתי, או שיש לך Typo - ראינו את זה  . . . מדינה שכתובה בשתי דרכים שונות, אותו מדינה שפעם אחת כתובה עם Caps Lock במילה השנייה ופעם בלי . . . 
      • זה ממש Extensive list, אי אפשר עם איזה שלוש בדיקות לכסות הכל
    • ואת הדברים האלה צריך להגיד - ניסינו כן לתת לקהילה, לא לשמר במוצר הסגור שלנו, של “בואו, תעבדו עם Deepchecks בשביל ה-Production”, אלא ממש משהו שאנחנו עכשיו עושים במסגרת ה-Open Source וזה להגיד . . . 

(רן) אז בדיוק, אני רוצה להגיע לסיפור של ה-Open Source: בעצם, אתה אומר שהתחלתם כחברה שבעיקר עסקה ב-Monitoring ובתחום של Continuous Validation של Machine Learning Models, ואז לפני כמה חודשים אמרתם שאתם רוצים לעשות איזשהו שינוי ב-Go To Market Strategy וללכת Open-Source.
אז בוא שתף אותנו קצת במחשבות - מה היו ההתלבטויות? מה היו ה-Trade-off-ים? מה בסופו של דבר גרם לכם ללכת לכיוון הזה?
  • (פיליפ) אחלה, אז אני אלך עוד יותר אחורה - מרגע  ייסוד החברה, היינו מדברים ומתעניינים בעולם של ה-Training.
  • היה לנו איזשהו מדגים (Demo), שפיתחנו לאט-לאט, והיה איזשהו ריכוז מאמץ מסויים על זה, של נעם ברסלר שמוביל אצלנו את האלגוריתמים, לפני סדר גודל של שנה, בשביל להגיע לתצורה שאמרנו “אוקיי, את אותם הדברים שאנחנו רוצים לתת ב-Production ונותנים ב-Production, בואו נראה אם אפשר לתת את זה בצורה יותר קלילה, חינמית, באתר שלנו”
    • כשמעלים מודל, מעלים את ה-Data, לוחצים על איזה כפתור גדול ומקבלים איזה דוח . . . 
    • ואז הדוח מראה איפה יש בעיות ואיפה  . . .
  • ובגדול כן הייתה התלהבות מזה - יש אנשים שכן אמרו “וואו, אני צריך לשדך את זה לכל מאמר אקדמאי שאני מוציא”, או “אני היית רוצה בכל פרויקט לתת את זה ל-Junior, או לעבור יחד עם ה-Junior שעובד אצלי על זה”, אז הייתה בזה איזושהי התלהבות.
    • מצד שני - היו פידבקים אמרו “אוקיי, אבל איפה ה-Customizability? איפה אני אכניס את זה אצלנו? אני לא יכול להעלות את ה-Data, אני לא יכול להעלות את המודל” . . . .
  • בגדול, המסקנה הייתה שיש פוטנציאל מסויים לזה, אם מוציאים את זה כחבילת Python, אותו הדבר. . . .בסוף אולי גם נאפשר להוריד את זה כ-PDF, יש כמה תצורות שונות שחשבנו לעשות את זה בהן, אבל הרעיון או  . . . 
  • חלק מהפידבקים שקיבלנו מהראיונות User-ים, כשנתנו לאנשים להשתמש בזה, היו שזה מעניין אבל צריך לשנות את הצורה.
  • נסינו לעשות הערכה של עד כמה זה משמעותי, מבחינת כמה עבודה זה יהיה בשבילנו, והבנו שלא באמת אפשר לעשות את זה במקביל למוצר הליבה שלנו
    • כלומר - היה את עולם ה-Monitoring, שעבדנו עליו כבר יחד עם חברות, כולל מוסד פיננסי אחד גדול
  • ואז ניסינו להבין האם אנחנו הולכים לעשות את זה עם הצוות הקיים במקביל והבנו שזו פשוט סטייה גדולה מדי, אז אמרנו ש”נשים את זה בבוידעם לכמה זמן ונראה”.
  • דווקא ההברקה הגיעה בהמשך, כשהבנו שיש פה פוטנציאל להשתמש באותו ה-Open Source הזה, שהמטרה שלו הייתה הקהילה והנגשה ולהיות שם - אפשר להשתמש באותה התשתית בשביל עולם ה-Monitoring
    • זה ידרוש מאיתנו שינוי ב-Monitoring, אבל בעצם זה מאפשר אסטרטגיית Open Core
    • זאת אומרת להגיע למצב שאם הקהילה מאמצת את ה-Open Source ורגילה ל-API - מקבלים פידבק ורעיונות ל-Check-ים וכו’ - אז שאחר כך, בצורה יחסית טבעית, אפשר להשתמש בזה ב-Production.
  • ברגע שהבנו שזה אפשרי, אז אמרנו אוקיי, יש פה פוטנציאל לעשות איזשהו שינוי חד
    • אז עשינו Hackathon ראשוני, ממש עם לינה במשרד וכו’ כדי  לבוא ולהגיע לאיזשהו מדגים ראשוני - וכבר אחרי איזה שלושה ימים של עבודה היה תוצר . . . קיבלנו פידבקים די חיוביים עליו.
    • עשינו איזשהו תהליך מאוד משמעותי של שלושה חודשים - ואז שחררנו את הגרסא הראשונית של ה-Open Source.

(רן) אז מה יש היום? זאת אומרת, יש איזשהו מוצר Open Source שאפשר להשתמש בו, ומעבר לזה יש עוד אפשרויות בתשלום? איך זה עובד?
(אורי) יש ספרייה . . . . יש . . .
  • (פיליפ) אז בוא נדבר רגע על מה שיש
    • קודם כל, הגרסא הראשונית של הספרייה הזאת של Deepchecks בעצם כוללת הרבה מ-IP שפיתחנו לפני כן, אבל בשינוי תצורה - זה מה ששוחרר בתחילת ינואר של השנה הזאת (2022).
    • יש את חבילת ה-Computer Vision - כלומר, מה שהוצאנו היה בשביל מידע שהוא טאבולרי (Tabular), וחבילת ה-Computer Vision שפיתחנו די מיד אחרי השחרור כי היה הרבה ביקוש לזה.
    • הוצאנו עכשיו כבר ב-Beta ,כלומר עכשיו אפשר כבר לחפש Deepchecks ב-GitHub ואפשר להשתמש גם בטאבולרי וגם בעולם של ה-Vision
    • העולם של ה-Monitoring דווקא - למרות שיש לנו מוצר שהוא קיים ו-Feature Reach ויש לו גם לקוחות ראשונים - אז אנחנו דווקא לא לוקחים עוד לקוחות לזה
      • כי תיהיה לנו, בעוד כמה חודשים, גרסא אחרת שמניחה שה-User-ים כבר משתמשים ב-Open Source אז זה יהיה Integrated, ואנחנו נצטרך לעשות איזשהו מעבר משמעותי של זה.

(אורי) אז אם אני יכול לנסות להגיד מה הבנתי - היתה לנו איזושהי Core Technology שהבנתם, כשהתחלתם לדבר עם לקוחות, שכמעט עם כל לקוח יש קסטומיזציה (Customization) כבדה כדי לגרום לזה לעבוד אצלו. אני צודק?
  • (פיליפ) אני חושב שקסטומיזציה . . . בוא נגיד - כמעט באף חברה, או אף חברה שיש לה כמה מודלים ב-Machine Learning ,שזה רוב מי שזה באמת מספיק חשוב לו - או שיש או שצפויים להיות כמה מודלים של Machine Learning - כמעט לאף אחד לא יתאים מוצר מדף שהוא לא יכול לשנות את הקוד ולגעת בו, זה נכון.
(אורי) . . . וגם כל אחד אמר “כן - אבל אצלי זה קצת אחרת” . . . “כן - אבל אצלי ה-Data מגיע ב-Stream ו . . . “
  • (פיליפ) כן - אבל זו לא הליבה . . . זו לא הליבה של למה עשינו את השינוי הזה.
(רן) או שאתה יודע, בסופו של דבר - המכירות לא התפוצצו. היה מוצר, היה לו איזשהו גידול לינארי, אולי סביר - אבל בשביל Startup זה לא מספיק. Startup צריך ורוצה גדילה אקספוננציאלית, נכון? וזה לא השיג את זה.
(אורי) כולם רוצים אקספוננציאלי . . . [המילה החמה של 2020-2021, לפחות עד הגל הבא . . . ]
(רן) יפה - אז הם חיפשו דרך לפרוץ.
  • (פיליפ) נראה לי שאני יכול להסכים עם האמירה הזאת - אבל אני חושב שזה הרבה יותר משמעותי מזה.
  • אני חושב שבעולם ה-MLOps [הרחבה ב-432 Carburetor 32: 2022 DevOps Predictions] - כשיש המון פתרונות והמון בלגן קצת מבחינת מה שאפשר להשתמש בו ומתי וכו’ - אז Positioning זה הדבר הכי חשוב.
    • כלומר, זה שיגידו את השם וידעו בדיוק איפה למקם אתכם וידעו מה המקום שלכם ומתי משתמשים ואיפה - זה הדבר הכי חשוב שיש.
  • עכשיו, גם אם המכירות היו עולות בצורה אקספוננציאלית וכו’, יש עוד שחקנים בתחום של Monitoring - אנחנו לא היחידים שעוסקים בזה.
    • אני חושב שמשהו שהתחלנו לראות, ואי אפשר היה לדעת בהתחלה - רק אחרי שזה התחיל להתייצב היה אפשר לראות שהרבה מהשחקנים, וגם חלק מהשחקנים שכבר ממש גייסו Round B וכו’, מתמקדים בשלב של חברה שכבר יש צורך בוער וצריך לפתור אותו עכשיו.
    • וחלק מהאסטרטגיה שתמיד עניינה אותנו הייתה להיכנס הרבה יותר מוקדם - ומשהו שאי אפשר היה לדעת זה שלמרות שיש כמה וכמה חברות בתחום הזה, אף אחד לא נותן מענה בשלב מאוד מוקדם.
      • כלומר - דווקא כשהמודלים ראשוניים, ועוד אין הצלחה מאוד משמעותית של המודלים של Machine Learning ואם כבר הייתה הצלחה אחת אז עוד לא יודעים מה יניבו הפרויקטים הבאים
      • אז דווקא בתוך עולם התוכן הזה היה יחסית Blue Ocean - שזה היה מאוד מפתיע.

(אורי) אני חושב שמה שמדהים בכלל בעולם של Open Source - להבדיל מ-”Closed Source” או ממוצר מובנה - זה שאתה צריך לדבר עם מקבל ההחלטות  - כשמקבל ההחלטות יקבל את ההחלטה, סביר להניח על ה-Core Products שלו, על האם המוצר רלוונטי ל\לדברים שאני עושים ביום-יום והרבה מהם, ופחות על ה-Research שקורה כרגע באיזו פינה חשוכה בצד, שמישהו עובד על משהו . . . כי זה לאו דווקא מהחברות הקטנות  או מהסטארטאפים שעכשיו מתחילים עם המודלים הראשונים שלהם - זו יכולה להיות חברה גדולה, שכבר יש לה הרבה מודלים שרצים ב-Production וב-Core וזה, אבל יש מישהו בצד שעובד על הדברים הבאים. והבנאדם הזה, בצד, מנסה לזוז כמה שיותר מהר והוא מסתכל מסביב מה יש לו והוא אומר “מה, אם אני צריך עכשיו להגיע ל-CEO או ל-CTO, ולעבור את הרכש ולעבור את הזה . . . בשביל להשתמש באיזה משהו, ולא - זה יקח שנים . . . בוא, אני אקח פה איזו ספריית Open-Source שיש לי ואני אתחיל לעבוד איתה”. והוא מתחיל לעבוד עם זה, ולאט-לאט המוצר שלו גדל ותופס Traction ופתאום המחקר שלו מתחיל להתקרב ומתחיל להיות ה-Core בעצמו - וזו שיטת ה-Market Penetration, ה-Go-To-Market של עיקר חברות ה-Open Source.
להגיד “רגע, אני לוקח עכשיו נשימה” - אני מתחיל עם כל “הקטנים”, האנשים שעושים Research בצד, בין אם אתה Startup חדש ובין אם אתה איזו מחלקת מחקר שרוצה לזוז מהר בתוך Corporate גדול.
(רן) מה שאתה בעצם אומר לפיליפ זה שזה לא רק סטארטאפים - זה גם בכל החברות הגדולות . . . כל אחד שצריך עכשיו להילחם כדי למצוא תקציב יברך על מוצר Open Source, גם אם זה לא פותר לו את הבעיה במלואה - אז הוא יחפש את זה.
  • (פיליפ) האמת שזו נקודה די מעניינת . . . . אני לא יכול לדבר בשם כל האוכלוסיות, אבל את אוכלוסיית ה-Data Scientists ואוכלוסיית ה-Data Science Leads וכו’ אני כבר מכיר היטב - וזה עדיין הפתיע אותי לראות ב-Open Source . . . 
  • מי שיסתכל יראה שהייתה גדילה מאוד, גם ב-GitHub וגם ב-Downloads וכו’
    • כלומר - גם ב-GitHub Stars - היה Adoption מאוד משמעותי, וזה באמת לא הביא איתו רק את הסטארטאפים
    • באמת Enterprises מאוד גדולים גם אמרו “השתמשתי”, “אני אוהב את זה” ואת הדבר הזה והזה והזה.
    • לפעמים גם ממש מבקשים את אותו המוצר, שלפני זה היינו צריכים לריב קצת יותר קשה כדי בכלל להגיע ל-POC ועכשיו אומרים “אני ממש הייתי רוצה להשתמש ב-Monitoring שלכם - יש לכם להציע?” . . . 
    • תחכו כמה חודשים, וממש הסיטואציה התהפכה.
  • אז אני חושב שזה נכון - “ה-Researchers האלה, בצד” זה . . .
(אורי) יום אחד זה יגדל . . . 
  • (פיליפ) זה ממש ה-Target audience, אנחנו ממש מכוונים עם ה-Open source . . .  
  • כמובן ל-Monitoring יש כמה וכמה User-ים, שזה חלק מהסיבה שזה מורכב להתחיל POC - אבל ה-Open Source מיועד ל-Machine Learning Practitioners
    • לפעמים קוראים לזה Data Scientists, לפעמים זה Applied Researcher - יש לזה כמה וכמה שמות . . . לפעמים זה ML Engineer . . . . אבל יש User מאוד מאוד מוגדר
    • לפעמים הוא “בצד, לבד” ולפעמים הוא או היא בחברה שזה בכלל  . . . . אין סיכוי שהם יקנו, כי זה לא בתרבות שלהם, אבל אחרי זה הם יעברו לחברה אחרת וכבר יהיו רגילים.
    • זה פשוט במספרים.
  • אנחנו גם רוצים . . . כלומר, זה ממש חלק מה”אני מאמין” שלנו - הוא לא רק לטובת החברה אלא גם קצת מהמקום שבאים ממנו, של לנסות לתת Value לקהל יותר רחב ממי שמשלם
    • זה לא רק איזה כלי שהמטרה שלו היא לקנברט (To Convert) את זה, וזה ממש חשוב לנו ולא יכולנו לעשות את זה בלי זה - אבל אנחנו מראש מצפים שזה יהיה רק חלק מה-User-ים של ה-Open Source שיקונברטו (Convert) בכלל.
    • כלומר, שחלק מה-Vibe הזה וחלק מזה שהקהילה - הקהילה המקצועית של Data Science וגם הקהילה הקצת יותר רחבה שיודעת שאנחנו פועלים ככה ושיש לנו כזו אג’נדה צדדית של תמיד לתת בחזרה לקהילה - אני חושב שזה גם מעלה את ההסתברות שירצו לעבוד דווקא איתנו, לעומת כל מיני חברות אחרות, שזה  בגדול “Talk to our Sales” . . . 
    • אז זה משהו שמשפיע גם על הדינמיקות הבין-אישיות, וזה ממש מורגש, כבר עכשיו.

(אורי) אז בוא אני אעשה לך קצת Fast-Forward להיסטוריה שלכם, שעדיין לא נכתבה, בסדר? אז יצא Open Source ויתחילו לעבוד איתו אנשים ב-Research וזה . . . . ולאט לאט זה יגדל ויתחיל לתפוס Traction בתוך החברה של ה-Researcher-ים האלה - ופתאום יום אחד זה יגיע ל-CTO או ל-CIO והם יסתכלו ויגידו “רגע, מה זה הצ’יקמוק הזה שרץ פה על ה-Open Source? יש לזה אבא? יש לזה אמא? מה אנחנו יודעים על הדבר הזה? וזה וזה וזה . . . .”
(רן) “למי אני משלם כדי לתקן את זה אח”כ?” . . . 
(אורי) בדיוק - “למי אני משלם כדי לתקן את זה?” . . . ואז הם יגידו “רגע, אבל יש להם גם Pro Suite, שאפשר לשלם כדי לקבל תמיכה” . . . . והנה הגיע ה-Go To Market של “ה-Pro Suite”, של ה . . . לא יודע איך אתם קוראים לזה, “ה-Enterprise version” או . . . .
  • (פיליפ) כן, זה Deepchecks Pro” . . . אבל תיהיה גם גרסת Enterprise . . . .
(רן) גם Deep וגם Pro? שמע, זה עמוק . . . .
(רן) כן . . . 

אז נכון לעכשיו - אולי לא עבר מספיק זמן, אבל אתם חושבים שלקחתם פנייה נכונה בכיוון הזה?
  • (פיליפ) כן, זה כל כך מורגש.
  • קודם כל, בלי קשר למטריקות העסקיות, פשוט כיף ביום-יום . . . גם אני חושב שלי ולשיר, ש . . . 
(רן) אתם הפכתם מחברה שמגדלת אנשי Sales Enterprise ל"מגניבים האלה”, “ההיפסטרים עם ה-Open Source” . . . 
(אורי) כן, אבל בוא - המשקיעים שלך לא שמעו את זה, בסדר? . . . . זו חברה, זה לא תחביב.
  • (פיליפ) נכון, זה לא תחביב - אבל זה משמעותי מאוד, כי בכל אינטראקציה עסקית, כשמנסים להזיז משהו, יש אנשים
  • ועוד שנייה לפני שנדבר על תהליכים ממש, Proper, כמו שמדברים על זה - אז זה ממש מורגש, כי בכמעט בכל מקום שמכיל Data Scientists אז מכירים את זה וראו את זה ונגעו בזה, וזה נותן Prior הרבה יותר גבוה לדבר הבא שרוצים לעשות
    • וזה לא “הנה אתה, מה אתה רוצה למכור לי?” - וזה משמעותי כבר מראש, עוד לפני שהם השתמשו.
  • עכשיו, אחרי שהם ישתמשו, אז כמובן שיש הרבה יותר סיכוי שירצו לעבור למשהו אחר, כל עוד זה פחות או יותר באותה משפחה ומשתמש באותם APIs וכו’
  • אבל מבחינת אסטרטגיה עסקית, בכללי - אני חושב שמה שרן אמר קודם, על גרפים שמתפוצצים וכו’ . . . 
(אורי) טקטיקה של סוחרי סמים, בוא . . . [בדיוק בזמן לעונה האחרונה של Better Call Saul!] - “אחרי שהם ישתמשו, הם כבר ישלמו” . . . 
  • (פיליפ) אבל זה זה נכון - רק שזה “סמים בחינם” . . . .
  • אבל תמיד המטרה בדברים כאלה . . . תמיד צריך לוודא שלא לגמרי מרוקנים את כל העתודות של החברה מכל Feature שאי פעם אפשר לתת.
  • אבל מה שלומדים לאט לאט כשנכנסים לזה זה שממילא יגיעו Feature Requests כל כך משמעותיים מהחברות, עם כל כך הרבה עבודה כדי לגרום לדברים להיות Complied ולהתאים ל-User-ים וגם לUser-ים שונים ושירוץ ב-Production ואינטרציה לסוגי ה-Database-ים השונים וכו’
    • שה-Open Source לבד - זה אפילו לא “מי ייתן את ה-Support?” ו”מי יתקן את התקלה?” - זה ממש סט משלים של Capabilities שבלי זה הוא לא נותן מעטפת לכל החברה . . . .

(רן) יש לא מעט Offerings, החל מלתת את כל ה-Feature-ים בחינם ואת לתת את כל השירותים מסביב בתשלום ו-Open Source וכו’ - ואני חושב שחברות מכל מיני סוגים הצליחו, זאת אומרת שזה לא שיש רק מודל אחד שיכול לעבוד.
(אורי) אני פתאום חושב . . .רן, כשהתחלנו לעשות את הפודקאסט [דצמבר 2008] . . . 
(רן) היינו צריכים לבקש כסף?
(אורי) לא . . . כשהתחלנו לעשות את הפודקאסט והתחלנו לדבר על Open Source וכל זה - לא היו חברות ישראליות שעושות Open Source . . . וכשדיברנו על זה קצת עם VCs וכו’ אז אמרו “לא, בישראל לא יודעים עוד איך לעבוד עם המודל הזה ו . . . “
(רן) “Show me the money” . . . .
(אורי) כן . . . והיום לדעתי יש כמה וכמה . . . 
(רן) אני חושב שקרה עוד שינוי טקטוני - פעם היה ממש ממש קשה למכור למפתחים בארגוני פיתוח . . . תסתכל עשר שנים אחורה: זה היה שוק סופר-סופר קשה, משקיעים התרחקו ממנו, מעט מאוד חברות קמו שם - והשוק היום הוא אחרת לגמרי. זה שוק ענק - אין לי את המספרים, אבל אני זוכר שקראתי וזה באמת שוק שעבר תהפוכות בעשר השנים האחרונות . . .
(אורי) זה מעניין לראות מה יהיה היום, מה יקרה עכשיו . . . . עליית ריבית, את יודע . . . . אנחנו בעיצומו של איזשהו Down-term . . . 
(רן) אנחנו בעיצומו של גל - אבל לא קורונה . . . . [שינוי מרענן מהשנתיים האחרונות?]
(אורי) אתה יודע - אנחנו בשפל של הגל . . .  וזה מעניין מה יקרה. אתה יודע, זה יכול דווקא להיות מקום שיתן שוב מחדש תנופה ל-Open Source, כי הכסף כרגע לא זורם חזק לשוק הזה . . .
  • (פיליפ) אני רק אגיד במילה משהו על ישראל, בתוך כל הדבר הזה - אני חושב שממה שאני ראיתי, המגמה של Shift-Left, שמבינים שמקבלי ההחלטות הם למטה [כבר אמרנו פה שאפשר לצייר את העץ עם השורשים למעלה…] ובסוף כבר אין את האיש-מכירות שבא עם מזוודת מזומנים וחליפה וסוגר עם ה-C-Level ואז אומר למפתחים “הנה - בואו תשתמשו ב-Database הזה . . .”.
  • אני חושב שהמגמה של להבין את זה כן קיימת בארה”ב כבר תקופה מסויימת - אני לא אומר שזה לא ככה בעוד מדינות, אבל אני מכיר את זה די טוב מארה”ב ובעיקר מה-West Coast באמת.
  • אני חושב שזה קצת מפתיע שהטרנד הגיע לישראל רק לאחרונה, אבל באמת הוא הגיע וכבר רואים את זה בצורה מאוד משמעותית . . 
(אורי) זה כבר כמה שנים . . . . אתה יכול לראות חברות שיצאו מפה - Redis הם חברת Open Source במקור שלהם [ד”ש מ-2014: 223 Fogcast 11 - Redis] ו-Elasticsearch התחילה פה בישראל [362 Elastic, distributed corporate with Uri Cohen וגם בגיקונומי  – שי בנון ואלסטיק]. צמחו מפה כמה חברות Open Source טובות, אז . . . אבל עדיין, כשאני אומר “התחלנו לעשות את הפודקאסט” זה לפני 14 שנים, זה  . . . תרגילי היסטוריה.
  • (פיליפ)  מבחינת המאפיינים של ישראל, אני חושב שזה ממש מתאים, כלומר - המון חברות ישראליות “שצצו” ב-15 שנים האחרונות זה מכירות B2B, ומתישהו המנכ”ל עובר לעסוק בעיקר במכירות ואז מגייסים מישהו . . . 
  • תמיד אהבו להתגאות בזה שהם ישראלים ו”אנשי מכירות מטבעם” וכו’ - אבל יכול להיות . . . 
    • הם יכולים להצליח - הרבה פעמים הטענות הן על זה שהם מצליחים בגלל המוצר, ודווקא יותר קל לאמריקאי Local to Local למכור.
  • דווקא זה שפשוט לייצר מוצר איכותי שמתאים עם גימור גבוה ו-Common Sense ודוקומנטציה (Documentation) ולהגיע למצב שהוא Self-Served בצורה טובה - זה משהו שממש תפור על היתרונות היחסיים של ישראל
    • וזה קצת מפתיע, כלומר לפחות מבחינת ה-Ecosystem של משקיעים ובוא נגיד שמה שמעודדים סטארטאפים לעשות והעצות שסטארטאפים נותנים . . . 
    • אני כן מרגיש שזה ממש לאחרונה - נגיד שמאז תחילת הקורונה - שיש עלייה מאוד משמעותית בדחיפה לשם
    • והיום כבר רואים חברות שמתחילות ככה - שאומרים “אני רוצה להקים חברה שמוכרת למפתחים, והנה אני מתחיל עם Open Source ובעוד חצי שנה אני אחשוב על לדבר עם VCs”
    • וזה ממש מיוחד כשזה ה-DNA . . .
(רן) זה גם קצת מחביא את החסרון היחסי של ישראל - שזה המרחק מהשוק . . . Open Source מצריך פחות Face to Face ואתה פחות צריך להיפגש עם אנשים לארוחת ערב או לשחק איתם גולף, מצטער . . .
(אורי) בכלל בקורונה כל העניין הזה הלך . . . . אנשים היו עושים פגישות עסקים בתחתונים . . .
(רן) עלית עלי . . . לא שאני איש עסקים, אבל . . .
  • (פיליפ) לפחות זה דוחה את את הזמן שצריך אנשי מכירות.
    • זה לא אומר שאי פעם לא יצטרכו - הרבה חברות, גם Bottom-up, הרבה פעמים צריכות, אבל . . .
(רן) . . .  זה אומר שכבר יש איזשהו Level of Trust, אז הרבה יותר קל למכור להם בתחתונים, אתה לא חייב את העניבה . . . 

(רן) אנחנו מתקרבים ממש לקראת הסוף, ויש עוד נושאים שרצינו לדבר עליהם . . .
(אורי) . . . והשיחה רק מתדרדרת . . . .
(רן) . . . יש כאלה שבשבילם זו דווקא עליה ברמה . . .
ועדיין - יש כמה נושאים שרצינו לכסות ולצערי לא נספיק היום, אבל מה שכן, רציתי לשאול מה אתם מחפשים? 
אני מניח שאתם מחפשים משתמשים - אנשים שיכירו את המוצר . . . אתם מגייסים? מפתחים? Data Scientists? מה מצבכם?
  • (פיליפ) בדיוק, מפעילי צמ”ה . . . אבל כן  - אני חושב שהדבר הכי משמעותי שאנחנו רוצים עכשיו זה פידבק על המוצר - 
    • אנחנו רוצים שהקהילה גם תשתמש ותאמץ וכו’, אבל גם לקבל ממש בחזרה - “חסר לי ה-Check הזה”, “חסרה לי האינטגרציה עם הדבר הזה” . . . 
    • ואנחנו ניישם די מהר
(רן) והמשתמש הטיפוסי הוא Data Scientist או Machine Learning Engineer או מישהו אחר שנמצא בתחום  -שנמצא בשלבים יחסית מוקדמים של הפרויקט, זה מדויק להגיד?
  • (פיליפ) כן, למרות שזה רלוונטי גם לשלבים מתקדמים - אבל זה רלוונטי כבר מהשלבים המוקדמים.
(אורי) אם זה יעזור לתפוס את הבעיה  - אז לא משנה השלב . . .
(רן) לא משנה מתי . . . . אני רק אומר שלפעמים כשאתה כבר נמצא איזה שנה-שנתיים בתוך פרויקט אז לפעמים כבר יש לך הרבה מאוד הנחות מוקדמות שעשית ואולי כבר יש לך אינטגרציות - וזה הולך ונהיה  יותר מורכב להכניס עוד איזשהו כלי. בשלבים הראשונים זה פשוט Plug & Play - אתה יודע: מכניס-מריץ-ורואה מה יוצא - וזה קצת יותר קל.
  • (פיליפ) בהחלט אפשר להבין את זה, אני חושב שזה תלוי בנסיבות
  • אבל פרויקט שהוא מתקדם והוא בשלב של ה -Re-Train אז זה מאוד מעניין וגם בכזה שאין עליו ניטור משמעותי זה מעניין . . .
  • אבל בוא נגיד שאפשר כנראה למצוא מקרים שזה די מתקדם וכבר אין מה לבדוק.

אז פיליפ - אחלה, כיף שבאת, שיהיה לכם בהצלחה, !Viva la Open-Source . . . להתראות.

 האזנה נעימה ותודה רבה לעופר פורר על התמלול!