רברס עם פלטפורמה

רברס עם פלטפורמה

By רברס עם פלטפורמהTechnology
Download on the App Store

רברס עם פלטפורמה episodes

  • 493 Accessibility with Asaf from Evinced


    [קישור לקובץ mp3]
    פרק מספר 493 של רברס עם פלטפורמה (אוטוטו 500…), שהוקלט ב-18 במרץ בפברואר 2025 - הפסקת-אש קורסת 🎗️, Wiz נמכרת. אורי ורן מארחים את אסף מחברת Evinced כדי לדבר על אקססיביליות (Accessibility), פיתוח Frontend ועוד - Best Practices, איך עושים, איך מודדים ומה כל מפתח היום צריך לדעת על נגישות.



    01:50 אסף ו-Evinced
    (רן) אז לפני זה - אסף, כמה מילים עליך?
    • (אסף)  אז אני אסף שוחט-אבידע.  בתעשייה כבר הרבה שנים, חגגתי השנה 40 - אלוהים ישמור, אבל יופי . . . 
    (אורי)  40 - בגיל, לא בתעשייה . . . 
    • (אסף)  תלוי איך אתה סופר . . .  לא, בגיל, זה היה מאוד מפתיע.
    (רן) . . .   בשנות כלב . . .
    • (אסף) . . .  בשנות-כלב זה פי-משהו . . .  ובתעשייה הרבה שנים: כל מיני תפקידים - עשיתי Backend, Frontend, ניהול . . . 
      • בשנים האחרונות אני Frontend Tech Lead בסטארטאפ מאוד מאוד מעניין בשם Evinced, שמתעסק בעולם של נגישות - בעצם, עוזר לחברות גדולות להנגיש את הנכסים הדיגיטליים שלהן.
        • שזה אומר שאם יש אתרים או אפליקציות לטלפון - רוצים להנגיש אותן לכמה שיותר אנשים בעלי מוגבלויות. 
      • אנחנו נדבר היום על למה עושים את הדבר הזה ואיך עושים את זה, אבל בגדול זה מה ש-Evinced עושה
        • באמצעות כל מיני כלים כמו בינה מלאכותית, מילים כמו AI, Computer Vision ועוד ראשי תיבות . . .
    (רן) . . .  בדיוק רציתי להגיד שאורי שנייה נשם לרווחה שלא מדברים היום על AI . . .  אבל הנה,  הרסת לו, אז . . 
    • (אסף) יכול להיות שזו הפעם האחרונה שנגיד את צמד המילים הזה על היום  . . .
    (אורי)  יש את ה-”A” בAccessibility . . .
    • (אסף)  יש גם “I”, או כמה “I”-יים   . . .  
    (רן) כן, מעולה.  אז Evinced, באמת, אני מזכיר, חברה מעניינת ואולי ככה לפני שנכנס לנושא, אז כשאנחנו מדברים על אקססיביליות (בAccessibility), אז על איזה סוגי מוגבליות . . .  זאת אומרת, המוצר שלכם, החברה שלכם - במה?  איפה הפוקוס? גם מבחינת לאיזה סוגי מוגבליות אתם פונים - או יכול להיות שלהכל -  וגם מבחינת ה-Life Cycle של המוצר -  כלומר, לאיזה פרסונות בתהליך פיתוח התוכנה אתם פונים?
    • (אסף) אוקיי, אז בואו - אפשר לצייר את זה בעצם בצורה כזאת: נגיד שאתה . . . תדמיין שאתה בנק. תדמיין שאתה Wiz  . . . דמיין שאתה הבנק, אוקיי? אולי זה כבר אותו דבר . . .
    (אורי) . . .   תדמיין שאתה הבנק של Wiz . . .
    • (אסף)  דמיין שאתה הבנק, אוקיי? אולי זה כבר אותו דבר . . . זה נשמע לי כיף להיות בכל הכיוונים . . . - ויש לך לקוחות. 
      • עכשיו, אתה רוצה להנגיש את האתר של הבנק שלך לכל הלקוחות - חלקם עם בעיות קוגניטיביות,  חלקם - יש להם לקות ראייה,  חלקם - יש להם לקות-שמיעה.
        • חלק משתמשים באפליקציה בטלפון,  חלק משתמשים באפליקציה או באתר במחשב . . . .
      • ולך מאוד מאוד קשה למפות את כל הבעיות שלך, לתעדף בין בעיות הנגישות או בכלל אפילו לדעת מה הבעיות שקיימות.
    • כאן Evinced נכנסת: Evinced עוזרת למפות את הבעיות.
      • אנחנו לא פותרים את הבעיות עבור הלקוחות, אנחנו לא נותנים איזשהו Plug & Play, פתרון כזה, אלא אנחנו בעצם נותנים טכנולוגיה שעוזרת לך.
    • אחד -  למפות את הבעיות  באפליקציה או באתר הקיים שלך, כדי לדעת איפה הבעיות הנגישות שיש לי.
      • יש לך - שוב, אתה בנק, מזל טוב -  יש לך עשרות-אלפי עמודים עם כל מיני טפסים והמון המון דברים -  אתה לא יכול לבדוק את זה בצורה ידנית, פשוט זה לא Scalable-י. 
      • יש חברות שעושות Auditing ידני לנגישות -  זה לא Scalable-י אם יש לך כל כך הרבה עמודים.
      • גם יותר מזה - עשית עכשיו תיקון קטן?  תבוא שוב ותעשה עוד Audit ידני . . .  עשית Refactor,  החלפת את הצבעים של הלוגו? עוד פעם. המון כסף, המון המון זמן.
      • אז כאן אנחנו נכנסים לתמונה,  ובכל ה-Lifecycle של המוצר - כי בעצם אחד הדברים ש...  אחת המסקנות הייתה שזה לא מספיק לעבור רק על מוצר מוגמר.
        • בסוף אנחנו מפתחים ואנחנו יודעים איך מפתחים עובדים.  כלומר אני פתאום מפתח Frontend - אם תיתן לי Bug אחרי שכבר שמתי את המוצר ב-Production,  זה יהיה לי נורא נחמד אבל חבל לי על זה שהם יעירו אותי בלילה,  כן? אני אוהב לישון, בגדול די אוהב לישון . . . 
        • אני מעדיף למצוא את ה-Bug ב-Unit Test לפני, או ב-End-to-End Test,  או אם אפשר אפילו לפני שזה מגיע, לדרישה למצוא את ה-Bug על גבי האפיון ב-Figma - אני מעדיף שלפני שהדברים נכנסים “לכבשן הדפוס” של ה-R&D,  עוד במעבר הזה בעצם כש-Product מורידים איזושהי דרישה או כשהמעצב מעצב איזשהו משהו, שיהיה לו פידבק לדעת האם הייצוב שעצבתי הוא נגיש באיזושהי מידה.
      • אז בעצם Evinced נותנת סט של מוצרים.
    (רן) כלומר - פונט קטן מדי, ניגודיות-צבעים לא נכונה, אולי כפתור קטן מדי, שקשה ללחוץ עליו . . .  כאלה דברים שאפשר לגלות בשלב ה-Figma. כמובן שאפשר לגלות גם אחר כך, אבל זה פשוט יהיה יותר יקר לתקן את זה אחר כך. 
    • (אסף) כן, אז יש פה . . . אפשר כבר לעשות קפיצת-ראש טיפה על, באמת יש את הדברים ה...  כמו שאמרת, ניגודיות צבעים וגודל פונטים ודברים כאלה.
    • יש דברים שהם קצת יותר עמוקים בשביל...  למשל, אפילו יש סמנטיקה, כן? מי שבקהל עשה Frontend אי-פעם, יודע שאפשר לבנות עולם שלם באמצעות -ים . .   כן, זה אפשרי, אתה יכול...   יכול להיות כל דבר.
      • זה מה שנחמד בFrontend - וזה מה שנורא בFrontend. 
    (רן) זה שיפור לעומת טבלאות, כמובן . . .   
      • (אסף) נכון, נכון, גם כזה יצא לי לעשות . . .  אתה יכול לעשות את כל האתר עם -ים -  אבל הבעיה זה שטכנולוגיה שהיא יעודית לנגישות - למשל קורא-מסך שיכול להקריא את התוכן של המסך, להקריא אותו למישהו שלא יכול לראות, משתמש באודיו.
        • אז הוא לא יכול לדעת למשל מה זה כותרת או מה הוא החלק המרכזי,  מהו ה-Main Section או מהו ה-Header. 
        • אם משתמשים בסמנטיקה, אז האמצעים האלה יכולים לעבוד בצורה הרבה יותר טובה, והמעצב - אם הוא משתמש ב-Plugin שלנו,  Plugin אחר ל-Figma שעוזר בנגישות, הוא יכול, כבר כשהוא מוריד את הדרישה לפיתוח, להגיד להם “תקשיבו, שימו לב, הדבר הזה ב-HTML הוא Header,  זה Main Section,  זה Footer”.
        • ובעצם כל התהליך הוא הרבה הרבה יותר Accessibilie במהות שלו.
    (אורי)  אז זה משהו בין . .   או בוא נגיד ככה - הפתרון הוא משהו בין Design System שעוזרת למעצב להוריד  Design Items שמראש הם...  אתה מהנהן . . .
    • (אסף) אני מהנהן למיקרופון, כן . . . 
    (אורי) . . .  אז זה ב-Accessibility - אתה צריך להנהן בקול . . .  אז זה משהו כמו Design System ביחד עם Unit Test, שידאגו אחר כך  שהדברים שומרים על ה-Accessibility?
    • (אסף)  אז בעצם אנחנו לא בונים את הDesign System,  אבל לכל חברה יש לה את ה-Design System שלה. 
    • אנחנו יכולים לדעת להגיד “תקשיבו אתם יכולים להריץ פה סט של בדיקות,  סט של כלים, על ה-Design System שלכם. 
    • אנחנו ניתן לכם
      • אחד - אינדיקציה מה הבעיות, אם זה נגיש או לא נגיש.
      • ודבר שני -  אתם רוצים עכשיו להעביר למפתחים. בוא נעזור לכם לעשות את התיוגים על גבי ה-Figma, שתוכלו  להעביר את המידע למפתחים. 
    (אורי) אוקיי, את המידע למפתחים - כדי שכלי-הנגישות ידעו “לאכול” את הדברים האלה יותר טוב.
    • (אסף)  בדיוק, נכון.

    09:04 עולם של מוגבלויות שונות
    (אורי) עכשיו, יש לי עוד שאלה, כי נגישות - מוגבלויות - זה סט אדיר של מוגבלויות.  כל מי שמתעסק עכשיו, נגיד, בשיקום פצועים סביב המלחמה, יודע שאין הרבה פתרונות דומים אחד לשני.איפה אתם . . . כאילו, אתם עובדים באיזשהו 80-20? מה הגישה ל-variety העצום הזה של מוגבלויות?
    • (אסף)  אוקיי. בעצם, זה קצת זורק אותנו לכיוון אחר, של בוא נדבר רגע מה זה בכלל בעולם? מה זה אומר “מוגבלויות”?
    • אז בעצם ארגונים כמו OECD או כמו האו״ם או כמו מכוני מחקר בישראל,  מנסים למפות ובעצם להגיד מה אחוז האנשים בעולם שיש להם איזשהו Significant Disability, אוקיי?
      • שזה אומר, באמת, זה יכול להיות משהו שהוא נוירוטיפיקלי (Neuroatypical),  יכול להיות שזה בעיה פיזית של טווח תנועה - בידיים, ברגליים,  נכות שאפשר לראות.
      • זה יכול להיות שזה לקות-ראייה, יכול להיות שזה לקות-שמיעה, יכול להיות שזה דיסלקציה ברמה של... 
    • זאת אומרת, גם זה משהו שלמשל אם אתה כותב טקסט - אז בשביל שהוא יהיה באמת נגיש, הוא לא יכול להיות במשלב שפה מאוד מאוד גבוה,  כן?  כי אתה מפספס את הקהל שלך. אז זה גם.
      • או שהוא יהיה מאוד מאוד מסובך או שיהיו משפטים מאוד מאוד ארוכים . . .  גם זה,  זאת אומרת - יש הרבה מאוד סטנדרטים.
      • אם זה נגיד בסטנדרט הגבוה של מה זה נגישות, אבל ברמה יותר נמוכה. יש הרבה מאוד סוגים, הרבה מאוד סוגים של מוגבלויות.
    • בסוף, אנחנו מתמקדים במה שהתקנים מתמקדים בהם, אוקיי?  יש בעצם תקנים בעולם, שבעצם התקנים הם . . .
    • התקן שקוראים לו WCAG - זה בעצם ה-Guideline העולמי של ה-WSPC, שהגדירו את התקנים או את התתי-סעיפים לנגישות.
      • כשגם שם יש להם סעיפים של קוגניטיבי ושל שמיעה וראייה . . .
      • ובגדול, מנסים לקחת את הדרישות - את הדרישה האמורפית של “שהאתר שלך היא נגיש”,  שזו דרישה שהיא כאילו מאוד מובנת אבל מצד שני,  מה אני עושה עם הדבר הזה?
        • זה כמו “תעשה את הדבר הנכון” - אוקיי, זה נהדר. מה הדבר הנכון?  זה מסובך.
      • אז הם מנסים להוריד את זה אל הקרקע כמה שאפשר. 
    • אז כאן יש לך למשל יש דברים . . .  אתה יכול להגיד סעיפים מסוימים שהם ממופים למוגבלות מסוימת.
      • למשל, היכולת להגדיל ולהקטין פונטים זה כנראה קשור לראייה, אוקיי?
      • היכולת שלך עכשיו שיהיה לך טקסט אלטרנטיבי - טקסט אלטרנטיבי  לכל תמונה - אז גם זה יכול להיות קשור,  למשל,  למישהו שבכלל לא רואה.
    • יש דברים, למשל, לצורך העניין, שמיועדים דווקא לטווח תנועה.
      • למשל, היכולת שאתה תוכל, באתר שלך, לנווט רק באמצעות מקלדת - למה זה בעצם נחשב נגישות? יש לכם איזשהו הימור?
      • (רן) יש כאלה שקשה להם להפעיל עכבר או Trackpad . . .  נגיד, רעד באצבעות או דברים כאלה.
      • (אסף)  נכון,  בדיוק. אז בעצם יש החל ממישהו שבאמת יש לו או לה טווח תנועה מוגבל ולא יכול.ה למשל להזיז עכבר
        • או שמשתמש בטכנולוגיה יעודית - בדברים שרואים הרבה פעמים בפרוייקטים מרגשים של בית החולים או של שיקום פצועים,  שתפרו איזשהו משהו שבסוף יכול כן לשלוט באיזושהי מקלדת -  אז בסוף גם כאן,  אי אפשר לעשות Drag על גבי כל המסך . . .  אתה יכול להקליד על משהו שדומה ל-Tab ולעבור... 
        • (אורי) . . . כמו מפתח שעובד עם Emacs ויותר מדייק, נכון?
    (רן) בוא, בוא - סיפור אישי רגע.  אבא שלי, שיבדל לחיים ארוכים, כבר מאוד מבוגר, ופעם שאני ניסיתי ללמד אותו לעבוד עם מחשב. כל פעם כשהוא מנסה לעשות Double-click אז דברים נגררו - הקליק מתחיל במקום אחד,  נגמר במקום אחר - וזה נגרר. אז בסוף הבנתי שפשוט כדי לעשות  Double-click, אני צריך ללמד אותו ביד אחת, יד שמאל, להחזיק את  העכבר וביד ימינה לעשות קליק.  זאת אומרת, ה-Double-Click הזה הוא תמיד עם שתי ידיים - אחת מייצבת את העכבר והשנייה עושה את הקליק, ורק ככה הוא הצליח באמת לעשות שני קליקים באותו מקום. אז כן - אני לגמרי מכיר את הקושי הזה אצל מבוגרים, אבל אני מניח שלא רק.
    • (אסף) כן, אז זה סיפור נהדר.  יש עוד עולם שלם בעצם בתוך הדבר הזה של...  דיברנו על 17% -  בעצם זה המספר, של אנשים שיש להם מוגבלות או איזושהי Significant Disability, שבעצם דרושים וזקוקים להנגשה כלשהי.
      • לא הכל כמובן בעולם הדיגיטלי -  חלק מזה גם רמפות, למשל.
        • העולם הפיזי צריך לא פחות עבודה מאשר העולם הדיגיטלי.
      • כמו רמפות, כמו רוחב דלת בכניסה לשירותים.
    • דווקא לזה יש תקנים יחסית מסודרים. הם לא בכל מקום, הם לא נאכפים בכל מקום - אבל הם קיימים.
      • כי בסוף, כשאתה בונה בניין, אתה צריך לדעת מה לעשות.
      • תוכנה - יותר בלגן.

    14:22 איך הגענו לכאן?
    (רן) בוא ניקח רגע רברס [חריקת תקליט?] - איך בכלל הגעת לעולם הזה?(אורי) . . .  בשביל זה אנחנו פה, לא? (רן) כן, שזה גם אפקט ויזואלי וגם קולי . . .  אז איך הגעת לעולם הזה של נגישות? זאת אומרת - מה שלח אותך לשם?מה הייתה האיטרציה הראשונה שלך בעולם? 
    • (אסף) אז אני הגעתי לעולם הזה ממש ממש במקרה. בחברה הקודמת שעבדתי בה, עבדתי בחברה שעשתה - אני משתדל לבחור חברות שעושות דברים, שאני לפחות מאמין שהם עושים דברים טובים - עבדתי בחברה שעשתה טכנולוגיה לבתי ספר.  
      • ואחת מהדרישות היו שעכשיו בשביל לעמוד באיזשהו מכרז של משרד חינוך כלשהו באיזשהו מדינה בדרום אמריקה, אנחנו צריכים להיות נגישים. 
        • זאת הייתה הדרישה, כן? “תעשה שהמערכת תהיה נגישה”.
      •  שאלתי את המנהל מוצר, שנתן לי את הדרישה, אמרתי “אוקיי בוא...  זה נשמע לי ממש טוב, כאילו, אני ממש רוצה. מה זה אומר בעצם?”
        • הוא אמר לי “מה זאת אומרת? שיהיה נגיש. אין פה . . .  תעשה שיהיה נגיש, שיוכלו להשתמש”.
      • הבנתי שמשם לא . . . לא יצאתי משם עם הרבה מאוד מידע, אבל זה הוציא אותי למסע, שהתחלתי לקרוא וללמוד.
      • קראתי המון המון המון דוקומנטציה (Documentation) באינטרנט, ואחרי איזה שבועיים-שלושה, אמרתי שסיימתי.
        • הוספתי בגדול Alt-Text לכל התמונות, והרצתי איזשהו כלי של Google ובזה סיימתי. 
      • כמובן שהאפליקציה עצמה לא הייתה נגישה בשום צורה, גם אחרי שסיימתי את זה, כי פשוט אמרתי לכל התמונות - ראיתי תמונה, אז אמרתי טקסט אלטרנטיבי של התמונה? בוא נכתוב “Image", כי זה מה שזה ומאיפה אני יודע מה התמונה? אני לא אעבור עכשיו על כל התמונות באתר . . .
    • אז בעצם, ההיכרות הראשונה שלי הייתה... 
    (רן) כלומר - זה לא אתר תוכן, זה אתר שבו התמונות הן דינמיות, אז אתה לא יודע מה הולך להיות בתוך התמונה - אז אתה רק כותב “זה Image” . . .   עכשיו, מי שקורא ומשתמש בקורא-מסך - זה לא עוזר לו שאתה אומר שיש שם Image, הוא רוצה לדעת מה יש בתוך ה-Image . . .
    • (אסף)  נכון, אז זה באמת מה שלמדתי מזה.
    • אחד - שיש פה בעיה - בעיה מהותית - בדבר הזה, שאני בתור מפתח, כשאני גדלתי ב-QA ובאוטומציה . . .
      • בשביל  שאני אהיה מבסוט מהקוד שלי, אני חייב איזשהו טסט שאני אוכל להריץ שאני אדע שהוא עובר.
      • ובנגישות - זה לא המצב . . .
    (רן) כלומר - הטסט עבר, אבל זה לא מעיד על האיכות של התוצאה . . . 
    • (אסף) זה פשוט שהטסט הוא פשוט לא נכון . . . 
    • זאת אומרת, דבר ראשון לבדוק . . . מי שהוריד את הדרישה לא יודע מה אני רוצה.
      • ואני לא מאשים שהם לא ידעו, כי  זה באמת תחום שהוא גם ענק וגם הוא מאוד מאוד זר.
      • כלומר, התחום הזה הוא באיזשהו מקום הוא קצת כמו ש-Security היה לפני נגיד 10 שנים . . . 
      • (אורי) Security, Privacy  . . . 
      • (אסף) נכון, בדיוק.
      • (אורי) Privacy עדיין הוא בעניין . . .
    • (אסף) כן. אז זה באמת אותו דבר - שיש לך איזושהי תקינה. GDPR, כמו שאמרת, דוגמא מעולה.
    • כש-GDPR, למשל, עד שהאיחוד האירופאי לא אכף את זה, ידעו ש”צריך Privacy”.
      • כולם אמרו “אנחנו באמת . . . Privacy?” או משהו כזה - “אנחנו שומרי מידע”,  שוחרי-משהו . . .
    • אבל עד שהבינו שזה ממש משהו שחייבים עכשיו לדעת את זה - ואז אנשים התחילו ללמוד.  
      • כי בסוף מתכנתים או אנשי-מוצר יודעים ללמוד גופי-ידע חדשים, יודעים ללמוד דברים שהם לא יודעים.  
    • אבל מה שקורה זה שבעצם עכשיו אנחנו עדיין לא שם, כי מה שקורה היום זה שלאט-לאט חברות מבינות שהן צריכות להיות יותר נגישות
      • עדיין לא לגמרי בטוחות מה זה אומר . . . 
    • כאן בעצם אנחנו מנסים להשתלב בתור חברה, בדבר הזה, כי באמת יש עכשיו רגולציה שמשתנה באירופה.
      • לצורך העניין, ב-2025 ביוני . . .  אנחנו ב-2025?
      • (רן) כרגע? כן . . . 
      • (אסף) אלוהים ישמור . . . 
      • (רן) יכול להיות שמקשיבים לזה ב-2023,  2020, מי יודע . . . [Great Scott]
      • (אסף)  בדיוק . . .  אז ביוני אמורה להיכנס בעצם החוק באירופה, שאמור להתחיל לאכוף את התקן של הנגישות.
        • שאומר שחברות גדולות, החל מגודל מסוים, חייבות ש-Asset-ים שלהם יהיו נגישים.
      • וכאן זה קצת יותר ספציפי מאשר “יהיו נגישים” וכזה עושים מרכאות באוויר - “נגישים” - וזה אומר משהו
      • אלה שממש אומרים מ- WCAG 2.2, סעיף . . .  “צריך למלא את סעיף 1,2,3 ולעמוד בתקן של AA",  כן?
        • לא ניכנס פה עכשיו למה בדיוק WCAG אומר, זה עולם שלם, אבל זה כן  מוגדר בצורה יותר טובה.
        • וברגע שדברים מוגדרים, אז לי - בתור מתכנת - הרבה יותר קל לדעת אם זה עובד או לא עובד.

    19:15 כלים שכדאי להכיר
    (רן)  כן, אז אני מניח שמי שהקשיב לדוגמא עם התמונות, שעליהן שמת Tag של “Image”, שואל את עצמנו “רגע, אבל הטכנולוגיה של היום כבר מזמן תפסה, והיום יש AI שאומר לנו על כל תמונה מה הוא רואה” - אז למה צריך עדיין נגישות? כלומר, האם ה-AI והמ-Machine Learning לא ממלא את כל החלל האדיר הזה, שהיה קיים שם פעם? אז אולי נוכל לחזור לזה עוד מעט - אבל אני רק רוצה לשים פה את הנקודה ולחזור רק רגע אחורה. בעצם, אחד הדברים שאמרת זה שכמו שיש Unit Testing לפונקציונליות - או שאולי לא אמרת את זה בדיוק, אבל אני אומר את זה במילים שלי - כמו שיש Unit Testing לפונקציונליות, כך צריך להיות גם Unit Testing לאקססיביליות (Accessibility), ואתם  מייצרים כלי כזה, ואולי יש גם כלים אחרים.אז קודם כל, אני אשמח אם תוכל לרפרר (Reference) לכמה דברים: זאת אומרת, אם אני היום מפתח Frontend, איזה כלים ב-Ecosystem כדאי שאני אכיר? הזכרת מקודם את כלי הבדיקה של Google, שבדיעבד מסתבר שהוא לפחות אז לא היה כל כך טוב, אבל מה קיום היום? זאת אומרת, איזה סט של כלים כדאי לי להכיר, כדי שלפחות אני אתחיל להיות “באזור-חיוג” של אקססיביליות (Accessibility)?  אולי לא מצטיין, אבל לפחות אני אתחיל ללכת לכיוון הזה . . .
    • (אסף) אוקיי, אז אני אתן ארבעה כלים.
      • אחד מהם הוא כלי . . . אחד מהם הוא ספרייה ושלושה הם כלים שנמצאים At Your Disposal בכל רגע נתון אחר.
    • אז נתחיל דווקא מהכלי, מהתוכנה - כי זה מתכנתים אוהבים. להריץ קוד זה כיף.
    • אז כלי אחד בעצם זה Axe, שזה כלי חינמי שנותן איזושהי בדיקת נגישות די בסיסית. 
      • (רן) איך קראת לזה? A-X-E, כמו גרזן?
      • (אסף) כן Axe. אוקיי, אז אחד - הוא חינמי, הוא נחמד, הוא נותן איזשהו כיסוי בסיסי למשל לדברים סמנטיים.
      • למשל, אני אגיד לכם שיש פה Inage שאין לו Alt.
        • זה במקרה שלי - הרצתי את זה, יש לי Image שאין לו אין לו טקסט אלטרנטיבי, אז  עכשיו אני אריץ את זה שוב, אני אראה שיש לי עכשיו טקסט אלטרנטיבי - ניצחתי!  
      • (רן) דרך אגב - זה Web. יש גם משהו בדומה לאפליקציות?
      • (אסף)  לאפליקציות אני לא מכיר. אני מניח שיש דברים אחרים, אבל זה  . . . . יש את זה בחברה, זה לא בעולם שלי.
    (אורי) כאילו, JavaScript - אתם תסתכלו על ה-HTML שהוא Generated אחרי, או . . .
    • (אסף) זאת שאלה טובה.  יש הרבה מאוד . . . יש הרבה כלים שמסתכלים. 
    • בעצם, אחד מהמוצרים שאנחנו מפתחים זה Chrome Extension, שמסתכל על התוצר הסופי - בסוף מה שמרונדר (Rendered) על המסך.
      • אגב, End to End יכול לעשות אותו דבר. 
    • אני יכול להגיד שמבחינת הפיתוח שלנו, איך שאנחנו עובדים בפנים, בגלל שכמו שאתה...  אם אתה עכשיו חברת Security, והאקרים יפרצו אליך - לא חשוב שמות שהיו לפני איזה חודשיים . . . -  זה לא טוב ל-PR, זה ממש ממש לא טוב לך.
      • אם אתה חברת Accessibility והמוצרים שלך לא נגישים - זה לא טוב . . . 
      • זה לא טוב ל-PR,  זה גם לא טוב למוצר - כי אתה באמת רוצה בסוף שכולם יוכלו להשתמש במוצר.
      • (רן)  Eat your own yummy dog food . . .
      • (אסף) לגמרי . . .  עושים את זה פעמיים ביום ואחד לפני השינה . . .
    (רן) אז גרזן (Axe) - דיברנו על הגרזן, מה עוד?(אורי) . . .  שהוא יכול, בשימוש לא נכון, להביא בעית Accessibility . . . 
    • (אסף)  זה נכון, זה נכון . . .  חלק מהעניין פה זה שבעצם כלי אוטומטי היום הוא לא Good enough.
    • זאת אומרת, מי שעושה את הצעדים הראשונים שלו בעולם הנגישות, אז יש שלושה כלים שאני ממליץ לעשות אותם, בסדר הבא.
    • דבר ראשון, לוקחים את העכבר הווירטואלי שלנו, חותכים לו את הכבל או מכבים לו את הצ'ופצ'יק הקטן הזה בעכבר של ה-Mac - ופשוט משתמשים רק במקלדת.
      • אם בניתם אתר או אפליקציה ואתם יכולים להשתמש בה רק באמצעות ה-Keyboard, זה כבר סימן טוב.
      • השיבו לנו בתגובות . . .
      • (רן) אם הצלחתם . . . 
      • (אורי)  ולא להשתמש בעכבר כשאתם משיבים . . .  
      • (אסף) לא להשתמש בעכבר - כי זה אומר לפחות שיצרתם בזה משהו שמישהו שאין לו טווח-תנועה יוכל להשתמש באתר. 
    • עכשיו, יש פה גם . .  גם זה מתחלק קצת לשני חלקים, כי יכול להיות שאתה תוכל, נגיד, לעבור בין הכפתורים, אבל אין לך שום אינדיקציה על האתר.
      • כשאתה עובר על הכפתור, אז אין לו פוקוס או אתה לא רואה את הדבר הזה.
      • אז בעצם זה לא מספיק שאתה רואה למטה כזה שה-URL משתנה כשאתה עובר בין לינקים, צריך שגם תוכל לראות את הדבר הזה, אחרת זו חוויה מאוד מאוד מוזרה. 
    (רן) זה בגדול להגדיר Tab Index, ולהגדיר אותו בצורה הגיונית,  נכון?  לפי ה...  
    • (אסף) בגדול כן, אבל עכשיו גם אפשר לקחת את זה גם לכיוון אחר.
    • בוא נחשוב למשל שאתה בונה עכשיו אתר חדשות,  אוקיי? האם משתמש-מקלדת עכשיו הוא צריך באמת לעבור עם הטאבים בשביל...  
      • מה שמעניין אותו זו הכתבה באמצע,  עכשיו עד שהוא הגיע אליה הוא צריך לעבור 80 טאבים - לעבור חדשות ספורט, כלכלה, רכילות . . . לעבור על כל הבאנרים, ואז להגיע לכתבה האמצעית.  האם זה הגיוני?
      • זאת אומרת, אתה צריך לחשוב פה ממש על ה...  אני אומר זה בתור משהו שנותן עוד נקודה למחשבה.
      • אתה יכול לחשוב ממש על ה-Flow-משתמש. 
    (אורי) ה-Usability, בסוף. 
    • (אסף) נכון, בסוף זה Usability. אפשר להסתכל על Accessibility בתור בתור תת-נושא של Usability - באופן כללי “שימושיות”. 
      • גם הרבה מהדברים של . . .  אנחנו עושים פה פינג-פונג בין המון נושאים,אבל אחלה . . .
    (רן) אני למשל - כשאני כותב, כשאני עושה Code Review, אני משתמש ב-GitLab כרגע.  אני כותב את הטקסט ואני רוצה לעשות Tabו-Enter - כאילו Save.  אבל לא - הם מכריחים אותי לעשות ארבעה טאבים - 1,2,3,4, ואז Enter. אז אני כבר התרגלתי, אבל זה מעצבן. למה שזה לא יהיה ה-Tab הראשון?  זו כאילו הפעולה הדיפולטית (Default), זה הכי הגיוני שזה יהיה הראשון . . .
    • (אסף) זה מאוד מאוד מעצבן . . . כשאני צריך למלא טפסים, ואני לא יכול לעבור עם Tab - זה מחרפן אותי.
      • כשאני רוצה להזמין כרטיס טיסה ואני לא יכול לעשות את זה עם המקלדת, כי אני צריך  לחכות שכל ה-Loader-ים .  .
      • ואז בכלל, אתה נגיד באיזשהו מקום ואז יש Loader - ואחרי  שה-Loader נגמר אז הפוקוס שלך - אתה נמצא באלמנט אחר בכלל. 
      • זו בעיית נגישות - אבל זו בעיית Usability גם לאנשים שהם לא, בגלל . . .
      • (רן) כשאני מתלונן אז אשתי קוראת לי פיינשמנקר, שתחייה . . .   אבל עכשיו אני אגיד לה “לא! זה אקססיביליות!” אני לא פיינשמייקר, זו אקססיביליות!
      • (אסף) מה שאתה בעצם רק רוצה זה לעשות את עולם מקום טוב יותר . . .
      • (רן) . . . וגם אני חושב על האחרים.
      • (אסף) כן, אבל אפשר גם להסתכל על דוגמא אחרת. למשל, בוא ניתן עוד אז דבר אחד
    • אז "לחתוך את העכבר”.  דבר שני - Zoom.  כלי שקיים בכל מקום - בטלפון, במחשב . . .
      • וגם פה, בעצם, ההגדרה “הקרה” זה שאתה צריך לתמוך בעד פי-ארבע (x4) או משהו כזה.
      • אבל אפילו אם תבדוק בפי-שתיים (x2) ותראה שכל האלמנטים במסך זה סבבה,  אז זו כבר התחלה.
        • טכנית - לראות שיש לך Read Flow או שאתה רספונסיבי (Responsive) ב-Design שלך.
    (רן) פעם היו Design System שלא היו מאפשרים Zoom, זה ממש מעצבן . . .
    • (אסף) נכון, זה קצת מעצבן אפילו כמו אתרים שלא מאפשרים לך לעשות Inspect - אבל בסדר.
    • אבל גם פה, זה דוגמא למשל של פיצ'ר של נגישות - אני חוזר ל-17% שאמרנו קודם.
    • אז 17% זה אנשים שבעצם רשומים באיזשהו מקום או שהם מצהירים על עצמם או שמישהו הצהיר עליהם שיש פה איזשהו Disability.
      • אם עכשיו אני הולך ואני אגיד לאמא שלי “שרה, היי - יש לך איזושהי בעיית ראייה?” היא תגיד “לא, אין לי שום  בעיית ראייה!”
      • אבל אם אני אסתכל בטלפון שלה נראה שה-Zoom שלה הוא פי 8 . . .
      • כלומר, זה גם אומר על המספר שהוא נמוך. 17% הוא נמוך בהמון ממי שבאמת צריך - מהמדווחים.
      • וגם הפיצ'רים של נגישות, קצת כמו ה-Tab Index שאמרנו קודם או היכולת לעבור באמצעות מקדלת בין Form-Fields שונים, קצת כמו ש-Zoom . . . 
    • שוב, אני באמת, אין לי משקפיים - בינתיים הגנטיקה, משהו אחר, בפודקאסט אחר נדבר על הגנטיקה המשפחתית שלי - אבל אני משתמש בדרך כלל בזום 120. 
      • כי פשוט יותר נוח לי לראות ככה וזה באמת מאוד מאוד נחמד שאתרים “מתנהגים יפה ב-Zoom”.
      • זה בכלל - כל הכלי זה הוא נולד בשביל נגישות, אבל משתמשים בו ומי שנהנה ממנו זה עוד אנשים. 
    (רן) אז כלומר כלי אחד: כבו את העכבר, תראו שאפשר להשתמש באתר שלכם או whatever זה מה שאתם עושים בלי עכבר. כלי שני זה “תעשו Zoom ותראו שזה עדיין נראה סביר ואפשר להבין וה-Flow של האלמנטים נכון, אוקיי.  השלישי?
    • (אסף) הכלי השלישי הוא כלי שהוא בעצם הוא קצת יותר למתקדמים - לא מבחינת הצורך שלו, אלא מבחינת היכולת לתפעל אותו. הכלי הזה - קוראים לו “קורא מסך”.
    • קורא מסך - מי שיצא לו להשתמש או לא - מי שיצא לו להשתמש, זה בעצם כלי שיש אותו Built-in למשל ב-Mac יש Voice-Over,  ב-Windows צריך להתקין,  יש NVDA ויש גם משהו שהוא Built-in אולי של Windows אבל פחות פופולרי.
    • ומה שהוא עושה בעצם - אני אסביר דבר ראשון מבחינה מוצרית מה הוא עושה - הוא מקריא לך את מה שיש באתר שלך. אתה נכנס לאתר והוא מתחיל להקריא את הכותרות ואת הלינקים ויכול לקריא לך את  כל הכתבות . . .
      • ואתה יכול להגיד לו “תתקדם קדימה” ו"אחורה”.
    (אורי)  גם בדברים שהם Form-ים?  כאילו, הוא יגיד לך איפה אתה נמצא ב-Form, איך נראה...  
    • (אסף) כן, אז הוא יכול להגיד לך הרבה מאוד דברים. 
    • טכנית, איך הוא עובד בעצם? הוא מתחבר למשהו שקוראים . . . נעשה צלילה רגע:  מה הוא “דפדפן”?  אוקיי, אז בעצם בדפדפן, הוא בונה מה-HTML שלושה דברים:
      • הוא בונה לך את DOM, את ה-DOM Tree שלך,  הוא בונה את ה-CSS-Tree שלך והוא בונה את ה-Accessibility-Tree שלך.
      • הוא בעצם בונה איזושהי מפה של איך נראית תמונת הנגישות של האתר שלך,  אוקיי? 
    • עכשיו, למשל, הוא אומר לך “אוקיי, ראית שיש פה Section שהוא Header?  אז מבחינת נגישות זהHeader”.
      • אז אם עכשיו, הכלי שלי, למשל,  הכלי של הקורא-מסך, הוא ייתן לך Shortcut של “בוא תקפוץ ל-Header”,  אז בשביל שזה יעבוד, אתה, כשאתה בונה את האתר, אתה צריך לסמן אלמנט בתור-Header,  אוקיי?
      • או אם אתה רוצה שלמשל כלי נגישות ידע להציג למשתמש או להשמיע למשתמש את רשימת הלינקים שיש באתר . . .
        • כי זה מאוד-מאוד נחמד - אתה אומר, יש לי פה עכשיו איזשהו . . .  אתה נכנס ל-eBay?  אז אתה מוצף בהמון מידע. להתחיל להקריא את הכל או לראות את הכל - זה מאוד-מאוד קשה. 
        • אם עכשיו אתה יכול לקפוץ בין Section-ים רק של כל המוצרים ולהקריא את ה-Title שלהם,  אתה צריך לסמן את זה בצורה מסוימת. צריך לסמן את הלינקים שיהיו לינקים אמיתיים ולא סתם...
    (רן) זאת אומרת - Information hierarchy, אבל לצורך האקססיביליות (Accessibility). 
    • (אסף) נכון, בדיוק, שבעצם זה הסמנטיקה.  
    • אז אולי Key Takeaway שיכול להיות מהדבר הזה למפתחי ה-Frontend הקדושים שבקהל - תחזרו למקורות. 
      • הסמנטיקה של HTML היא משהו שנותן לנו נגישות כמעט בחינם.
    (רן)  אני זוכר את הוויכוחים שלי עם מפתחי ה-Frontend -” זה , לא, זה ; לא, זה B, לא, זה P”  . . .
    • (אסף)  אז נכון.  זאת אומרת,  אם זה או - לא נרד לדקויות האלה, אבל או - תריבו.
      • אבל אם יש לינק שמוביל לעמוד אחר, הוא צריך להיות...  הוא צריך להיות Anker,  כן?
        • או אם אתם יכולים לעשות Button  שיש לו Raw Link . . . אפשר לעשות קומבינות כאלה.
        • אבל אם זה לינק צריך להיות A, אם זה כפתור שעושה משהו בתוך העמוד,  צריך להיות Button.
    • מה שהתחלנו בהתחלה - יכול להיות כל דבר - אתה יכול לגרום ל- שיתנהג כמו כפתור, אתה יכול לגרום ל- שיראה כמו טבלה של מניות.
      • אתה יכול ליצור טבלה שלמה רק באמצעות -ים.
      • (רן)  אל תעשו זאת, בבקשה, למקרה שפספסתם את הUnderstatement . . .
      • (אסף) נכון, כן - אז  Understatement צריך להיות Overstated . . . צריך להתחבר לדבר הזה.
      • וכן, זאת אומרת - צריך להכיר להכיר את הכלים שנותנים לנו באמת נגישות נגישות בחינם.

    31:54 על Accessibility בהשוואה ל-Security
    (אורי) נגעת בכל מיני דברים - לחתוך את העכבר . . . הכלים הראשונים - Zoom וזה - אוקיי, אני עושה פעולה פשוטה וזה מכניס אותי לעולם של מישהו עם Disability. אני מיד רואה את הבעיה.כשהגעת למקום של קורא-מסך,  אז אני אמרתי לעצמי “רגע, אם אני עכשיו שומע קורא-מסך,  זה לא אומר לי כלום”. אני צריך “לחיות את העולם” של מישהו שהוא . .  שיש לו לקות מסוימת ושהוא רגיל לקוראי-מסך, כדי להבין שיש בעיה בקוד שלי כשהקורא-מסך קורא אותו.אחרת, ועשיתי לזה קצת Rollback בראש,  וזה הזכיר לי את העניין של Security לדוגמא ו-Privacy וכל הדברים האלה -  שבהם המתודולוגיה שנגיד כצוות פיתוח שלקחנו כדי להתמודד עם זה, זה בוא לא נלמד את המפתחים להיות מומחי Security, אוקיי?  אנחנו נבקש מהמומחי Security שלנו  לבנות לנו את המערכות ששומרות על הקוד שיהיה Secured, ומריצות את הטסטים הנכונים והם כבר יקפיצו כשיש בעיה.(רן) מה שנקרא Empowerments . . .  זאת אומרת, זה ייתן למפתחים את הכלים שיכולים להשתמש בהם.(אורי) למשל, Security זה Domain שהוא מתפתח כל כך מהר והוא מתפרש למלא מלא דברים שאתה צריך לדעת ולהכיר ולהבין, וכאילו אתה צריך ''לשחות ב-Dark Web'' כל הזמן כדי להבין את ה-Threats הבאים. ובסוף מפתח, כשהוא צריך לפתח Business Logic, הוא לא יכול לעקוב אחרי הדברים האלה.
    • (אסף) אז אני רוצה לענות על זה בשני דברים.
    • דבר ראשון על הנקודה של קוראי-מסך.  אוקיי? לסגור את הנקודה הזאת . . .
    (אורי)  לא, סתם כי אני לא רגיל לשמוע קוראי-מסך אז... 
    • (אסף) כן, ברור. אז אני יכול להגיד לך שכמו כל דבר כמעט בחיים, הוא לא מתחלק לשלוש - אבל יש לו רמות. 
    • לצורך העניין, הפעם הראשונה - אם אף פעם לא פתחת קורא-מסך או בנית אתר או אפליקציה ואף פעם לא פתחת קורא-מסך, הבעיות שאתה תיתקל בהן יהיו בעיות “שקופצות”.
      • תהיה בעיה שאתה פשוט לא מצליח להקריא שום דבר,  או שיש לך למשל Image שקוראים לו  . . .  אתה תראה למשל את רשימת האלמנטים . . . לקוראי-מסך יש איזשהו פיצ'ר שאומר “תראה לי ותגיד את כל את כל הלינקים ביחד” -  ואתה תראה שכולם נראים אותו דבר.  כולם יהיה לינק אחד ...  
      • (אורי) נשמעים אותו דבר. 
      • (אסף) נשמעים...  למה אני אומר “נראים”?  כי לקורא-מסך, יש לו פיצ'ר שאתה יכול להגיד לו “תכתוב לי על המסך”. 
        • בעצם, כשאני בודק על קוראי-מסך, אני הרבה פעמים עושה את זה בלי האודיו - כי בעצם זה מקפיץ לי עם Pop-up כזה, שמראה לי את הטקסט כאילו שהייתי שומע.
        • (רן) . .   זה למעשה “כותב-מסך”, זה לא “קורא-מסך” . . .
        • (אסף) כן, נכון - וזה גם גורם לזה שאני יכול לעבוד עם זה נגיד ב-Open Space, וזה פשוט לא משגע את כולם.
      • ואז נגיד הוא מראה לי את רשימת הלינקים ואני פשוט רואה שכתוב לי לינק אחד, לינק אחד, לינק אחד . . .
        • “אני פשוט לא מבין מה זה הלינקים האלה, בוא נפתור את זה איכשהו”.
        • כלומר, הדברים הגדולים יקפצו עליך. 
    • אחר כך, לגבי אם אתה אומר האם הטקסטים שלי נכונים? האם זה באמת מה שצריך?
      • זה באמת כבר רמה אחרת. אם אתה במקום הזה, אז אתה כנראה מראש יש לך את הבסיס.
      • והרבה פעמים במצב הזה כנראה או שתשתמש בכלים שיודעים לעשות איזושהי סימולציה כזאת, או שיש דברים שבאמת אין להם תחליף, גם עם הכלים האוטומטיים הכי הכי טובים, אין לך תחליף בסוף ללעשות קצת רעיונות משתמשים או להביא Audit.
    • חברות גדולות, אגב, שזה קצת גם לגבי ה-Flow של העבודה וזה גם מתחבר לשאלה השנייה - בחברות גדולות, בכלל איך נגישות עובדת?
      • כמו שאמרת קצת עם Security - יש לך בסוף איזשהו מוקד ידע.  
        • יש לך Accessibility Expert, יכול להיות שיש לך צוות של כאלה . . .
      • היחס, אגב, בדרך כלל בין מפתחים לבין אנשי Accessibility הוא יחס מאוד מאוד נמוך.
        • גם כי יש יחסית פחות כאלה - זאת אומרת, יש מעט מומחים.
        • אבל גם זה פשוט ככה זה . . . והם תמיד מוצפים.
      • בגלל זה גם בעצם כלים אוטומטיים יכולים מאוד לעזור פה - כי שוב, גם ה-Scale פה הוא מטורף.
        • כי אם עשית גיוס ענק, אתה תגייס המון מפתחים - ולאו דווקא תגדיל את הצוות נגישות שלך.
        • גיוס של כסף, הכוונה.
      • (אורי) כן, אתה פשוט מוסיף משימה לצוות Accessibility - “תכתבו אוטומציות” . . .
        • (אסף) כן, לפעמים באמת זה ככה, לפעמים, הצוות Accessibility הוא באמת אחראי לכתוב אוטומציות.
        • אם זה המצב, אז הרבה פעמים . . .
      • אגב, אנשים שמתמחים ב-Accessibility לא דווקא ידעו לכתוב אוטומציה - שוב, כי זה Skill-set שהוא קצת אחר.
        • יכול להיות שזה חבר'ה שמגיעים מכל מיני עולמות - יכול להיות שמגיעים עולם של QA, יכול להיות שזה . . . יש הרבה אנשים בעלי-מגובליות שככה בעצם נותנים את השירות הזה. 
        • לצערנו, יכול להיות שזה גם מה שיקרה פה, בעצם במצב הפקקטה שאנחנו נמצאים בו . . .
    • אבל מבחינת איך שזה עובד, באמת יש בחברות צוותי נגישות - והצוותי נגישות הרבה פעמים נותנים ייעוץ לכל הצוותים.  
    • אנחנו פה מדברים אגב הרבה על הקשר, בעצם על האחריות שלנו למפתח - אבל אני רוצה להגדיל את זה טיפה. 
      • כי לפתור את זה ברמת המפתח זה טוב עד גבול מסוים . . .
    (אורי)  זה גם קצת מאוחר מדי, נכון?  כי אם המעצב יכול לפתור את זה עוד לפני...  
    • (אסף) אני יכול לתת שתי דוגמאות. למשל, ניגודיות צבעים זה משהו שיחסית קל להבין אותו, כי אם אני עכשיו אקח רקע לבן ועשה עליו טקסט אפור בהיר, כנראה שיהיה לנו מאוד קשה להבין מה כתוב שם.
      • אם הלוגו של החברה, שהודפס על נירות מכתבים - ומכתביות, מתנות לילדים, כוסות ובענק כבר על בניין  - והלוגום הזה, יש לו בעיה של ניגודיות צבעים . . .
        • אני, בתור מפתח, הרצתי איזשהו כלי שבודק גם ניגודיות צבעים, וראיתי שיש שם בעיה.
        • אבל אני בתור מפתח לא יכול לשנות את הצבעים. אין לי מה לעשות עם הדבר הזה. 
      • כלומר, אני יכול לגשת עכשיו למעצב, המעצב צריך ללכת למנכ״ל לשכנע אותו, שעכשיו צריך להוציא אינסוף כסף על שינוי של הדבר הזה.
      • כלומר זה בוודאות,  זו דוגמא קצת קיצונית . . . 
    (רן) בוא נגיד, זאת אומרת, זה לא רק הלוגו - זה הרבה פעמים גם מדבר על פלטת הצבעים של האתר. זאת אומרת, על כל הצבעים של ה-Brand, זה לא רק הצבע של הלוגו. 
    • (אסף) לגמרי. גם בניגודיות צבעים יש גם עניין, נגיד, של העובי של הפונט.
      • כלומר, יש פה ממש . . . כאילו הטיפוגרפיה הספציפית, עד כמה האות צריכה להיות עבה יחסית לרקע שלה . . .
    • אבל אם עושים את זה מאוחר מדי אז המחיר יכול להיות מאוד גבוה,
    • וחלק מהמחיר  אגב זה גם הכמות דיונים המאוד גדולה שהולכת להיות, זה גם מחיר.
      • כי בעצם, לעשות שינוי החלטות כאלה - כבר יש פה ממש החלטה שהיא סמי-פוליטית כזאת.
    • עכשיו יותר מזה - בוא ניקח דוגמה קיצונית -  אתר או אפליקציה של פיצות. אני חובב פיצות, זה מאוד טעים . . .
      • יש אפליקציות ממש מגניבות של פיצות שעשות לך, שאתה יכול לעשות Drag & Drop לתוספות, זה מאוד מאוד נחמד.
        • אומרים לך “אתה רוצה חצי פיצה זיתים וחצי פטריות?
        • (רן) אני רוצה Tab! אני רוצה Tab! אני לא רוצה Drag & Drop . . .
        • (אסף) אני לא רוצה פיצה, אני רוצה טאבים . . .  
      • אז זה מאוד מאוד נחמד - אבל מי שלא יכול לעשות Drag & Drop פשוט בחוץ. ועכשיו . . .
      • (רן) . . .  שיאכל בלי תוספות . . .
      • (אסף) . . . שיאכל בלי תוספות, או . . .
    • אז אם הדרישה היא מראש לא נגישה, אין למפתח מה לעשות פה. 
      • כלומר, הוא יכול “להרים דגל”, אבל אבל מי שצריך להחזיק בראש שהמוצר יהיה נגיש זה בעצם  . . . 
      • צריך לקחת אחורה קצת - או שמאלה, Shift-Left - צריך להסתכל בעצם גם המנהל מוצר או הדרישות העסקיות או המעצבים, שבוודאות צריכים לפחות להכיר בגדול מה זה אומר נגישות, בשביל לבנות את אפשרות התוספות הזאת.
      • (אורי) 17% מההכנסות . . . .
      • (אסף) זה גם נכון, נכון יש פה כמה מוטיבציות.

    40:46 סימנים מטרימים וקווים מנחים, לא AI
    (רן) כיף לנו בשיחה הזאת, אבל אנחנו כבר רוצים ככה לשאוף לקראת סיום. אז יש כמה נושאים שלא נגיע אליהם, למשל מה התפקיד של AI ו-Machine Learning בכל הסיפור הזה - בין אם לטובה ובין אם לרעה, אני בטוח שיהיה גם וגם . . . (אורי) . . .  די, רן, די . . . .(רן) . . . אני אמרתי שלא נדבר על זה, נו . . .
    • (אסף) אפשר, אם אתם רוצים . . .
    (רן) . . .  אבל כן יש נושא אחד שכן רציתי קצת לכסות, וזה שאנחנו, כאנשי Frontend ובכלל כמפתחים, אוהבים להשתמש בספריות, נכון? ספריות הן יפות, הן כיפיות, הן נותנות לנו כל מיני קומפוננטות (Components) . . .(אורי) . . . והן מתיישנות תוך שבועיים . . .
    • (אסף) . . .   אין על ספריות . . .
    (רן) . . . וחוסכות לנו מלא מלא עבודה. אבל השאלה שלי היא איך אני, כמפתח Frontend, יודע שהספרייה היא “כשרה”.  כלומר, איך אני יודע שהספרייה היא Accessible או Accessibility-Friendly? מה הם הסימנים המטרימים, כדי שאני אוכל לדעת שבאמת אפשר להשתמש בספרייה הזאת ושאני לא הולך אחר כך להתחרט על זה?
    • (אסף) שאלה מעולה. אני יכול לשתף - שוב, “צר עולמי כעולם נמלה” - אני יכול לשתף במחקר שאנחנו עשינו, בשביל הפיתוח שלנו.
      •  שוב, אנחנו צריכים להיות נגישים.
      • זה גורם לנו לאכול הרבה הרבה הרבה "אוכל כלבי” [Eat your own Dog Food].  
    • אז אנחנו ניסינו למצוא ספרייה שתענה לנו על כל מיני צרכים - וזה מאוד מאוד קשה, כמו שאמרת.
      • אין באמת ספריות שהן נגישות במאה אחוז . . . גם שוב, השאלה לאיפה אתה . .  
        • האם המטרה שלך זה עכשיו לענות על הסטנדרט - שזה כאילו יעבור איזה שהוא טסט אוטומטי כזה או אחר ברמה כלשהי - או שאתה רוצה שזה באמת יהיה נגיש. 
        • שוב, הדוגמא עם ה-Alt-Text - זה יעבור מבחן אוטומטי פשוט, אבל זה לא באמת יפתור את הבעיה לבעלי-מוגבליות, אוקיי? 
    • אז אני כן אתן איזה שהם קווים מונחים.  דבר ראשון, לשאלה מה יותר נגיש React,  Vue או Angular - בשביל להוסיף עוד אש למדורה, או Svelte, אם בחרתי משהו חדש . . . 
    • אז התשובה היא שאין. כלומר, אין קשר בין ה-Framework לבין רמת הנגישות שלה, לפחות לא שאני יודע. 
      • כלומר, אין משהו יותר נגיש משהו אחר -  תשמשו במה שבא לכם, אני לא אפתור לכם את הדילמה הזאת. 
    • מבחינת ספריות, יש ספרייה של Adobe שקוראים לה Adobe Spectrum, שהיא ספרייה שיש לה Mode כזה של Headless, שבעצם, היא נותנת סמנטיקה של כל מיני קומפוננטות (Components).
      • והיא אומרת, בעצם, “אנחנו נותנים לכם סמנטיקה שהיא נגישה, ואתם יכולים להנגיש את ה-UI שלכם”.
        • אם תעשו את ה-UI שלכם שיהיה עם ניגודיות צבעים גרועה, או משהו כזה - אז זה לא ינגיש, אבל בגדול זה בסיס שהוא די טוב. 
      • שוב, אי אפשר לחתום על שום דבר, אבל זה כיוון.
    • יש הרבה ספריות שיש להן . . . אני יכול להגיד לכם מה הקווים, מה הדגלים האדומים.
    • בגלל ש-Accessibility זה משהו שצריך לעבוד עליו,  אז אם אתם מסתכלים על ספרייה ואין בה את המילה, לא כתוב Accessibility, לא כתוב A11Y, שזה Accessibility בקיצור כזה, אז כנראה היא לא Accessible.
      • כי מישהו שעבד על Accessibility, יכתוב שעבד על Accessibility.
      •  זה הרבה עבודה, זה אמור להיות בדף הפותח, או לפחות איפשהו בדפים הראשונים שמתארים את הספרייה.
      • ספרייה שאין לזה - רוב הסיכויים שהיא לא תהיה נגישה. 
    (רן) אוקיי, בסדר גמור. זה כמו שלא הייתם כנראה משתמשים בספרייה שאין לה Unit tests, או עוד כל מיני סימנים אחרים.
    44:18 עוד קצת על Evinced לסיכום
    (רן) בסדר גמור, טוב - תודה רבה אסף! יש כמה נושאים שלא הגענו אליהם, מן הסתם, אבל זה בסדר, נשאיר משהו לפעם הבאה.(אורי) . . .  לא היה להם Tab Index . . . (רן)  כן . . . אז אולי עוד כמה מילים על Evinced - החברה: קצת איפה אתם יושבים, אם אתם מגייסים, מה אתם מחפשים?
    • (אסף) אז אנחנו מחפשים, אנחנו מגייסים.
    • אנחנו יושבים ליד עזריאלי בשרונה, בבית -  במשרד - מאוד מאוד חמוד.
    • אנחנו גדלים - ומחפשים Frontend-סטים, Backend-סטים, Data Scientist ואנשים שעושים AI, סליחה, והם ראשי צוותים, בעצם מגייסים להמון משרות.
      • בואו - צרו איתי קשר ב-LinkedIn או ברחוב ואני אשמח להעביר קורות-חיים שלכם.
    (רן) מה עושים אצלכם עם Data Scientists?
    • (אסף) Data Scientists, למשל, עוברים על כמות אדירה של אתרים, ומנסים להבין ולמצוא דפוסים
      • מעבר לניתוחים סמנטיים, להבין למשל איך באמצעות עיבוד תמונה בשילוב של סמנטיקה,  אפשר לדעת למשל שמשהו שאין לו סמנטיקה של כפתור הוא בעצם כן כפתור.
      • או לעשות דברים שהם יותר חכמים. למשל, נגיד ניתן עוד דוגמא - נגיד אם יש לך כפתור שאמור לפתוח Pop-up, אתה אמור לתקשר את זה איכשהו, כדי שמישהו שלא יודע מה קורה שם ידע שהכפתור הזה לא מעביר אותו למצב אחר, אלא עושה . ..  פותח לו “פורטל” כזה.
        • ה-Pop-up בעצם משתלט לך על כל המסך, אתה בעצם לא יכול לגשת למה שנמצא מאחורה.  אז צריך לתקשר את זה.
      • אז אם אנחנו נדע איך לזהות את הדבר הזה או איך למצוא דפוסים אחרים,  אז בעצם יש פה הרבה שילוב של Data Science ו-AI.  
    (רן) הבנתי. זאת אומרת, ניתוח אוטומטי של מקרים נפוצים והבנה של איך אפשר לטפל בזה.בסדר גמור, מעניין מאוד. תודה רבה.  שיהיה לכם בהצלחה.
    46:17 המסייעת
    • (אסף) ויש עוד פרויקט אחד שלא קשור לזה - אז יש פרויקט שהוא לא קשור בכלל לנגישות, שקוראים לו MesayaaTech.
    • זה פרויקט מאוד מאוד מגניב, שבעצם עוזר למילואימניקים שנתנו המון המון המון בשנה וחצי האחרונות, משהו כזה.
    (אורי) . . .  שנה-ויותר-מדי . . .
    • (אסף) . . . שנה-ויותר-מדי האחרונות - שחלקם סטודנטים שנשלפו מהתואר שלהם, חלקם בעלי משפחות, בעלים, בנים, בנות, הכל.
    • בעצם עוזר להם למצוא את הדרך שלהם לעולם העבודה, לעולם ה-Tech.
      •  אם זה עזרה בראיונות, אם זה למנטר, חבר'ה ללוות אותם. 
    • בואו, זה אחלה פרויקט, עושים דברים ממש-ממש יפים - ויש הרבה הצלחות.
    (רן) כלומר, אם אתם יודעים לראיין, ראיינתם, ואתם יכולים לעזור לאנשים להתראיין, לעזור לאנשים למצוא משרות - אז אתכם צריכים. איך יוצרים קשר?(אורי)  אני חושב שגם “סתם ליווי” . . . 
    • (אסף) לגמרי . . .  לגמרי גם סתם ליווי, גם זה יכול להיות...  אם אתם פשוט בתעשייה מספיק זמן, אתם לא צריכים לדעת לראיין - כנראה יש לכם מספיק קשרים יותר מאשר מישהו שעכשיו סיים שנה שלישית בעברית או משהו כזה.
    (רן) איך מגיעו ל-MesayaaTech? 
    • (אסף) אז מחפשים MesayaaTech ב-LinkedIn.
      • זה לא פרויקט שלי, זה פרויקט שאני הצטרפתי אליו.
      • אגב, אם אתם שומעים ואתם מילואימניקים - אז גם: יש, בואו ותתחברו לזה.

    מעולה, תודה רבה גם על זה. להתראות.  תודה רבה.
     האזנה נעימה ותודה רבה לעופר פורר על התמלול!
    49 min
  • 492 Podcast about Ella, the AI assistant at One-Zero bank

    פרק מספר 492 של רברס עם פלטפורמה, שהוקלט ב-20 בפברואר 2025. רן מארח ב-Remote את עמית מהבנק הדיגיטלי One-Zero כדי לדבר  על פרויקט של בוט חדש - Ella - שמפותח בחברה.🎗️


     00:49 עמית ו-One-Zero (רן)) עמית,  כמה מילים עליך וקצת על הבנק, אולי יותר מהזווית הטכנולוגית שלו?  שוט . . . 
    • (עמית) אז קודם כול, נעים מאוד, אני עמית. 
    • אפשר להגיד שפחות או יותר גדלתי בעולם הזה של AI ו-Machine Learning.
    • התחלתי את הדרך שלי בתחום אי-שם,  כשהייתי בן 13 - למדתי מתמטיקה בתוכנית של הילדים שלומדים מתמטיקה באוניברסיטה. 
      • התחלתי את התוכנית הזאת שנתיים מוקדם מהרגיל,  אז סיימנו את התואר וכל החברים שלי התגייסו לצבא ואני הייתי עדיין קטן,  אז נשארו לי עוד שנתיים.  
        • בזמן הזה עשיתי תואר שני, גם כן בעולמות ה-Data,  שם התחלתי בעצם לראשונה להיכנס ולהיחשף לעולם הזה, והתחלתי לעבוד בתור מפתח תוכנה.
      • אחרי שנתיים סיימתי את התואר, התגייסתי לצבא, הייתי חמש שנים כמעט ב-8200,  בתפקידים של מחקר טכנולוגי בכל מיני עולמות אקזוטיים.
      • ואחרי כמעט חמש שנים של שירות הגעתי לחברת FinTech שקוראים לה Pagaya. 
        • הייתי שם באזורי Data Science ו-Machine Learning.
        • כש-Pagaya היא חברה שמאוד מאוד מאוד מבוססת סביב Machine Learning.
        • מחלקת Data Science [שהיא] אחת הגדולות בישראל, כל המוצר של החברה בעצם סובב סביב העולמות האלה, אז זו הייתה ככה תקופה מאוד מגניבה. 
    • ואחרי שלוש שנים ב-Pagaya הגעתי ל-One-Zero,  לנהל את המחלקה של הData ו-AI בבנק.
    • כשבעצם התפקיד הזה של לנהל את המחלקה של Data ו-AI,  זה כולל, אפשר להגיד, שני כובעים מרכזיים:
      • הכובע הראשון זה מחלקת Data, כמו בבנקים אחרים - Data Engineering, Data Analytics, Data Science,  מודלים על לקוחות . . .  כל השימוש, בעצם, במידע הפיננסי או המידע הבנקאי שקיים בבנק. 
      • והכובע השני,  שהוא באמת הפוקוס של השיחה שלנו היום,  זה פיתוח של מוצר ה-Generative AI של One-Zero,  - אלה (Ella) - שהיא בעצם “בנקאית AI”.
        • הבנק הוקם על ידי פרופ' אמנון שעשוע, שעושה AI בכל מיני תחומים, וב-One-Zero עושה AI בתחום הבנקאות.
        • הראשונים בישראל לעשות את זה, ובין הראשונים גם בעולם. 
    • ב-One-Zero - כמה מילים אולי על הבנק:  אז הבנק הוא בנק דיגיטלי,  הוא קם אחרי המון שנים שלא הוקמו בנקים חדשים בישראל. 
      • בעצם הבנק - מעבר למוצרים הפיננסיים שלו, של הלוואות,  פיקדונות,  ניירות ערך, כל האזור הפיננסי - הבנק,  אפשר להגיד,  חרט על דגלו את ה...  “לתת שירות של בנקאות פרטית לכולם”. 
        • זאת אומרת,  לבוא ולתת לכל לקוח של הבנק את החוויה הזאת של  בנקאי פרטי,  כמו שיש לאנשים יותר עמידים.
      • והדרך לעשות את זה בעצם היא או באמצעות להעסיק המון-המון בנקאים, כמו שעושים בבנקים אחרים בעולם,  או באמצעות הרבה-הרבה שימוש באוטומציה ו-AI,  כמו שאנחנו עושים כאן.
    • רק לסבר את האוזן על המספרים - היום ב-One-Zero,  מעל 80% מהשירות-לקוחות שלקוחות מקבלים מגיע, קצה-לקצה, באמצעות AI.
      • זה מאפשר לארגון לגדול מאוד בכמות הלקוחות שלו,  בלי להגדיל את כמות הבנקאים שצריך להעסיק.
    • אז זה, ככה, טיפה עליי וטיפה עלינו.

    04:19 ארונות שחורים עם אורקלים שרצים בחושך
    (רן)  מעולה. אז זה גם חושף את המוטיבציה ותיכף נדבר גם על אתגרים של איך בכלל עושים פלטפורמה כזאת של  AI ב-Setting של בנק,  שהוא מאתגר כנראה עוד יותר ממקומות אחרים, בהקשר הזה.אבל אולי קצת לפני זה - אנ סקרן ואני חייב לשאול אותך:  אמרת שאתה מנהל את מערכות ה-Data של הבנק, ואני תוהה, נגיד עד כמה עצם זה שהבנק הוא יחסית חדש ויחסית דיגיטלי, עד כמה זה משפיע על מערכות ה-Data שלכם,  למיטב ידיעתך, נגיד לעומת מערכות Data של בנקים אחרים? האם אצלם זה ארונות שחורים עם אורקלים שרצים  בחושך ואצלכם זה AWS, או שהדמיון רב על השוני?
    • (עמית) אז אין ספק שיש יתרון עצום בלהיות ארגון שמתחיל את הדרך שלו בתקופה שכבר הטכנולוגיה מאוד מפותחת. 
    • בסוף, כן - אצלנו, מן הסתם, הכל ב-AWS, הכל בענן,  עובדים עם הכלים הכי מתקדמים.
      • ה-Data ב-Snowflake . . .  זאת אומרת, בסוף אנחנו בכלים הכי-הכי מודרניים ומתקדמים שקיימים. 
    • לא עבדתי בבנקים אחרים,  אבל כן דיברתי קצת עם אנשים ושמעתי דברים מסביבי
      •  אני יודע שבבנקים אחרים הושקעו מאמצים אדירים, ברמת עשרות ומאות-מיליונים, כדי בעצם לעשות תהליכים של דיגיטל, לעבור מאותן מערכות Legacy, שנבנו לפני עשרות שנים ,למערכות שהן יותר חדשות, יותר מתקדמות.
      •  חלק מהבנקים הצליחו יותר, חלק מהבנקים עדיין בדרך.
      • ואין ספק שזה שאנחנו התחלנו כשהטכנולוגיות כבר בשלות זה דבר שמאוד מאוד הקל עלינו באספקט הזה. 

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

    06:07 קורא לה(רן) אוקיי, בסדר, אז בואו נעבור לדבר על Ella. אז Ella, כמו שאמרת, זה בעצם בוט שעוזר ללקוחות לקבל שירות לקוחות  ברמה של “לקוח פרימיום”, או לא יודע איך שנקרא לזה. זאת אומרת, עוזר לקבל החלטות, להבין מה המצב,  לעשות פעולות וכו’.  אז אולי אחד הדברים שאנשים, כשמגיעים לעולם של AI,  באים ועושים, זה פותחים את ChatGPT,  כותבים לו כמה שאלות או נותנים לו כמה משימות - וראה איזה קסם!  הכל עובד והכל מצוין,  ונראה שזה ממש קל . . .   כאילו,  אוקיי,  אז יופי,  אז אני אשים גם אחד כזה בבנק שלי. החיים כנראה מלמדים אותנו אחרת . . .אז בוא ללמד אותנו - מה לימדו אותך החיים?  כלומר, כשבאתם לעשות את זה, מה מצאתם מאתגר? איך התגברתם על זה?  נצלול אולי לחלק מהמקומות האלה.
    • (עמית) תראה, אז אני חושב שכמו שאמרת - וגם רואים את זה משיחות עם ארגונים אחרים - ארגונים בדרך כלל נוטים לחשוב ששילוב של AI במערכות זה הולך להיות קל, 
      • כי כולם רואים את ChatGPT וכולם רואים את  ה-API ש-OpenAI חשפו וגם חברות אחרות - ואומרים לעצמם “אה, מגניב! אני אקח את ההודעות שהלקוח שולח, אני אעביר אותן לקסם הזה של ChatGPT ואני אקבל את התשובה חזרה!”
        • ובחיים האמיתיים זה לא עובד, כי אני חושב שהיום אנחנו כבר . . .  העולם עבר איזושהי התבגרות, ולאט-לאט מבינים שזה לא עובד ככה, ושהעולם הוא מורכב.
        • ובטח ובטח אם אתה ארגון רגיש או ארגון רציני,  אתה צריך לעמוד מאחורי מה שהעובדים בארגון שלך אומרים, גם אם זה “עובדי-AI” וגם אם מאחורי הקלעים יש מנוע LLM.
    (רן) כן, אז בוא למשל . . .  אולי פה מישהו מכיר את הסיפור של Air Canada, שאני אזכיר אותו בקצרה - שהם גם יצרו איזשהו בוט,  איזשהו Chat שעוזר בשירות לקוחות, והאמת היא שאני לא יודע באיזו טכנולוגיה הם השתמשו מאחורי הקלעים,  אולי זה אפילו היה לפני עידן ה-GPT, אני לא זוכר מתי זה היה, אבל לפני כמה שנים -  ובעצם לקוח התייעץ עם אותו בוט, והבוט המליץ לו על איזושהי הטיסה,  וגם אמר שיש איזושהי הנחה,  וזו כמובן הייתה טעות. אבל זה היה מספיק בשביל הלקוח כדי, אם אני לא טועה, בסופו של דבר לתבוע את המחיר שאותו הבוט הציע ולקבל כרטיס במחיר אפסי -  אני לא יודע אם זה היה אפס לגמרי או פשוט מאוד נמוך -  וכמובן שהחברה הפסידה על זה, אבל הם היו צריכים לעמוד מאחורי האמירה של אותו בוט.  אז זו דוגמה רק לאחת מהסכנות שיכולות לקרות,  וכמובן שאם Ella הולכת להציע הלוואה בריבית של מינוס עשרה אחוז,  אז אתם בצרות גדולות . . .
    • (עמית)  כן.  אז קודם כול - לגמרי.  יש מקרים כאלה, ואני מזמין אותך ואת המאזינים לחפש בגוגל כזה  “AI Failures”, ואפשר לראות המון מקרים של פדיחות ש-AI עשה ב-Production מול לקוחות.
    • חשוב להגיד -  יש את המקרים הגדולים של Chevrolet הבטיחה רכב בדולר, או Air Canada, כמו שהזכרת או מקרים כאלה דומים.
      •  אבל בסוף-בסוף בארגונים יש גם את החיים עצמם.  וכמו שאתה אומר, בסוף בארגון יש המון פרטים והמון תנאים ומוצרים,  ואם הלקוח קיבל הלוואה בתנאים כאלה או המרת מטבעות בתנאים כאלה ואחרים,  זה דברים שיכולים להעלות לבנק באמת הרבה כסף.
      • ולכן ה-Quality פה הוא סופר-סופר קריטי וזה לא מספיק לנו להשתמש במערכות שנותנות 80% דיוק או 90% דיוק. 
    (רן) כן, אז בעיה אחת שעולה פה - בוא ניתן לה שם - נקרא לזה הליביליות (Liability) או אולי האחריות או היכולת: הצורך של הבנק לעמוד מאחורי המילה של אותו בוט,  ולכן אנחנו גם לא היינו רוצים שהוא יגיד שטויות וימכור אותנו בזול מדי . .   אז אחד זה ליביליות.מקודם רמזת על, נגיד, השימוש לצורך העניין ב-GPT בתור איזשהו Backend. כלומר, לוקחים את ה-Input של הלקוח, מעבירים את זה ל-GPT ומחזירים את התשובה ממנו. אז גם פה יש אתגר, נכון? כי זה מידע פרטי של לקוח, מידע פנימי של הבנק.  אתה כנראה לא רוצה לחשוף את זה החוצה - או לפחות לא As-Is לחשוף את זה החוצה. ואז יש פה את הדילמה של, אוקיי, מה אתה עושה? האם אתה “מלבין את המידע”?  זאת אומרת, אתה עושה איזושהי אנונימיזציה או משהו כזה, או שלחילופין אתה מוצא מודלים או מארח מודלים אצלך,  ככה שה-Privacy יובטח לך.  אז זה כנראה אתגר נוסף, ואני בטוח שיש עוד.  אז אולי נדבר רגע על ה...  זאת אומרת, אולי דבר נוסף - ותיכף נצלול לכל זה - זה שיש המון מידע פנימי, גם רמזת, המון מידע פנימי של הבנק, כמו איזה מבצעים כרגע קיימים, מה השער-ההמרה וכו’, מידע פנימי שאף LLM אי-שם בחוץ לא אמור לדעת את זה. זאת אומרת, הוא לא יודע להציע לך כי הוא פשוט לא מכיר את המידע הזה, כי זה מידע פנימי -  ואז השאלה איך אתה משלב את המידע הפנימי הזה ביכולות שלו.רמזתי לכמה - אז בוא נצלול . . .
    • (עמית)  כן, אז לגמרי.  אני חושב שיש את האתגרים, כמו שציינת עכשיו - יש את האתגרים שאתה יודע . . . כולם רואים מודלים, כולם מבינים שהם אתגרים, ויש גם, אגב, חברות שעוזרות להתמודד איתם.
      • החל מ-Security ואיזה דברים אנחנו רוצים לחשוף . . .  אני אתן Spoiler אולי להמשך, אבל בבנק - הגישה ב-Security זה “גם וגם וגם וגם וגם”.
      •  אז גם מלבינים וגם לא שולחים את המידע החוצה וגם לא חושפים שום דבר למקורות חיצוניים וגם עושים המון המון אבטחות על כל Input שנכנס למודל. 
      • אז זה באספקט הזה.
    • יש כמובן את כל העולם של הזיות או Hallucinations, שאנשים תמיד ששומעים על AI, הם מיד הם חושבים על “רגע, אבל לפעמים הוא אומר לי שטויות!  לפעמים אני שולח ל-ChatGPT שאלה ואני מקבל תשובה שלא קשורה למציאות!
      • אתה אומר לו “רגע - מה פתאום, בעצם התשובה צריכה להיות ככה”,  והוא מייד מתקן את עצמו, שזה דבר שאגב בארגון שמתחייב על מה שהוא אומר, זה יכול להיות מאוד מאוד הרסני.
    (רן) כן. רוצה סיפור מצחיק, דרך אגב, בהקשר הזה?  זאת אומרת, אני בטוח שיש הרבה, אבל הנה, סיפור אישי קורע לב:  יש לי ילדות ושם משפחה שלי הוא תבורי,  אז רציתי להראות להן איך מנוע השפה יודע להזות. אז שאלתי אותו, מיהם ההורים של יעל, מאיה ואביגיל? השמות של הבנות שלי - יעל, מאיה ואביגיל תבורי.  נחש מה הוא ענה?  כמובן, “שימי תבורי ובן אל תבורי” -  הם ההורים של הילדות שלי . . .  אז הם רצו לשאול אותי אם יש משהו שאני יודע ושאני לא מספר להן.אבל כן, זאת אומרת - LLM, כשהוא לא יודע, אז הוא ממציא משהו שנשמע לו סביר סטטיסטית בשפה, ואז זה יכול להיות בסדר.  העובדות פחות משחקות אצלו, אבל זה כמובן אתגר רציני למי שבונה מוצר כמו שלכם.
    • (עמית) לגמרי.  אז כל אלה הם באמת אתגרים שאנחנו -  כשאנחנו באים לבנות מוצר GenAI - אנחנו מיד נתקלים בבעיות האלה ובונים את המערכת בצורה שהיא מטפלת בכל הבעיות האלה לפני שהן קורות.
        • בין אם זה רכיבים יעודיים כדי למנוע הזיות, בין אם זה יכולת לחשוף את המידע הארגוני שלנו למודל,  כדי שהוא לא ישתמש בדברים שהוא למד אי-שם באינטרנט.
    • יש אתגרים גם של שפה - עם זה שהמודלים בעיקר טובים באנגלית ואנחנו פה מדברים בשפות שונות בישראל,  אז יש גם את האתגרים האלה.
    • אבל אני חושב  שאולי הדבר  שהוא דווקא יותר מעניין לחברות  שרוצות באמת לבנות מוצרי GenAI ולשים אותם ב-Production,  זה הדברים שאנחנו רואים אחרי Production. 
      • כשפתאום לקוחות לא כותבים בדיוק כמו שציפינו שהם יכתבו.
        • ולקוח לא שואל אותנו אם הוא יכול לבצע פירעון מוקדם בהלוואה שהוא לקח, אלא הוא כותב “אני רוצה לשבור הלוואה”.
        • עכשיו, ברור שאין דבר כזה “לשבור הלוואה” ב-Knowledge Base של הבנק, כן? הוא רוצה להגדיל מסגרת, הוא רוצה להמיר דולרים.
      • בסוף יש...  ה-Input הוא . . .
      • (רן) . . .אל תשלח אותו לזגג . . .  אם הוא רוצה להגדיל מסגרת, אל תשלח אותו לזגג, שיעשה לו מסגרת חדשה . . .
      • (עמית) לגמרי. 
    • (עמית) בסוף, אתה יודע, את הלקוח זה לא מעניין שהוא לא כתב כמו שאתה התכוונת שהוא יכתוב.
      • הוא רוצה לקבל תשובה, ואם הוא לא יקבל תשובה, הוא יפתח Ticket לבנקאי - ואז הבנקאים יצטרכו לעבוד על הרבה פניות שהיו יכולות להיפתר לפני.
    • אנחנו רואים שהרבה פעמים לקוחות גם - בין אם זה בתמימות - שואלים ומשתמשים במונחים לא נכונים
      • או מתוך איזשהו רצון להשפיע על המערכת ולהתנהגות שלה.
      • דברים שפוגשים ב-Production, כשנתקלים בעולם האמיתי.
    (רן) כן, מעניין גם אם יש שוני - זו אולי שאלה קצת בפסיכולוגיה . . . - אם אתה יודע שעומד מולך בוט, ואני מניח שזה שקוף ללקוחות שלכם, אבל אם אתה יודע שעומד מולך בוט, האם אתה מתנהג אחרת? כלומר, כותב דברים אחרת, אולי  מנסה כמו שאמרת אולי “לעבוד עליו” באיזשהו אופן, שלבנאדם אמיתי לא היית עושה את זה?
    • (עמית) כן . . .  אז קודם כל, לגמרי כן.
    • ואני חושב שזה פוגש אותנו בשני מקומות - אחד זה  בצד של האמון של הלקוחות במערכת, ואחד זה באופן שבו הם מתנסחים מול המערכת.
    • מהצד של האמון, אז ראינו בהתחלה - היום כבר פחות רואים את זה - אבל בהתחלה ראינו שהיו הרבה מקרים שלקוחות שאלו שאלה, קיבלו תשובה מ-Ella -  אבל הם כאילו לא סמכו על זה.
      • הם כאילו אמרו “רגע, זה AI, הארגון לא באמת מחויב לזה” - והם היו הולכים ושואלים את הנציגים האנושיים בדיוק את אותן שאלות, בדיוק כמו שהיה לפני.
        • והם היו מקבלים את אותה תשובה, כי הנציג האנושי גם כן רואה את השיחה שאותו לקוח ביצע מול Ella.
      • והנחינו בעצם את הנציגים לבוא ולהגיד להם שהם יכולים לסמוך על התשובה שהם קיבלו מ-Ella - שהארגון עומד מאחורי מה ש-Ella אומרת, גם במקרים שזה “עולה לו”.
      • וראינו, עם הזמן, שבאמת גם כמות הפניות מהסוג הזה הולכת ומצטמצמת, וגם שהלקוחות מרגישים באמת יותר בנוח, כי האירגון עומד מאחורי זה.
    • הצד השני, מעבר לאמון, זה לגבי אופן ההתנסחות -  ואנחנו רואים בצורה מאוד מאוד מאוד ברורה, שלקוחות מדברים  עם בוט אחרת מאיך שהם מדברים עם אנשים, ולקוחות מדברים עם בוט היום אחרת מאיך שהם דיברו עם הבוט לפני חודשיים או שלושה.  
    • תחשוב איך אתה מתנהל מול ChatGPT, נכון? בהתחלה כולם היו כותבים כזה Propmt-ים “Fancy” כזה - “תתנהג כאילו אתה ככה” ו”בבקשה, זה ממש חשוב לי” וכל מיני דברים כאלה.
      • והיום זה כזה, לא יודע - ”תכתוב לי מייל”, כן?  זה הצורה שאנחנו מתנהלים עם...  
      • (רן) היום אתה כמעט מצפה שהוא יקרא את המחשבות שלך . . .  “נו, תעשה את זה, לא הבנת?”
      • (עמית) לגמרי, לגמרי. ואנחנו רואים שבסוף אנשים גם משנים את האופן שבו הם מתנסחים מול Ella,  לפי מה שהם רואים
        • איך התגובות שהם מקבלים יותר טובות, מתי הם יותר מקבלים מענה.
        • הם מבינים שאם הם שואלים את השאלה בצורה יותר מפורטת ויותר ברורה, אז הם יקבלו תשובה שהיא יותר מדויקת למה שהם רצו. 
      • וזה, האמת, דבר שמצד אחד זה די מדהים לראות אותו - ומצד שני, הוא גם משפיע על הארגון בזה שאנחנו חייבים כל הזמן להתאים את עצמנו לאיך שלקוחות מתנהלים בשטח.
    (רן) כן. דרך אגב, בעולם של Machine Learning ו-Data Science זה נקרא Data Drift.  כלומר, אתה סוג-של אימנת את המודל שלך על סוג מסוים של Data, ועם הזמן המציאות משתנה ואז יש לך איזשהו Drift או אולי Concept Drift זה אולי הדבר היותר נכון.  אבל כן, למרות שאולי פה ספציפית יכול להיות שאימנת, יכול להיות שלא אימנת . . .  זאת אומרת, לא דיברנו עוד אם עשיתם איזשהם Finetuning או לא,  אבל בלי שום קשר, “כיילת” את המערכת לסוג מסוים של התנהגות של משתמשים, ובסוף,  עם הזמן ואולי דווקא בגדל הפידבק הזה של המערכת,  אולי בגדל השימוש שלהם במערכת,  הם למעשה משנים את ההתנהגות שלהם ואתה צריך לכייל את המערכת מחדש.
    • (עמית) כן, וחשוב להגיד שזה גם לא רק הלקוחות. 
      • זאת אומרת, הלקוחות משנים את ההתנהגות שלהם - אבל גם במציאות משתנה, העסק משתנה, המידע משתנה,  היעדים העסקיים משתנים . . .
      • זאת אומרת,  המערכת היא חיה כל הזמן - ואנחנו כארגון  צריכים כל הזמן להמשיך לעשות את ההתאמות,  גם במודלים וגם במבנה של המערכת כולה, כדי להמשיך לתמוך בזה.

    19:02 שימוש פנימי ואלות שונות
    (רן) דרך אגב - אותו כלי, או אולי כלים דומים, גם משמשים את עובדי הבנק בפנים?  כלומר, אם עובד הבנק רוצה לשאול משהו את המערכת שלכם,  האם הוא גם ישתמש בממשק דומה?
    • (עמית) כן.  אז יש כלי AI אחרים בבנק, אבל בסוף Ella - היא מיועדת לשימוש של מול לקוחות, היא מציגה מידע שהוא נועד להיחשף ללקוחות.
      • אגב,  יש עוד תהליכים שעוברים על פניות של לקוחות. זאת אומרת, אם יש פנייה שמגיעה בפועל כן לנציג אנושי - גם שם יש תהליך מבוסס-AI שעושה את ה-Handover הזה בצורה שהיא חלקה ואופטימלית עבור הנציגים.
    • בבנק משתמשים בהרבה כלי AI, אבל ספציפית לא במוצר הזה של Ella.
    • שווה גם להגיד - “Ella” זה שם כללי כזה, אבל יש לנו כמה “אלות ”שונות.
      • יש Ella שמיועדת ללקוחות קיימים שצריכים לקבל שירות, יש Ella שמיועדת לעזור ללקוחות בתהליכי Onboarding, יש Ella שאמורה לעזור לנו לקנברט לידים (Convert Leads) ולהפוך אותם ללקוחות . . . 
      • זאת אומרת,  יש כמה אזורים שונים שהם כולם Chatbot-ים מבוססי-AI עם מטרות ויעדים שונים בארגון. 

    20:16 שפה חופשית
    (רן) כן.  אוקיי -  אז בוא ננסה להיכנס אולי לחלק מהאתגרים ולדבר על איך פתרתם אותם.  נגיד, אז אחד הדברים שאמרת זה לקוח מדבר בשפה שהיא חופשית, שהיא “לא בנקאית”.  זאת אומרת, מעבר להיותה עברית, שזה כבר מאתגר, אלא גם משתמש במושגים שהם לא כל כך מקצועיים וצריך לדעת לתרגם את זה. אולי לפעמים מנסה לעשות Gaming למערכת הזאת. אז זה אתגר אחד. אפשר נגיד לדבר כמה דקות על איך אתם מתמודדים עם זה? איך אתם מתרגמים את ה-Input של הלקוח למשהו שהוא  יותר מפורמל ויותר מתאים למנוע שפה?
    • (עמית) אז אולי אני אחלק את התשובה לשניים - יש את ההתמודדות הספציפית עם הבעיה הזאת ויש את ההתמודדות באופן כללי עם בעיות,  נקרא לזה “מהסוג הזה”. וספציפית במקרה הזה אנחנו משתמשים ב  . . . 
      • המודל הזה של Ella  זה לא איזה מודל LLM אחד שעשינו לו  Fine-Tune, שיכיר את המושגים שלנו ומפה הוא חי ומסתדר.
    • בסוף,  כשבונים Agent, יש לנו המון המון מורכבויות שונות שאנחנו צריכים להכיל.
      • זה החל מעל מה מדברים? איך מדברים? איך מנסחים את השאלה של הלקוח? איך אנחנו כותבים את ה-Knowledge שלנו? איך אנחנו מחפשים ב-Knowledge שלנו? איך אנחנו מגדירים מה מותר ומה אסור? ובאמת הרבה  מרכיבים שונים . . .
    • אני חושב שאחד הדברים שאנחנו עשינו יפה ב-One-Zero זה לזהות את האזורים השונים שאנחנו רוצים להתמקד בהם,  ובמקום לבנות מודל אחד גדול שהוא מין מודל ג'נרליסט (General) כזה,  שיודע לעשות הכל ב-80%,  לקחנו משימות יותר קטנות, יותר קונקרטיות של השלמה של טקסטים, או קלסיפיקציה (Classification), או תרגום, או זיהוי של פרטים או ישויות, כל מיני אזורים כאלה שונים בתהליך.
      • ובנינו באמצעות הרבה מודלים שונים מערכת אחת שפותרת בסוף את הבעיה העסקית הזאת.
    • לדוגמה, אחד המודלים שיש לנו זה מודל של תרגום, שהוא מודל יעודי שפיתחנו אצלנו, שמיועד להתמודד בדיוק עם האתגר הזה
      • של אחד - לקוחות כותבים בצורה שהיא לא תמיד בדיוק מה שהמודל מצפה לצרוך. 
      • ושתיים - לקוחות כותבים לפעמים בצורה שהיא “חסרה”.  זאת אומרת, המודל תרגום שלנו גם כן מבוסס על LLM-ים, שספציפית אנחנו עושים להם Hosting פה פנימית אצלנו,  ומאמנים אותם למטרות שלנו, שאמורים להכיר גם את הטרמינולוגיות (Terminology) שלנו וגם את  הדברים שאנחנו רואים בפועל, בשטח, שלקוחות שואלים עליהם.
        • זאת אומרת,  יש ממש אנשים שמבצעים את התחזוקה הזאת  ויודעים כל הזמן “ליישר את המערכת” בהתאם למה שקורה בשטח.  
    (רן) לצורך העניין,  אתה יכול מדי פעם לעדכן,  נגיד,  את ה-System Prompt, ולבוא ולהגיד “אם הלקוח שואל על זה ועל זה,  אולי הוא מתכוון לזה, אם הוא שואל על זה, אולי הוא מתכוון לזה”.  זאת אומרת,  לייצר איזה שהם . . .  גם אוסף של דוגמאות ואפילו פתרונות ספציפיים כי זה כל כך נפוץ,  אז לפעמים זה פשוט Mapping מאחד לאחד,  אבל זה לא המודל המרכזי, או בעצם במילים אחרות -  אתה אומר שיש פה כמה מודלים שמשחקים. אחד מהם אחראי אולי לשלב התרגום מהשפה חופשית והעממית והעברית,  למשהו אחר שיותר קל ל-LLM הבא או לרכיב הבא,  אולי זה אפילו לא LLM, אבל לרכיב הבא לעבוד איתו. אבל בגדול, יש פה איזשהו Pipeline של רכיבים, חלק מהם זה מנועי שפה, חלק מהם אמרת מקודם שהם לא בהכרח. כמו שאומרים, לכל בעיה במדעי-המחשב יש בעיה ב-N+1 אבסטרקציות,  אז אפשר להוסיף משהו מעל . . .אז בעצם,  אם אני מבין נכון,  בעצם השכבה הראשונה זו איזושהי שכבת “Routing” שמבינה, כאילו, מה הבן אדם רוצה ולאן לנתב את המשך השיחה.  ככה זה בנוי?
    • (עמית)  אז אפשר להגיד . . .   Routing בעצם זה,  הייתי אומר אולי השלב השני.  אני אתאר אולי מאוד ב-High-Level את המערכת.
    • השלב הראשון הוא להבין בכלל מה המשימה שאני צריך לבצע.
      • בסוף,  אם אני בונה עכשיו בנקאית-AI,  אני רוצה להסתכל על זה כאילו מדובר על בנקאי אנושי.
      • ואני אומר, אם עכשיו לקוח היה כותב את ההודעה הזאת ב-Chat,  מה המשימה הקונקרטית והקוהרנטית שהבנקאי עכשיו צריך לבצע,  בהינתן הלקוח הזה - ההיסטוריה שלו, המידע שלו, היסטוריית השיחה עד עכשיו וכל מה שהבנקאי צריך לדעת כדי לבצע את המשימה?
      • אז הרכיב הראשון הוא גם כן רכיב שמורכב מכמה מודלי שפה - LLM-ים ומודלים אחרים -  שמטרתו לתרגם שיחת Chat לשאלה או למשימה קוהרנטית (Coherent) שלבנקאי, לצורך העניין, הייתי יכול לפתוח לו טיקט עם המשימה הזאת.
    • בשלב השני יש מערכת Routing, שמפנה כל משימה...  
    (רן) אני מניח שבכללי זה נקרא Intent, נכון? כלומר, מה הכוונת הלקוח ואיך אני עכשיו הולך לעבוד איתו על זה? אוקיי. 
    • (עמית) כן, מה היא כוונת הלקוח - וספציפית פה, אנחנו גם משלבים את זה לא רק עם הכוונה של הלקוח אלא גם ממש עם המידע שלו.
      • המידע האישי שלו, המסלול שבו הוא נמצא, העסקאות שהוא ביצע...  
      • (רן) כן.  כלומר - אם יש לו הלוואה שכרגע פעילה, אז אתה צריך להבין את זה כי יכול להיות שהוא שואל על זה.  אם אין לו כרגע הלוואה זה כנראה משהו אחר. 
      • (עמית) לגמרי.
    • (עמית) אחרי זה, כשיש לי כבר את המשימה הזאת ביד,  אז אני מסתכל על זה ממש כאילו זו משימה שהייתי יכול לתת למישהו מהבנקאים פה בארגון לבצע.
    • ואני לוקח את המשימה הזאת ומפנה אותה לאחד מכמה מנגנונים שונים שיש לנו, שיודעים לפתור משימות.
      • כי בסוף,  גם פה זה לא מודל אחד.
      • הדרך שלי לענות לשאלה חישובית על אלפי טרנזקציות שיש למישהו בכרטיס האשראי, היא שונה לחלוטין מהדרך שבה אני רוצה לענות לשאלה שמישהו שואל על  ייעוץ פיננסי או על “איזה פיקדון הכי משתלם בהתאם לצרכים שלי?”  או משהו על התנאים של הבנק, של כמה יעלה לו להמיר דולר לשקל.
      • ובכל אחד מהם יש לנו ממש מנגנון אחר, יעודי, לפתור סוג מסוים של משימות.

    26:46 התאמות פנימיות וקופסא שחורה
    (רן) אוקיי.  בעצם מה שרציתי לשאול אותך עכשיו זה,  כן, זאת אומרת . . . נלך רגע לעולם של Machine Learning “הקלאסי”, אוקיי?  אז כשעובדים בעולם ה-GenAI, יש אפשרות או להשתמש במודלים מוכנים מהמדף - אתה עדיין יכול לעשות להם Hosting פנימית - אבל לקחת דברים מוכנים מהמדף או לעשות התאמות.  חלק מההתאמות נקראות Fine Tuning, אבל לא כולן - יש סוגים אחרים של התאמות שאתה יכול לעשות.  אז יש, נגיד, מקרים שבהם אתם לוקחים איזשהו מודל קיים - גדול, לא מדבר על עצי-סיווג, לא מדבר על העולם הקלאסי, אלא יותר על העולם של ה-GenAI - אתם לוקחים ואתם עושים לו אדפטציה פנימית?
    • (עמית)  אז לגמרי, עושים את זה בלי סוף - ואני חושב שאולי ממש בכל האספקטים ובכל המקומות.
    • זאת אומרת, החל מלעשות Fine-tuning למודלים,  לבחון סוגים שונים של מודלים, לעשות טכניקות של Prompting - בין אם זה Prompt Engineering וטכניקות חדשות שמתפרסמות,  לא יודע, אולי להגיד ברמה יומית
      • אפילו של איך נכון לבנות פתרונות דרך שיטות של RAG, חיפושים, איך שאנחנו בכלל מנסחים את ה-Knowledge שלנו, כל מיני שיטות Few-Shots למיניהם.
      • אנחנו מאוד מאוד משתדלים לפתור כל בעיה עם הכלים המתאימים עבור הבעיה הזאת.

    (רן) כן, אוקיי. אז עכשיו בוא רגע נסתכל על זה כקופסה שחורה - ועכשיו בא לקוח ומדבר עם Ella, ונגיד הוא אומר “אוקיי, אז עכשיו תעביר בבקשה 100 דולר מהחשבון הזה לחשבון ההוא”.  זה משהו ש-Ella תעשה? כלומר, היא באמת גם עושה את הטרנזקציות עצמן? היא באמת עושה פעולות שהן בלתי-הפיכות, לצורך העניין,  או שהיא רק מתמקדת בייעוץ עצמו?
    • (עמית) אז אני חושב שפה זה קצת מופרד בין הטכנולוגיה או היכולת הטכנולוגית שיש לנו כבנק, לבין איך מתווכים את זה ללקוח.
      • כי הגישה שלנו זה שלקוחות עדיין לא בשלים היום לתת ל-AI לבצע עבורם פעולות בחשבון בצורה עצמאית לגמרי, בלי יכולת שליטה על זה.
    • מה שאנחנו עושים כדי לגשר על הפעם הזה זה שבעצם הגדרנו, אפשר להגיד, כל פעולה בתור רצף של שתי פעולות:  פעולה ואישור.
      • ועכשיו, אם אתה רוצה להעביר כסף או לא יודע מה, לפתוח הלוואה, אז מה ש-Ella תעשה זה שהיא בעצם תגיד לך “אני מבינה שזה מה שאתה רוצה לעשות - בוא תלחץ ותאשר לי”
        • או “הנה המסך עם כל הפרטים,  בוא תבצע את הפעולה בעצמך” -  אבל במין איזשהו Self-Serving כזה.
    • ואנחנו רואים . . .  אמרתי קודם - בנקים אחרים, ארגונים אחרים, השקיעו מיליונים ועשרות מיליונים בשביל לעשות תהליך של מעבר ל-Digital.
      • אבל אז אתה רואה שבסוף, כשאתה צריך משהו מהקרן פנסיה שלך, למרות שהכול מונגש לך בפורטל האישי,  מה אתה עושה? אתה שולח הודעה לנציג, נכון? . . .
        • כי זה ארוך,  זה מסובך, זה מלא דפים, זה “לך תמצא עכשיו באיזה תפריט בדיוק נמצא הדבר שאתה צריך” . . . 
      • והיכולת הזאת, לממשק שהוא טקסטואלי בשפה חופשית -  לכתוב מה אתה רוצה ופשוט לקבל את זה - זה דבר שאנחנו רואים שהוא מוריד בצורה מאוד  מאוד דרמטית את כמות הפניות שאנשים פונים לנציגים אנושיים בסוף, גם אם בפועל אנחנו לא עושים את הפעולה הבלתי-הפיכה בלי שיש להם שליטה על זה.
    • עוד דבר שזה נותן,  אגב -  זה נותן לך את היכולת למצוא דברים בלי לדעת בדיוק מה אתה מחפש.
      •  זאת אומרת, אם לפני כמה זמן נפלתי מהקורקינט, והייתי פה ברחוב בתל אביב ורציתי רק לראות איך אני עכשיו מקבל מענה מהקופת חולים לדעת מה אני צריך לעשות.
      • ובסוף, כשאני במצב כזה - שכואבת לי היד ואני רוצה לדעת מה לעשות - אני לא רוצה להתחיל להיכנס לאתר של קופת חולים ולחפש בתפריטים איך אני מוצא את הדרך-פעולה והשעות פתיחה.
        • אני רוצה לכתוב ב-Chat “נפלתי מהקורקינט, מה לעשות?”
    (רן) כן, מה שנקרא “לקחת את הפרספקטיבה של הלקוח” - הכואב, במקרה הזה.אז אתה אומר שלגבי פעולות שהם בלתי-הפיכות, לפחות הפעולות שבהן אתם בוחרים לתמוך, אתה אומר שיש ככה שני צעדים - אחד זה לשקף ללקוח מה עומד לקרות,  ואז לתת לו את היכולת להחליט האם זה מה שהוא התכוון - התכוונת להעביר כסף? התכוונת לקחת הלוואה? תלחץ על הכפתור,  it's done. אבל עדיין זה בתוך הממשק של הבוט, זאת אומרת - בתוך הממשק של Ella.  אתה לא שולח אותו לתפריט אחר בבנק ואתה אומר לו “הנה, אתה עושה כך וכך ו...”
    • (עמית)  אז זה תלוי בפעולות, בפעולות שנתמכות בזה.
    • ממש נפתח לך כמו כזה חלון שיחה קטן בתוך ה-Chat, שבו אתה עושה את האישור הזה. 
    (רן) כן. 
    32:01 השפעה על סביבת פיתוח תוכנה
    (רן) אספקט אחד שלא דיברנו עליו,  וכן קצת דיברנו עליו בשיחת הכנה, זה איך פיתוח של מוצרים,  נקרא לזה “מוצרי AI”, משפיע על כל סביבת פיתוח התוכנה.  זאת אומרת, לא רק המדענים,  לא רק המתכנתים, לא רק המהנדסים - אלא גם אנשי המוצר,  לצורך העניין,  אולי גם אנשי QA.זאת אומרת, איך בעצם State of Mind כזה של פיתוח מוצר מבוסס-AI משפיע על כל ה-Ecosystem של פיתוח תוכנה, ורציתי לקבל את הפרספקטיבה שלך - איך אתה חווה את זה?  זאת אומרת,  איזה שינויים אנשי מוצר לצורך העניין, אצלכם, עברו כדי לעבוד יותר טוב ב-Setting הזה?
    • (עמית) אז אני חושב שבאופן כללי, זה אפילו לא רק אנשי מוצר, אלא ממש כל ארגוני הפיתוח או ארגונים טכנולוגיים באופן כללי.
    • ואני חושב שנקודה שרואים זה שארגונים שמצליחים באמת לבנות פתרונות GenAI ב-Production, זה ארגונים שגוף הפיתוח בהם עבר איזשהו שינוי מחשבתי או שינוי תפיסתי - שמתחיל באזורי ה-Product, של בכלל איך אני מגדיר משימה?
    • דיברתי לא מזמן עם חבר, שהוא CTO של סטרטאפ,  אז הוא ממש הפנה אליי את השאלה.  הוא אמר “איך אני מתאים את אנשי ה-Product אצלי בחברה לאפיין סוג הזה של מוצרים?”
      • בסוף, איך אנחנו מגדירים מוצר בתוכנה סטנדרטית?  אנחנו מגדירים “יש מסך, יש כפתור, עושים ב-Figma, הם לוחצים,  אז קורה ככה” . . . “
        • “אם יש את התהליך הזה, אז קורה את הדבר הזה” . . . 
    (רן) פה הכל טקסט . . .  זה הכל טקסט, הכל Chat. איך תגדיר את זה?
    • (עמית) נכון, וזה Chat שאתה יודע - יכולה להיות בו כל התנהגות, כן?
      • אי אפשר להגדיר עכשיו סט של מאות-אלפי כללים:  “אם הלקוח כתב ככה, אז תעשה ככה, אם הלקוח כתב ככה,  אז תעשה ככה”.
    • ובאמת דיברנו על זה קצת, ואני חושב שמשהו שהוא...  מה שעוזר לי לפחות להסתכל על זה בצורה קצת אחרת,  זה להסתכל על אפיון של מוצר GenAI באופן שהוא קצת יותר דומה אולי לכתיבה של תיאור משרה.
      • זאת אומרת,  אני לא רוצה להגדיר בדיוק את ההתנהגות של...  
      • כשאני כותב תיאור משרה, אני לא מגדיר בדיוק את ההתנהגות - ”העובד הזה, כשבאים, אומרים לו ככה, הוא יעשה ככה” - אלא אני כותב באופן כללי.
        • קווים כלליים, יכולות, דרישות מאוד כלליות - אבל בלי התנהגויות ספציפיות.
      • אבל אז מה שקורה זה שאני מגייס את העובד הזה, ואני שם לו מנהל - ואני מתחיל להסתכל מה הוא עושה בשטח אל מול ה...  בין אם זה אל מול הלקוחות או אל מול העובדים האחרים בארגון.
      •  ולאט לאט אני...
    (רן) . . . בוא נעצור פה,  בוא נעשה את התרגיל הזה:  אני עכשיו אהיה מנהל המוצר ואני אנסה להגדיר את דרישות התפקיד,  אוקיי?
      • אז Ella תצטרך להיות מסוגלת לדבר עם משתמשים של הבנק, עם לקוחות של הבנק, בשפה חופשית,  זה אחד.
      • שתיים - Ella צריכה לדעת עברית.
      • שלוש, Ella צריכה להכיר את הלקוח ולהבין איזה...  כמה יש לו בעובר-ושב, כמה יש לו בפקדונות או הלוואות.
      • וכו’.
    זאת אומרת, זה פחות או יותר ה...  - עוד לא דיברנו על היכולות שלה, עוד לא דיברנו על פעולות,  אבל אני אצטרך נגיד להגדיר דברים כמו “היא תצטרך להיות מסוגלת,  להציע הלוואות בהתאם כרגע למדיניות הבנק או בהתאם למבצעים שיש”.  זאת אומרת,  זה סוג ה-Spec שאתה מצפה כיום לקבל מאנשי מוצר?
    • (עמית)  אז אולי אפילו ברמה שהיא קצת יותר עמוקה.
    • הייתי מצפה לקבל Spec כמו “Ella תהיה מסוגלת לחפש במאגרי מידע ולתת תשובות בהתאם למאגר הזה”; “Ella תהיה מסוגלת להגדיר גבולות-גזרה של על מה מדברים ועל מה לא”.
    • עכשיו, את הגבולות-גזרה האלה אני לא צריך לקבוע מראש ב-Spec -  אני אגדיר אותם אחרי זה,  ב-Production.
      • אני אראה מה קורה,  אני אעשה אולי איזה פיילוט - ואני אבין מה גבולות-הגזרה שאני רוצה.
      •  אבל אני רוצה להגדיר שצריכה להיות היכולת להגדיר את גבולות הגזרה.
    (רן) “הכנה למזגן”,  או “שומר מקום” -  זאת אומרת,  צריכים להיות איזה שהם Guardrails או גבולות-גזרה,  אנחנו נדע אחר כך מה הם בדיוק.דרך אגב יכול להיות, במאמר מוסגר, שחלק מהם יהיה מאוד מאתגר לפתח - זאת אומרת,  יש guardrails שהם לא טריוויאליים בכלל - אבל זה בטוח יהיה n גדול מ-1 של Guardrails. . . .
    • (עמית) כן -  וגם אנחנו רוצים להגדיר בעצם שתהיה לה מודל את היכולת להבין שהיכולת הזאת בכלל קיימת, כן? זה נראה לי הדבר המשמעותי יותר.
    (רן) כן, הבנתי.  כלומר, ברגע שאתה...  נכון.  זאת אומרת,  יש פה איזשהו אתגר מוצרי: ברגע שמשתמש נמצא מול תיבת-טקסט נקייה,  אז זה אחלה ממשק, מאוד נקי ויפה, אבל מה עושים עם זה עכשיו?  מה אני שואל אותה - על מזג האוויר?  על שערי-המטבע?  על טיסות ליוון? . . .  מה אני עושה עם הקופסת-טקסט הזאת?אז כשאתה מגיע ל-Google, כבר יש לך ציפייה, אתה יודע מה לעשות.  כשאתה מגיע היום ל-ChatGPT אתה גם יודע מה לעשות -  אבל כשאתה פעם ראשונה רואה את Ella,  אתה לא כל כך בטוח מה לעשות,  אז צריך לעזור ללקוח להבין מה עושים עם זה.
    • (עמית) לגמרי - וזה גם אחד הדברים שאנחנו עבדנו כדי לפצח אותו בעצם, כן?  איך אנחנו מסבירים ללקוח מה המערכת יכולה.
    • אז אנחנו,  כשמישהו נכנס, אם אתה לקוח של One-Zero ואתה נכנס ל-Chat,  במסך הבית אתה רואה כזה “שאלות לדוגמה” שאתה יכול לשאול.
      • פעם בכמה זמן אתה מקבל איזושהי נוטיפיקציה (Notification) מאפליקציה שאומרת לך: “רוצה לדעת מה קורה בחשבון?” או “הנה קרה איזה אירוע,  בוא תראה איך הוא משפיע עליך”,  או “שים לב, זה מה שהיה אצלך - בוא תראה איזה דברים אתה יכול בעצם לקבל  מהמערכת הזאת”.
      • וגם, אגב, במהלך שיחה ממש - זאת אומרת, יש לנו איזה מנגנון של כזה,  אנחנו קוראים לזה User Journey, כזה מסע הלקוח: שכשלקוח מנהל שיחה עם Ella, כל הזמן המערכת מציעה לו שאלות המשך שהוא יכול לשאול. 
      • עכשיו, השאלות האלה זה לפעמים שאלות שאמורות לעזור לו לקבל תשובה -  אם זה לכתוב את השאלה שלו בשפה שהיא,  כמו שאמרנו קודם, עם הטרמינולוגיה הנכונה או דברים כאלה.
        • אבל זה גם יכול להיות כדי לעזור לנו - בין אם זה לקדם את האג'נדות שלנו או להציג ללקוחות בעצם יכולות חדשות של המערכת.
    (רן) . .   סוג של Auto-Complete - עוד לפני שהתחלת לכתוב או יותר כמו “Auto-Complete רעיוני”.  כלומר, אתה לא צריך לעשות Copy-Paste, אבל זה רומז לך מה אפשר לעשות.גם במשקים ויזואליים לפעמים יש את הדברים האלה.  נגיד,  אתה רואה קרוסלה של תמונות ואחת מהתמונות חתוכה - בכוונה,  כדי שתבין שאפשר לגלול,  כדי שתבין שיש שם עוד,  שיש יותר תמונות בהמשך.  אז יש רמזים כאלה בהרבה ממשקים. 
    38:48 הפרודקט ועוזריהם מעמים אחרים
    (רן) ואולי גם עוד ממש ככה סעיף אחרון להיום: אחד הדברים שאמרת שגם מאפיינים זה שמי שכותב את הקוד ומי שמפתח - אולי לא נקרא לזה “קוד”, אבל שחלק מהמפתחים הם למעשה אנשי המוצר, או אולי אנשי ה-Support, אבל זאת אומרת שזה לא רק מהנדסי תוכנה אוקיי? זה לא רק Data Scientists, אלא יש Hook-ים לאנשים במקצועות נוספים, שגם הם  יכולים למעשה להשפיע על סביבת ה-Production - וזה By-Design.  כלומר, ככה בכוונה תכננתם את המערכת וככה זה עובד.  תוכל לספק דוגמאות כאלה?
    • (עמית) כן, אז התחלתי להגיד קודם ואולי ניגע בזה, גם לגבי עוד שלבים בתהליך הזה, בתהליך של פיתוח.
    • אני חושב שארגון הפיתוח צריך ממש לשנות את ה-Mindset שלו,  ולהבין שדברים נראים אחרת מאיך שהם נראו  לפני שנתיים או איך שהם נראים עכשיו שאנחנו מפתחים מוצרים אחרים.
    • ואחד הדברים האלה . . .  זאת אומרת, זה עובר מאפיון של המוצר ולעשות Design וטסטים
      • כשפתאום טסטים הם,  אתה יודע - “פתוחים”, כי התשובה שמתקבלת היא כל פעם שונה
        • וזה לא “טוב, יש קלט, יש פלט,  בוא נראה שהם זהים”,  אלא צריך מודלים שיבדקו שהתשובות שלנו הן טובות.
      • הניטור פתאום נראה אחרת . . .
    • ואני חושב שאולי המפתח, באמת, הגדול בזה ש-Ella כל כך הצליחה, זה שיש לנו את ההבנה הזאת שהמודל הוא משהו שדורש תחזוקה בProduction - אבל לא רק תחזוקה שהיא טכנית.
      • זאת אומרת, זה לא Service שאני צריך לוודא שהוא כל הזמן באוויר - יש לי אירוע של ניהול שאני צריך לעשות אותו כמו שאני מנהל עובדים אנושיים.
        • ואני לא מכניס עובד לארגון שלי ואומר לו “תפאדל, דבר עם לקוחות - מפה הבמה שלך ואני אפגוש אותך עוד שנתיים”.
        • כל הזמן יש ניטורים - עוברים על השיחות שלו,  נותנים לו הנחיות,  מעדכנים אותו על מוצרים חדשים,  עושים התאמות לפעמים בידע שחשוף אליו.
        • זאת אומרת, כל הזמן הדבר הזה קורה - והוא לא קורה על ידי אנשים טכנולוגיים, הוא קורה על ידי אנשים מה-Business.
    • ופתאום, כשיש עכשיו מבצע חדש או כשיש מוצר חדש או כשיש איזה יעד עסקי שמשתנה, מי שצריך להכניס את השינויים האלה במערכת, נקרא לזה הסוג החדש של הפיצ'רים למערכת - זה פתאום אנשים שהם עסקיים.
      • זה אנשים שהם . . . ב-One-Zero,  זה אנשים שהם היו בנקאים בעבר, אנשים שהגיעו מחטיבת השירות.
      • אנשים עסקיים, שעושים את השינויים האלה כל הזמן. 
    • ואתה יודע - כשאנחנו מפתחים תוכנה, יש לנו כלים,  יש לנו תהליכים, רוטינות . . .  אף אחד לא יעלה ל-Production קוד שלא נכתבו עליו טסטים ולא עבר Review והוא לא מנוהל באיזה Version Control, נכון? [נכון?]
    • אבל פתאום, כש”הקוד החדש”, נקרא לזה ככה -  זה עדכונים, בין אם זה של רכיבים, של Prompt-ים, של הנחיות,  של Guardrails וכאלה, ובין אם זה ממש דברים שהם בליבת המוצר, עדכונים עכשיו של ידע שנמצא ב-Knowledge Base שלנו, ב-Vector Database שלנו.
      • האופן שבו הוא כתוב משפיע בצורה מאוד דרמטית על האופן  שבו המודל יהיה מסוגל לענות לשאלות של לקוחות אחרי זה.
      • ולכן גם פה צריכים לקחת את כל התהליכים של התוכנה ולהטמיע גם באזורים האלה.
    (רן) כן, אז אתה למעשה מדבר על ”ניהול איכות-הידע”, באיזשהו מובן. כלומר, אחד - שלא ייכנסו טעויות; ושתיים - שלא יהיו . . .  זאת אומרת,  מניח שיש עוד, אבל בין השאר גם שלא יהיו כל מיני Artifact-ים של שגיאה.  נגיד: במקרה מחקתי את הפסקה,  לא התכוונתי,  לא שמתי לב ועשיתי Commit וזהו,  נמחק לי איזשהו Block של טקסט שהוא היה חשוב. ואף אחד לא עשה לזה Review, כי זה פשוט נכנס ישר ל-Database . . .  אז זהו, אז עכשיו אף אחד לא יודע בכלל מה קרה, אין לך שום Trace של הסיפור הזה. אין לך Deployment, אין לך Commit Log, אין לך Versioning - כי אין גירסא, כי זה Data. אז יש פה הרבה אתגרים . . .
    • (עמית) אני חושב שאחד הדברים שאנחנו כן עשינו זה שאנחנו ממש מתייחסים לזה כמו עוד קוד.
      • שאומנם כותבים אותו אנשים שהם לא מתכנתים במקצוע שלהם - אבל בסוף זה . . . נקרא לזה “קוד Production”
      • וזה יכול להיות הידע וזה יכול להיות הנחיות או יעדים או קונפיגורציות כאלה ואחרות - כל האזורים שבהם ה-Business פוגש את הטכנולוגיה,  המקומות שבהם Ella מקבלת את ההוראות העסקיות לאיך שצריך להתנהל.
    (רן) כן.
    43:24 עוד קצת One-Zero לסיום
    (רן) אוקיי - סופר מעניין, אבל אנחנו כבר חורגים הזמן, אז אנחנו נצטרך לסיים.אז אולי ככה לפני סיום, עוד כמה מילים על One-Zero -  מגייסים, מחפשים? איפה אתם נמצאים?  ספר לנו.
    • (עמית)  כן, אז מגייסים, מחפשים: 
      • אנשים שאוהבים AI, שזה “בעצמות שלהם”.
      • אני חושב שבתחום הזה, שהוא כל כך מתפתח - ברמה יומית יוצאות טכנולוגיות חדשות ושיטות חדשות ומודלים חדשים, מודלים יותר חכמים, יותר זולים, יותר מהירים - אנחנו צריכים המון Passion לדבר הזה כדי, נקרא לזה, לעמוד בקצב.
      • זה סופר-מעניין,  סופר-מרגש, לעבוד על דברים שהם ממש ממש בקצה הטכנולוגי 
        • ברמת של לפעמים לפתור בעיות, ואז אחרי כמה חודשים לראות שמישהו נתן שם לפתרון שמצאת באיזה מאמר או באיזה מוצר אחר.
      • זה ספרינט מטורף, מאוד מאוד ארוך. אני מאוד מאוד נהנה מזה וממליץ לכולם להצטרף.
    (רן) ספרינט שהוא מרתון - הכי כיף.
    • (עמית)  כן, ספרינט באורך של מרתון . . . 
    (רן) כמו שאומרים - מתחילים הכי חזק ולאט לאט מגבירים.
     טוב, אז תודה רבה לך ובהצלחה![קישור לקובץ mp3] האזנה נעימה ותודה רבה לעופר פורר על התמלול!

    45 min
  • 491 Precise GenAI for Finance, with Oded from Datarails
    פרק מספר 491 של רברס עם פלטפורמה, שהוקלט ב-11 בפברואר 2025, יום חורפי במיוחד. אורי ורן מארחים בהפסקת אש את עודד מחברת DataRails לשיחה על איך עושים AI (חביב-הקהל בפרקים האחרונים) בעולם ה-Finance והאתגרים המאוד מיוחדים בעולם הזה. 🎗️

     00:50 עודד ו-DataRails (רן) אז קצת לפני שנצלול פנימה - עודד, קצת עליך וקצת על החברה, שנכיר?
    • (עודד) טוב, אז אני עודד הר-טל.  
      • בן 49, זה גיל שעוד אפשר ככה להגיד חלש, לא לעוד הרבה זמן.  נשוי, אב לארבעה, גר בבית חשמונאי, בשפלה. 
    • בעולמות האלה - בעולם ההייטק - כבר יותר מ-25 שנה. 
      • עשיתי מספר משרות, בעיקר בעולמות של פיתוח אלגוריתמים, פיתוח תוכנה, ניהול פיתוח . . . 
      • ולפני עשר שנים חברתי לדידי גורפינקל ואייל כהן, והקמנו ביחד את חברת DataRails, כשאני בעצם משמש בה כ-CTO, המוביל הטכנולוגי.
      • וזהו, מאז אנחנו שם . . .
    (רן) אוקיי, אז אמרנו “בעולם ה-Finance” - קצת יותר פרטים, מה אתם עושים?
    • (עודד) אז בעצם DataRails היא חברה שמוכרת מה שאנחנו קוראים “FinanceOS”: מערכת הפעלה פיננסית לארגונים.
      • הכוונה היא בעצם ללכת למחלקות הפיננסיות, שבעצם קיימות בכל ארגון, ולמכור להן . . . 
      • אנחנו התחלנו במקור בתוכנה אחת, בתוכנה בתחום שנקרא Financial Analytics and Planning, FP&A, שבעצם עוזרת לאנשי ה-Finance לעשות את הדוחות הכספיים, לעשות אנליזות של הנתונים הפיננסיים שלהם.
      • והיום, עם גדילת החברה, אנחנו גם מנסים, ובעצם מפתחים סוויטה שלמה של מוצרים, שכולם מיועדים ל-CFO Office.
      • אנחנו מוכרים לחברות בדרך כלל קטנות-בינוניות - נגיד סדר גודל של 100-200 עובדים - בעיקר בארצות הברית . . .
    • (רן) כלומר, לצורך הדיווח, לצורת התכנון, לצורך ... 
      • (עודד) כן, בדיוק. אני מניח שהרבה מכירים את מה שנקרא, נגיד, “דוח רווח או הפסד” או “דוח תזרים מזומנים”  . . .
        • אז זה דוחות שבעצם כל חברה עושה - פעם בחודש, פעם ברבעון - והתהליכים של להכין את הדוחות האלה הם תהליכים שהם, ככל שהחברה יותר מסובכת, זה תהליכים מסובכים, שהם מועדים להרבה מאוד טעויות.
        • אבל הם בעצם מספרים את הסיפור של החברה.
    (רן) אמרת “טעויות” - אמרת “AI” . . . . תיכף נגיע . . .
    • (עודד) גם AI עושה הרבה טעויות, כן. 
    (אורי) אבל איפה המקום של התוכנה שלכם, או הפתרון שלכם, לעומת ה-ERP של החברה, או...  ?
    • (עודד) אוקיי, אז בעצם מערכות ה-ERP הן מערכות שמאפשרות בעצם . . .  הן בעצם “מנהלות”אני אקרא לזה, את הטרנזקציות, את הפעולות השונות שקורות בחברה.
      • אבל בסופו של דבר, אותה מחלקת Finance - אחד הדברים שהיא עושה, זה שהיא לוקחת את הנתונים מה-ERP
        • בעצם “שואבת אותם” - למעשה, מערכות ה-ERP הן מערכות-מקור למערכת שלנו, אחת ממערכות המקור.
      • ובעצם מתחילים לבנות על גבי המידע שמגיע מהמערכות האלה אנליזות שונות - בואו נעשה אגרגציה (Aggregate) של כמה הרווחנו החודש, כמה הפסדנו החודש . . . 
        • בואו ננסה להשוות את זה לתקציב שלנו, לתכנון שלנו.
        • בואו נחתוך את זה עם המידע מה-Salesforce, או מידע ממערכת אופרטיבית אחרת, נבין איפה אנחנו חזקים, איפה אנחנו חלשים.
        • ממש, נעשה אנליזה של  . . . 
      • בעצם, נסתכל על הפעילות המסחרית של החברה דרך עולם ה-Finance. 
    (אורי) ולכן זה יותר מתאים לפונקציות כמו FP&A . . . ומה המקומות החדשים, האחרים, שאתם נכנסים אליהם?
    • (עודד) אז ברגע שבאמת הבנו שהמקום שלנו זה אותו משרד ה-CFO, אותו המקום שבו בעצם מנהלים את הכספים, אז יש עוד סט של צרכים משלימים.
      • כמו למשל ניהול ה-Cache, ניהול ה... זאת אומרת - חשבונות הבנקים: מה נמצא, כמה נמצא בפקדונות, . . . 
    (אורי) . . . מה שנקרא “Treasury” . . .
    • (עודד) Treasury זה מונח שאני חושב שיותר מתאים לחברות גדולות, אבל באופן כללי, Cache Management.
      • חברה, בטח חברה שהיא בינלאומית, או שיש לה כמה סניפים - בדרך כלל יש לה כמה חשבונות בנק, לפעמים גם עשרות.
      • אז למשל, סוג אחד של תהליכים שמשתלב באותו תהליך של Reporting זה ניהול המזומנים, ניהול Budgeting ו-Forecasting, כל נושא של... 
    (אורי) Budgeting ו-Forecasting זה “הפורטה”, זה FP&A . . . 
    • (עודד) כן, זה חלק - למרות שיש אומרים שה-FP&A “הקלאסי” זה באמת לעשות את הדוחות של מה שאנחנו קוראים “ה-Actuals”, מה שקרה “באמת”, וזה עוד נדבך של ה... 
    (אורי) ה-Planning הוא יותר ה-Budgeting ו-Forecasting . . .
    • (עודד) כן, כל עולם ה-Planning. 
    • עולמות אחרים שאנחנו מסתכלים -  מעולמות של Expense Management, ועוד כהנה וכהנה.
    (אורי) Tax?
    • (עודד) Tax, אני חושב, זה יותר חלק מעולמות שכבר קיימים בדוחות הקיימים.
      • אנחנו היום לא מסתכלים על איזשהו משהו ספציפי בכיוון הזה.
      • כל מיני Workflow-ים שקורים ב... 
    (אורי) נראה לי שכשה-AI יגיע ל-Tax, הוא יחתום ויתור, הוא יתפוצץ . . . . הוא יגיד “עד כאן”.
    • (עודד) אני חושב . . .  אני חושב שדווקא תתפלא, כי אני חושב שבסופו של דבר - וזה אולי נספר בהמשך על אחד הדברים שאנחנו מסתכלים עליהם - אבל עשינו איזשהו סקר.
      •  אצל הלקוחות שלנו, הרבה CFO-ים - איך אתם משתמשים היום ב-AI הזמין, ב-ChatGPT?
      • אז אחת התשובות שדי הפתיעו אותנו זה שאנשים מתייעצים בו בנושא של תכנוני מס . . . 
      • מכיוון שבסופו של דבר, יש לו גישה לספר החוקים של אותה מדינה שבה הם נמצאים, ולפרסומים השונים של הממשל בנושא מס - אז דווקא באופן מפתיע, יש שם משהו שיכול להיות מעניין.
    (אורי) זה הגיע גם לרשות המיסים בישראל? כי פה שערי-מיסוי נקבעים על השולחן מול ה... 
    • (עודד) תראה עוד פעם - זה משהו שהוא כרגע . . . משהו שאנחנו עוד בשלב של Exploration של הדבר הזה.
      • אבל אני מניח שכן - בסופו של דבר, דאטה זה דאטה.

    06:55 הכלים החדשים
    (רן) אז אני אעצור שנייה את שני אנשי ה-Finance פה ואני אשים רגע את “כובע המהנדס” . . .(אורי) בחיים לא אמרו לי דבר כזה, רן . . . 
    • (עודד) . . .   זה קצת מעליב, אני קם ועוזב . . . 
    (רן) . . . אני מנסה לעקוב אחרי מושגים לאט לאט. אז בעצם, מה שאני שומע פה זה כך - קודם כל, אתם מייצרים איזשהו כלי שעוזר ל-CFO ולמחלקות שלהם להיות פרודוקטיביים; הדאטה שאיתו אתם מתעסקים, אני מניח שהוא הרבה מאוד טבלאי, חלקו טקסטואלי ואולי גם סוגים אחרים; ואתם נותנים כלים - ואני מניח שהקיום שלכם היה עוד לפני המצאת ה-AI ב-Incarnation הנוכחי שלו.אבל בוקר אחד קמתם וראיתם, רגע, אולי אפשר להשתמש בכלים החדשים שיצרו פה כדי לשפר את המוצר. אז בוא ניכנס לסיפור כזה, כלומר- איזה פיצ'רים בתחום הזה בחרתם לאמץ, ואיפה זה היה מאתגר, ומה למדתם משם?
    • (עודד)  אז האמת היא שכמו שאתה אומר - הבוקר הזה באמת הגיע, אי שם בתחילת 2023.
    • אני חושב שאנחנו - כמו בערך כל התעשייה - עמדנו נפעמים מול אותו כלי מופלא, אותו ChatGPT שהתחיל להדהים את כולנו, ובאמת התחיל לגרות את הדמיון שלנו.
    • ואנחנו - אחד הדברים שעוד לפני שידענו מה אנחנו רוצים לעשות, קיבלנו החלטה שאנחנו All-In בדבר הזה.
      • זאת אומרת שברור לנו שהדבר הזה הולך לשנות את העולם, והוא ישנה תחומים רבים בתעשייה.
        • ובעצם כל כלי שאנחנו מכירים ינסה לאמץ את הטכנולוגיה הזאת בשלב כזה או אחר.
      •  ואנחנו אמרנו שאנחנו - בעולם שלנו, ב-Domain שלנו - רוצים להיות הראשונים והמובילים בתחום הזה.
    •  ולכן, הדברים הראשונים שבעצם עשינו, זה קודם כל אמרנו, אוקיי, בואו אחד - נלמד את התחום הזה, שקצת נבין מה ומי.
      • כי עוד פעם, זה . .  אני מניח שזה תחום שלמעט אנשים שהתעסקו בעולמות של NLP ועולמות כאלה, הוא חדש לרובנו.
      • למרות שנגיד אני - אני במקור הגעתי מרקע של אלגוריתמים, בכלל בעולמות של עיבוד תמונה, שהיו כותבים קוד ב-C ו-++C, זה לא עולם שקיים היום . . .
    • אז התחלנו לדבר עם הרבה מאוד אנשים - מסתבר שיש הרבה חבר'ה שגם משמשים כיועצים בעולמות האלה, וגם אנשים ש . . . 
      • עוד פעם - בתחילת 2023, לא היו הרבה אנשים שהתעסקו ב-Prompt Engineering, או בלעבוד עם מודלים כאלה, כי זה היה משהו מאוד חדש.
        •  והיו אנשים שהם היו יותר מהעולם היותר ותיק של אימון מודלים, של בעצם... 
        • (רן) Machine Learning “קלאסי”ו-Data Science, כן . . .
    • (עודד) ואני חושב שמהר מאוד הבנו כמה שזה תחום מאוד מאוד מעניין, ומאוד . . . 
      • בטח כמהנדס זה נראה . . .  ובן אדם שבאמת הרקע שלו, ומאוד אוהב מתמטיקה, ודברים כאלה - זה היה נראה מאוד מאוד מפתה להתעסק בזה.
    • אבל אנחנו חושבים שמהר מאוד מבינים, או לפחות מגבשים איזושהי הכרה, שבעצם העולם הזה של לאמן מודלים, לאמן כל מיני כאלה דברים, הוא עולם שמישהו אחר כבר עושה בשבילנו.
      • ואנחנו יותר צריכים להתמקד באיך לנצל את העולם הזה - לא כל כך יודעים למה, כן? ברור לנו שרוצים לנצל את זה לתחום שלנו, אבל... 
      • ואנחנו כן מתחילים דווקא לחפש חבר'ה שמצד אחד מושך אותם העולם הזה
        • הרי יש הרבה מאוד חבר'ה שאיך שיצאו “ה-ChatGPT-ים” והתחילו לחשוף API-ים, ויצאו כל הפרויקטי Open-Source הראשונים, הם ישר קפצו על זה.
        • אז התחלנו לחפש חבר'ה כאלה שזה מאוד מושך אותם, אבל מהנדסים. 
    (רן) זה מעניין. אני רק אתן פרספקטיבה - בעצם, אתה אומר, היה לכם - יש לכם - מוצר, היה לכם מוצר, והייתה טכנולוגיה חדשה. ואז חיפשתם פיצ'רים שיתאימו לאותה טכנולוגיה - כלומר, באתם ואמרתם “אוקיי, זו טכנולוגיה שאנחנו רוצים שתהיה לנו בחברה, אנחנו עדיין לא יודעים למה, ובואו נמצא, בואו נבנה את הפיצ'רים שייטיבו עמה”.
    • (עודד)  נכון, ממש. התגבשה בנו איזושהי הכרה שזה הולך לשנות את העולם.
    • אנחנו דיברנו עם המשקיעים שלנו, ואמרנו “אנחנו מוכנים, אנחנו רוצים להשקיע”
      • ממש “לצבוע” סכום מסוים של השקעה לדבר הזה, וללכת חזק מאוד על הכיוון הזה.
    (רן)  ואנשי Machine Learning ו-Data Science “קלאסיים” - היו בחברה? זאת אומרת, היו לכם?
    • (עודד) לא, ובאמת במהלך תהליך הגיוס, אני לפחות חשבתי, והיום אני אגיד ש...
      • ההחלטה הזאת - אני כן מבין שקצת לא ברור לי אם היא ב-100% נכונה, שהכיוון זה פשוט ללכת ולגייס צוות של מהנדסים
        • חזק, שגם יש להם את הרצון להיכנס לעולם חזק, ולבנות את ה-Ecosystem ואת ה-Infrastructure סביב הדברים האלה.
      • אנחנו כן . . . אחד מחברי הצוות - גייסנו כן איש שמגיע מהתחום, מעולם ה-Data Science, ה-Data Analytics, אבל לא מעבר לזה.

    12:01 פיצ'רים בשביל לפתח ב-AI או פיצ'רים שהלקוחות צריכים?
    (אורי) אבל יש לי שאלה - אני לא הצלחתי להבין אם פיתחתם פיצ'רים בשביל לפתח ב-AI, או פיתחתם פיצ'רים שהלקוחות צריכים?
    • (עודד) אז אנחנו בשלב הזה, כשאני . . . עכשיו אנחנו בסיפור, היינו באמת בתחילת הדרך.
    • ואמרנו “אנחנו נמצא מה לפתח” - אבל ברור לנו שהתחום הזה של ה-AI, אותם מודלי שפה גדולים, הולך לשנות את העולם.
      • אנחנו עוד לא יודעים איך לרתום את זה אלינו, אבל אנחנו לא נחכה שיבוא איזה לקוח ויבקש - אלא אנחנו ננסה לפתח כל מיני רעיונות ופיצ'רים בעולם הזה, ונראה לאן זה מוביל.
    (אורי) אבל ראיתם את הלקוח, ב . . . ? 
    • (עודד) כן, בסופו של דבר ההסתכלות שלנו אמרה שאנחנו בסוף יושבים על כמות גדולה של דאטה של כל לקוח, דאטה שהוא דאטה מעניין.
    • וה-Vision - אני אגיד “המאוד אבסטרקטי” - היה, בסופו של דבר, שיש אנשים שיושבים ומנתחים את הדאטה הזה, ומנסים להבין מה קרה בעסק.
      • להגיד “המכירות עלו כי הסניף ב - לא יודע מה, באוקלוהומה - פתאום סגר עסקאות מאוד מאוד גדולות, הרבה יותר מאשר ברבעון הקודם.
      • או שעכשיו שולי הרווח עלו כי עלויות, לא יודע מה, רכישת החומרים,  עלתה בככה וככה אחוזים.
    • אז ברור לנו שבסופו של דבר אנשי ה-FP&A, אנשים שעושים את זה, הם מסתכלים על הדאטה ומנסים לנתח אותו.
      • החלום שלנו היה “בואו נבנה AI-based FP&A”. זאת אומרת, מישהו שיוכל לעשות  . . . 
      • (רן) “אנליסט אוטומטי” . . . 
      • (עודד) בדיוק, אנליסט.
    • וצריך לזכור שכשאני אומר “FP&A” - זה בדרך כלל פונקציה שנמצאת בחברות שהן קצת יותר גדולות . . .
    (רן) מה הראשי תיבות, דרך אגב?
    • (עודד)  Financial Planning & Analytics.
      • בדרך כלל זו פונקציה שנמצאת בחברות שהן יותר גדולות מהחברות-Target שלנו.
    • וכאן אמרנו “הנה, כמו שהמערכת שלנו עד היום היא מערכת שעושה קצת אוטומציה ועוזרת לאנשים האלה”
      • בעצם לקצר להם - לקצר תהליכים, לקצר את הזמן, לאפשר יותר FP&A בחברות שלא יהיו יכולות להרשות לעצמן
      • אז אם אתה תביא להם איזשהו אנליסט AI, אז גם את חלק מעבודת האנליזה נוכל להציע... 
    (רן) כן, וככה אני מניח זה גם יכול להיות יותר אטרקטיבי לחברות הקטנות יותר, שאולי לפני זה לא היה להן כסף לשלם לבן אדם במשרה,  ועכשיו... (אורי) כי זה Practice טוב - חברה ציבורית שצריכה לתת תחזיות לבורסה חייבת את הפונקציה הזאת, כי ככה היא עושה את התחזיות שלה ואת כל ה-Planning שלה. חברת - לא יודע מה, סטארטאפ בשנתיים הראשונות שלה - לא צריכה ולא ... 
    • (עודד) ברור. אני יכול להגיד לכם שאצלנו בחברה, למשל, במשרד ה-CFO, רק לאחרונה יש לנו איש FP&A במשרה מלאה, זאת אומרת שבעצם... 
    (אורי) הסנדלר הלך יחף . . .
    • (עודד) כן, כי חברות בגודל מסוים, לא באמת צריכות, זאת אומרת... 
    (רן) לא, אבל אתה מדבר על טכנולוגיה, אני דווקא חושב על, לא יודע - רשת בתי קפה עם עשרה סניפים, רשת חנויות נעליים . . . זאת אומרת, אתה יודע, לא יודע אם אלה הלקוחות שלכם, אבל... 
    • (עודד) דבר ראשון - אלה הלקוחות שלנו.
    • זאת אומרת, בסופו של דבר, אחד הדברים הנחמדים שאתה מגלה, זה שרוב הלקוחות בעולם הם Low Tech, אוקיי? 
      • זה מפעלים ורשתות של חנויות . . . 
    (אורי) . . . . אבל זה לא אומר שאין להם יעדים פיננסיים. 
    • (עודד) לכולם יש . . . להיפך, יש להם רק יעדים פיננסיים . . .
    (רן) זהו, בדיוק . . .  לכולם יש - אבל לא כל אחד יכול להעסיק אנליסטים ואנשי FP&A. 
    • (עודד) כן, אבל העבודה הזאת מתבצעת תמיד.
      • זאת אומרת, בין אם זה ה-CFO שיושב בישיבת הנהלה ואומר “אוקיי, בואו נסתכל על הביצועים שלנו ברבעון האחרון”, ובין אם יש איזשהו מישהו שעוזר לו, שעושה את זה כ-Part-Time Job, ובין אם יש בן אדם שהוא Dedicated.
    (רן) כן, אז זה בעצם המוצר הראשון שהחלטתם לבנות?
    • (עודד)  אז אני אומר - זה היה החזון שלנו ל-AI, אבל ברור לנו היה שהדרך לשם . . . 
      • צריך לזכור - אנחנו מדברים בתחילת 2023: עוד למעט API ל-Completion ב-OpenAI, לא היה הרבה.
    • ובעולם הזה בדיוק התחיל להתעורר ה-Ecosystem של ה-Open Source
      •  פרויקטים כמו LangChain ו-LlamaIndex וכאלה - רק התחילו ממש להיות Commit-ים ראשונים.
    • מהר מאוד גיבשנו צוות, יחסית של חבר'ה מאוד מנוסים - כי זה מאוד אטרקטיבי לאנשים לבוא ולשמוע “הנה, אנחנו הולכים להיות פורצי-דרך ב... “
    (רן) … “אתם יכולים לעבוד בזה - ואפילו נשלם לכם!”
    • (עודד)  נכון, נכון. והחבר'ה התחילו לבנות.
    • והדבר הראשון שבעצם ניסינו לעשות, הוא היה משהו שהוא משהו מאוד מאוד פשוט - מעין איזשהו Chat מאוד בסיסי, שלקוח יכול לשאול כל מיני שאלות מאוד מאוד בסיסיות על הנתונים הפיננסיים שלו.
      •  לא יודע מה - “בוא, תשווה לי את הרווחים השנה הזאת לשנה שעברה”
      • ואותו - קראנו לזה “Genius”, כן? למרות שהוא היה רחוק מאוד מלהיות גאון, אה... 
      • (רן) “Baby Genius” . . . 
      • (עודד) זה Baby Genius, פשוט אה... 
      • בעצם מה שעשינו, אני חושב ש... אתה יודע, היום בדיעבד, כשמדברים על עולמות של Agent-ים וכאלה, זה די ברור שזו הארכיטקטורה שהלכנו.
        • פשוט עוד לא אמרו את השמות . . .
        • (רן) עוד לא היה לזה שם
        • (עודד) עוד לא היה לזה שם, אבל בעצם זה היה משהו שהוא בין Agent ל-RAG - זאת אומרת, הוא מהשאלה הבין איזה שאילתא הוא צריך, למעשה באמצעות הכלים שיש כחלק מהפלטפורמה שלנו, כדי לתשאל ולהביא את הדאטה הרלוונטי.
        • ואחרי זה עושה את ה-Generation - לוקח את הדאטה ומנסה להגיד “תשמעו, הנה - אני רואה פה עלייה”.
    (רן) אז פה אולי צריך להגיד שהיום התהליך הזה יחסית מובנה - אם מדברים על Agent או כל דבר כזה, אז יש קונספט שנקרא Tools, שאתה יכול לבוא ולהגיד לו “הנה  יש לך את הכלים האלה”. נגיד, שאילתא ל-Database או Search ב-Web או כל דבר כזה. זאת אומרת, יש לו אוסף של כלים שבהם הוא יכול להשתמש, והוא יודע להפעיל אותם, וכמובן, אתה יכול לבנות את ה-Prompt ולעשות משהו כמו RAG, זאת אומרת, לאסוף את כל הנתונים, ובסוף לבקש ממנו “להקיא” אותם בצורה שהיא “Human-Readable”.
    • (עודד) נכון, ואחד הדברים - היום, כשאנחנו מסתכלים אחורה - אנחנו רואים שאנחנו בעצם מבצעים את ההתקדמות שלנו באמת במקביל לדברים האלה.
    • זאת אומרת, במקור, אנחנו התחלנו עם לבנות את ה-Tool-ים האלה, או את התשתית ל-Tool-ים הזאת, בעצמנו.
      • אני לא זוכר אם אתם זוכרים, אבל הייתה, יצא איזשהו פרויקט - AutoML נדמה לי קראו לו, AutoGen.
      • איזשהו פרויקט מאוד מאוד ראשוני של מין פלטפורמה כזאת, שיודעת להשתמש בכל מיני Tool-ים
      • שאתה מבקש ומתחנן מה-API של OpenAI שיחזיר לך את התשובה ב-JSON,  אבל אחרי זה אתה צריך להריץ עליה כל מיני פונקציות ולידציה (Validation), ולידטורים, כדי לנסות ו...
    (רן) רק נסביר - כדי להיות מסוגלים להפעיל את הכלים האלה . . . מה זה כלים? זה בעצם פונקציות, פונקציות ב-Python. אתה צריך לקבל את המידע בצורה שהיא Structured, אוקיי? איזשהו JSON. ואם לא תקבל את זה ככה, יהיה מאוד קשה להפעיל. עכשיו, פעם, OpenAI ואחרים לא כל כך ידעו להחזיר JSON “יפה” . . . 
    • (עודד) למעשה, הם היו מחזירים טקסט - וכשהיית מבקש ב-JSON, אז הוא היה אומר לך, “הנה ה-JSON שלך - האם תרצה עוד משהו?”, ואיכשהו היית צריך להיפטר מה”האם תרצה עוד משהו?”, ולוודא שבאמת הוא... 
    (רן) . . . ולהתפלל שזה באמת JSON . . .
    • (עודד) נכון, אבל מהר מאוד אני חושב ש-OpenAI הבינו שמפתחים וקהילת המפתחים - זה מה שהם רוצים וכמהים אליו.
      • ולאט לאט הם עשו בעצם אפשרות להגדיר סכמה של כאלה כלים, והם מבצעים את ה... בעצם, מוצאים את הפלט שמאפשר את הכלים.
    (רן) אז היום קוראים לזה Tools או פאנקציות.  Function-Calling.
    • (עודד) נכון, וזה מובנה כבר, והוולדציות (Validation) נעשות בצד שלהם, וזה בהחלט מוריד הרבה מאוד כאבי ראש שהתמודדנו איתם בתחילת הדרך.

    20:07 היה היה פעם, לפני יומיים
    (רן) כן, אבל פה אנחנו נכנסים לאיזושהי דילמה הנדסית שקצת רמזת - אתה בא ואומר “אוקיי, אנחנו רוצים לפתח. אבל במקביל, העולם גם מתקדם, אז האם אנחנו נמשיך לפתח את שלנו, או שנאמץ את מה שבחוץ?”(אורי) אני רק רוצה להגיד - אתה לפני שנייה אמרת “פעם, OpenAI . . .”  זה היה F*cking לפני יומיים . . .
    • (עודד) כן, ממש. 
    (רן) רגע, איזה . . . מה עכשיו? Qwen כבר יצא . . .(אורי) יש פה את הדילמה הזאת, שרן אומר “אני אפתח, וזה רודף אחריי מהר מאוד”. זה תמיד היה, אבל לא בקצבים האלה. 
    • (עודד) נכון, אני חושב שזה המהירות שבה החברה הזאת משחררת דברים - אנחנו יודעים שהיא משחררת מודלים כל הזמן.
      • כשמודלים זה חתיכת אופרציה להרים - אז בטח את ה-Ecosystem שהם שמים מסביב למודלים, הם משחררים בצורה מאוד מאוד מהירה.
      • ונראה לי שהם מאוד מאוד קשובים, בעיקר לקהל המפתחים - ודי מהר משחררים דברים שמגיעים מהקהילה.
    • דרך אגב, אנחנו היום, מכל מיני סיבות של Compliance ודברים כאלה, אנחנו לא עובדים ישירות מול מול OpenAI.
      • אתם בטח יודעים שכל המודלים שלהם מתארחים ב-Microsoft, ב-Azure, ולמעשה שם מקבלים בעצם את כל המעטפת של ה Compliance, ה-GDPR, כל ה-Certificate-ים, זאת אומרת.
    (רן) גם ב-Azure, לא רק ב-Azure, נכון? 
    • (עודד) אני לא יודע אם יש עוד מישהו שמארח מודלים . . .
    (רן) לא, הם בעצמם. אבל מבחינך - שם אין לך את ה Compliance ואת ה... 
    • (עודד) . . . ואת ההתחייבות שהם לא מאמנים על הדאטה שלך ודברים כאלה,
    • אז אני רוצה להגיד שגם Microsoft מתקדמת במהירות אדירה.
      • ה-Gap  בין המודל, כשמודל משוחרר ב OpenAI, לבין שהוא מגיע להיות זמין כבר ברוב ה-Region-ים הראשיים של Azure, זה לפעמים שלושה-ארבעה שבועות, שזה מאוד מאוד מהיר.
    (רן) כן, אבל אני דווקא התייחסתי יותר לתחרות שיש לך עם הפרויקטים ב Open Source שהזכרת מקודם, כמו LangChain ו-LlamaIndex ו-Agent Frameworks שונים שלמעשה, פיתחו דברים די דומים לשלך. אולי עשו איזשהו משהו קצת יותר גנרי ואתה עשית משהו יותר ספציפי אליך, אבל קיימת הדילמה הזאת של “רגע, אני פיתחתי פה איזשהו כלי שבעצם הוא די גנרי - למה שאני לא אשתמש במשהו גנרי שנמצא שם בחוץ?”אז איך חשבתם על זה?
    • (עודד) אז תראה, לנו זה קצת התנגש דווקא בסוג האנשים שהבאנו.
    • כי הגיעו לנו . . . כמו שאמרתי, הצלחנו, היה לנו באמת מזל לשים את היד על צוות של מפתחים מאוד מאוד חזקים.
      • אבל החבר'ה האלה - הם אמרו לי, כשראיינתי אותם, הם אמרו “אנחנו אנשי Node, אנחנו כותבים ב-TypeScript, אנחנו לא מתעסקים בשטויות שלכם ב-Python” . . . 
      • דרך אגב, רוב ה- Backend אצלנו בחברה הוא רשום ב-Python, אז ככה ש... 
    • ואנחנו בהתחלה זרמנו - כי עוד פעם, לא היה כלום, אז מה זה משנה באיזה שפה אתה כותב?
      • והחבר'ה האלו רצו קדימה, ואני יכול להגיד שהם לקחו הרבה מאוד השראה.
        • זאת אומרת, הם כן . . .  בהרבה מאוד נקודות עצרו ואמרו “אוקיי, בואו נסתכל מה יש בעולם ה-Open Source, בואו נראה מה יש בעולם”,
        • מה מפתחים ב-LangChain, שבאמת באותה תקופה תפסה תנופה גדולה.
      •  אבל בסופו של דבר, הם הרבה פעמים במקום להתווכח, הם היו באים ואומרים “הנה, תראה - זה עובד אצלנו וזה כבר קיים, וזה כבר עושה את הדברים כמו שאנחנו רוצים, ולא כמו שחשב מי שחשב ב-LangChain לעשות”.
        •  כי עוד פעם, זה היה פרויקט שהוא היה די בחיתוליו.
    • ואני חושב שבסופו של דבר,  במשך הכמעט-שנתיים שעברו מאז, אז למעשה פיתחנו בעצם איזשהו Framework משלנו, שהוא באמת כתוב בעולמות של TypeScript.
      • שבעצם מממש חלקים מאוד מאוד גדולים ממה שאתה רואה שמגיע בעולמות ה-Open Source, בטח בעולם של ה-Agent-ים ובעולם של... 
    • ואני, אם היית שואל אותי לפני חצי שנה, הייתי אומר לך שיכול להיות שעשינו טעות.
    • היום אני כבר לא כל כך בטוח - כי אני כן רואה שגם הגענו לאיזושהי בשלות מאוד יפה.
      • וגם אנחנו עשינו את זה בצורה שהיא מספיק מודולרית, שהיום אנחנו מתחילים לחשוב איך אנחנו עושים Off-loading ל-Service-ים שהם כן מבוססי פלטפורמות שונות, להתנהגויות מסוימות שאנחנו כן רוצים לאמץ.
    • אז אני חושב שבסך הכל לא נפגענו יותר מדי. 

    24:47 הגאון וענייני עקביות
    (רן) כן, אז בואו רגע נחזור לדבר על הגאון, על ה-Genius. אז חברה של מידע פיננסי, וחשוב שהנתונים יהיו נכונים ומדויקים - ואולי אחד הדברים שידועים על מנועי-שפה זה שהם לא כל כך טובים בחשבון . . . הם בכלל לא כל כך טובים במספרים - הם מאוד טובים בטקסטים, אבל בדברים שקשורים בחישובים נומריים הם, איך נאמר, “קצת פחות”. היו שיפורים בשנים האחרונה, או בשנה האחרונה, אבל אתם בתקופה שלפני, אוקיי?(אורי) . . . והם גם פחות . . . הם לא קונסיסטנטיים (Consistent), לא תמיד קונסיסטנטיים, זאת אומרת - שזה מאוד מאוד חשוב.(רן) גם, כן. יפה, אז איך מתמודדים את גם זה? כלומר, לקוחות שלכם - לא מעניינת אותם סטטיסטיקה. הם רוצים תשובה, והם רוצים את אותה תשובה תמיד, והם רוצים שהתשובה תהיה נכונה. איך אתם מתמודדים עם זה? 
    • (עודד) אז מה שאנחנו בעצם עשינו, וזה בעצם הגיע לפרויקט-המשך שקראנו לו Insights - בעצם תובנות.
    •  הבנו שאנחנו, כמו שאמרתם, המודלים האלה הם...  הם לא אמינים והם לא טובים במספרים, ואם אנחנו רוצים לעשות אנליזות מספריות שהן מורכבות -  עוד פעם, מורכבות ברמה של Finance, לא רגרסיות ליניאריות מתוחכמות -אז עדיף שנעשה אותן בעצמנו.
    •  ולכן, מה שבעצם נוצר זה בעצם מעין משהו שמאוד מזכיר את אותו RAG מפורסם, רק ש... ואני מניח שאנשים מכירים מה זה RAG.
      • שרק שבשלב ה-Retrieval, במקום ללכת ולחפש טקסט באיזשהו Vector Database, הוא שלב שבעצם מפעיל את אותם, מצד אחד, מנועי הבאת-נתונים שיש אצלנו בתוך הפלטפורמה גם.
      • וגם הוספנו עוד שכבה של אנליזת-דאטה. זאת אומרת, אנחנו יודעים מראש איזה חישובים כדאי לעשות על הדאטה, כדי שהם יהיו מעניינים, או שהם יכולים להשתלב בתוך ה-Context של אותו Insight שאתה רוצה.
        • אז אנחנו פשוט עושים אותם מראש, על הדאטה של ה-Context.
    (רן) כן, סליחה, אני אפרוט את זה רגע לבדידים. אז אתה אומר . . .  זה לא שאתה אומר ל-GPT “הנה, קח - זה הדאטה, תעשה מה שאתה מבין, זה מה שה-User שאל, תעשה מה שאתה מבין”. אתה לא עושה את זה, אלא אתה עושה את זה בצורה שהיא יותר Structured.אז אחד זה אולי להבין את ה-User intent, כלומר - מה הוא שואל? על איזה דאטה? על איזו שנה הוא רוצה להסתכל? על איזה מחלקות הוא רוצה להסתכל, Whatever. זאת אומרת, להבין. ואז לשלוף בעצמך, אולי בשאילתת SQL, באמצעים “רגילים”,  לא שום NLP. לשלוף את הדאטה, ללעוס אותו, אולי לעשות איזושהי אנליזה - ואת התוצאות האלה, בסוף אתה מגיש לו ורק אומר לו “עכשיו תכתוב את זה באנגלית יפה?”
    • (עודד) בדיוק, ממש כך. כשבעצם אנחנו . .  דרך אגב, זה התחיל כבר בפרויקט הראשון ב-Genius. זאת אומרת, את הנתונים עצמם.
    • למעשה, המערכת של DataRails, כוללת למשל מערכת Dashboarding, שאתה יכול ממש לייצר כל מיני Widget-ים על הדאטה שלך.
      • אז בעצם נתנו לו להפעיל את מערכת ה-Widget-ים האלה, ובסוף הנתונים שהיה רואה הלקוח היו מגיעים מתוך המערכת שלנו.
      • ואז אנחנו יודעים שהם מדויקים והם בדיוק מה שצריך - והפרשנות הייתה מופיעה כפרשנות טקסטואלית.
    (אורי) אז יש לנו פה בעצם לא אנליסט, אלא “דובר”. האנליסט הוא DataRails “הישן”. 
    • (עודד) אז אחת התובנות שהיו לנו מאותו מוצר ראשוני זה שבאמת הגענו למסקנה שהוא, שהוא “חלש מדי”, כי הוא באמת רק “דובר”.
      • זאת אומרת, אני בעצם משתמש ב-AI כדי להבין את ה-Intent של ה-User, וכדי לספר לו מה אני רואה.
    • ואז באמת החלטנו לעבור לשלב השני, מאותו שלב שקראנו לו Insights, שזה ממש שלב שנמצא עכשיו ב-Rollout ראשוני אצל לקוחות,
    • שבעצם אומר “אני אבחר את הדאטה שאני רוצה להביא ללקוח, אבין את ה-Intent שלו”.
      • לאו דווקא דרך אגב טקסטואלית, אלא אפילו ”UI-ית“- על איזה חודש, איזה ניתוח נגיד רבעוני או חודשי שהוא רוצה לעשות, או שהוא...  עושה איזה מין Setup ל-Report כזה. 
      • (רן) . . . אפשר להשתמש ב-Drop-down Box, נכון? אפשר להשתמש בזה, לא חייבים רק טקסט . . .
      • (עודד) בדיוק. אני אעשה את כל הניתוחים האפשריים. 
    • עכשיו, חלק גדול מהניתוחים האלה לא באמת מעניינים את ה-User, אבל אז אני אשתמש בעצם בכוחות של ה-LLM.
      • אני אומר לו “אלה הניתוחים שעשיתי”.
        • גם כל אחד מהם בנפרד - הוא מתואר טקסטואלית על ידי LLM שמתאר אותו
      • ואז יש LLM אחד שמסתכל על כל הדברים האלה כ-Context - ומחליט לספר.
        •  מה הדברים המעניינים? מה הדברים הפחות מעניינים? ומה בכלל לא צריך לכלול באותו דוח שהוא מספק  ללקוח.
    (רן) כן, אבל גם בדבר כזה, אני יכול לחשוב איך דברים יכולים להשתבש. זאת אומרת, בהקשר של LLM, כן? זאת אומרת, דברים תמיד יכולים להשתמש, אבל בהקשר הזה. השאלה כאילו, איזה מיטיגציות (Mitigations) יש לכם? נגיד, פיתחתם איזשהם Guardrails מיוחדים? האם, לא יודע, מיטיגציה של UI? אולי קצת רמזת שזה גם להראות וגם להסביר - אז אוקיי, אם ההסבר לא מדויק, אז לפחות הוא רואה. מה המיטיגציה?
    • (עודד) אז אני חושב שהמיטיגציה העיקרית, היא באמת בהנגשה של המידע. 
    • זאת אומרת, אנחנו הגענו למסקנה כבר די מהתחלה, שאת המידע שאנחנו מראים - הוא לא מגיע דרך ה-LLM. 
    • זאת אומרת, אם עשינו עכשיו איזשהו ניתוח . . .  אז אנחנו עושים למשל ניתוח, מה שנקרא בעולם ה-Finance, זה Variance Analysis.
      • עושים ניתוח שונות - מה גרם לשוני בין, נגיד, שתי תקופות, או בין . . . כשעושים Budget vs. Actual.
      • ואז אנחנו יודעים מה האנליזה שעשינו, אנחנו מציגים אותה בצורה גרפית - את הנתונים עצמם שמגיעים מהמערכת - ואנחנו נותנים בסך הכל ל-LLM, לספר מה הוא רואה שמה, ולתת גם את “הפרשנות שלו” למה שהוא רואה.
      • אבל בסופו של דבר, זה מוצג לצד הנתונים. זאת אומרת, תמיד הלקוח יכול להסתכל על הנתונים, המערכת שלנו מאפשרת לו לעשות Drill-down לתוך הנתונים - זאת אומרת, גם לוודא אותם.
      • וזה בעצם נותן רמה שהיא מצד אחד נראית מאוד מאוד מרשימה - כי זה גם תמיד גרפים ליד טקסט.
        • גם ממקד אותו, כי הטקסט בסוף ממקד אותך באמת בדברים החשובים שראית.
      •  אבל גם אם הוא לא מיקד אותך בדבר הכי חשוב - עדיין אתה רואה את כל הנתונים מול העיניים שלך.
        • אתה יכול לתחקר אותם, אתה יכול להסתכל עליהם
        •  וזה כן נותן איזושהי רמה של ביטחון ל-User, שגם אם הפרשנות לא הייתה הפרשנות המדויקת, אז זה מספיק טוב. 
    (אורי) כל CFO יודע שיש P&L שמציגים בBoard - ויש תירוצים. 
    • (עודד) נכון. 
    (אורי) . . . התירוצים זה המתרץ . . .
    • (עודד) נכון, נכון. דרך אגב, אחד הפיצ'רים הנחמדים שעשינו במערכת זה שאתה יכול לקחת גרף מהמערכת ו”לתקוע אותו בתוך מצגת PowerPoint”, ויש לך את שם Checkbox אם אתה רוצה להוסיף את התירוץ גם כן . . . 
      • והתירוץ זה בעצם הניתוח של... 
    (אורי) אבל יש לי בשבילך רעיון לעוד פיצ'ר, אבל לא . . . Off-record . . .(רן) Off-record בהרבה כסף . . . היום במקרה מישהו אמר לי ”אבל אני בטוח שזה נכון, GPT אמר לי!” . . .הפוך, הפוך, . . . 
    • (עודד) זו נעשתה האמת החדשה, קצת מטריד.
    (רן) כן.(אורי) פעם זה היה, אתה יודע . . . הראשי-תיבות של LLM זה “לא להיות מדויק” . . . 
    • (עודד) אני, כשאני מסביר לאנשים לפעמים, אני אומר שאחד המאפיינים של המודלים הם שהם חייבים לתת תשובה.
      •  הם בסוף נותנים תשובה - והתשובה הנכונה זו אחת האופציות. 
    (רן) כן . . .(אורי) או כמו שאמר מישהו - כשתלחץ על מפתח מספיק, הוא יוציא קוד. מאיפה הוא יוציא את הקוד הזה? זו שאלה אחרת . . .(רן) כן, טוב, הגענו ממש לאזורים מעניינים.
    32:59 השלב הבא ואיפה אנחנו היום
    ( רן) אז זהו, אנחנו ככה ממש לקראת הסוף. אז אמרת בעצם שבניתם מוצר אחד, והיום אתם בעצם בעיצומו של בניית של מוצר נוסף . . 
    • (עודד) למעשה, אנחנו כבר בעיצומו של בניית המוצר השלישי . . .
    • ואני חושב שמה שמאפיין את ה... אני אגיד את ה-Trajectory של בניית המוצרים, זה שאנחנו כל הזמן בעצם מבינים, אני חושב שזו הכרה שלאט לאט אנחנו מבינים בעולם של ה-LLM, שמה שמשחק זה ה-Context.
      • זה הדאטה, זה איזה דאטה אתה מגיש. 
    • אז אם אני רק אסיים, אם במוצר הראשון הנגשנו לו איזה אספקט מאוד מאוד צר של נגיד, בואו נראה את ה-Revenue over Time, ובמוצר השני, אנחנו הנגשנו ל-LLM כל מיני ניתוחים ואנליזות שעשינו באמצעות כל מיני כלי דאטה, Data Analytics, שאנחנו מיישמים על הדאטה.
      • עכשיו אנחנו בעצם משלבים גם ומכניסים לו Context של מידע על החברה - על הפעילות שלה, על הבן אדם ששאל, ממש מכינים איזשהו מעיין “פרופיל חברה”.
      • שדרך אגב, משתמשים ב-LLM גם כדי להכליל אותו, אבל הוא חלק מה-Context. 
    (רן) אתה יודע, אחד הכללים זה שלכל בעיה, יש פתרון אם תוסיף עוד LLM בדרך . . . 
    • (עודד) כן, אבל אנחנו בעצם יוצאים עם מוצר שאנחנו קוראים לו CFO Space
      • שהמטרה שלו בעצם להיות איזשהו “GPT ל-CFO”, שבעצם היתרון בו מול GPT רגיל הוא שיש לו גישה גם לנתונים הפיננסיים שלו, שנמצאים בתוך DataRails, גם לפרופיל החברה שנבנה - עוד פעם, גם בצורה אוטומטית.
        • גם למקומות וגם לכל מיני מקורות מידע פיננסיים, שבדרך כלל אין גישה אליהם, כי הם נמצאים מאחורי איזה חומת-תשלום או משהו כזה, שאנחנו יכולים להביא אלינו,
      • ואז לקבל בעצם איזשהו . . .  בעצם להגדיל את ה-Context שאתה מקבל.
    (רן) נדבר אולי דקה-שתיים על הפן האנושי, ה-HR-י. זאת אומרת שחיפשת אנשים ש”זה בדמם”, שיידעו לעשות את זה. איפה אתם היום? עדיין זה Owned על ידי צוות אחד, או שזה התפשט לצוותים נוספים? כלומר, “מי נוגע ב-AI”, נגיד את זה ככה, אצלכם בחברה?
    • (עודד) אז היום עדיין זה נמצא בידי אותו צוות.
    • אנחנו כן בעצם מנסים או מתחילים לשלב צוותים אחרים בלהשתמש באותם פיצ'רים שפיתח הצוות.
      • בסוף הצוות הזה פיתח תשתית AI - תשתית שמאפשרת לקרוא ל-AI ולתחזק Prompt-ים ותשתית של Agent-ים - ואנחנו כן מנסים לראות איפה אנחנו משתמשים בזה בעוד מקומות בחברה. 
      • אבל עדיין, היום רוב הפעילות מתבצעת על ידי הצוות הזה.

    35:43 סיכום
    (רן)  אוקיי, אז אנחנו ככה לקראת הסוף. אולי עוד כמה מילים על החברה - כמה עובדים? כמה מפתחים? איפה יושבים?
    • (עודד) אז החברה היא היום בערך 230 עובדים, כמחצית נמצאים בארץ.
      • צוות הפיתוח מונה כ-50 איש.
    • אנחנו יושבים ב-Midtown, בתל אביב.
    • ואנחנו כמו הרבה חברות - מחפשים חבר'ה שגם רוצים לעשות דברים מעניינים.
      • גם בתחום ה-AI - אבל גם יש לנו סט שלם של בעיות דאטה מאוד מאוד מורכבות, בעיות של Scale,  שזה אני חושב חדשות טובות לחברות שהגיעו לשלב שהן מתמודדות גם עם Scale גדול.
    • ואנחנו תמיד מחפשים אנשים טובים, בעיקר מרקעים של עולמות של Python, של Node . . . 
    (רן) כן, אוקיי - ואנשי דאטה ואנשים שאוהבים LLM-ים, ואני מניח שיש לכם גם דברים אחרים, UI ואחרים. 
    • (עודד) דברים מאוד מעניינים.

    אוקיי, תודה רבה! היה מעניין, בהצלחה!
    [קישור לקובץ mp3] האזנה נעימה ותודה רבה לעופר פורר על התמלול!
    38 min
  • 490 K8s with Erez from Komodor
    פרק מספר 490 (מי היה מאמין) של רברס עם פלטפורמה, שהוקלט ב-21 בינואר 2025. אורי ורן מארחים בהפסקת אש את ארז רביע חחברת Komodor לשיחה על Kubernetes, ולמעשה - כדי לספר את סיפור חייו של Kubernetes:  קצת על ההיסטוריה של Kubernetes - מאיפה הוא בא? למה בכלל הוא נולד? מה עושים איתו היום וקצת Best Practices, שזה בעצם לחם-חוקם של ארז ושל חברת Komodor. 🎗️
     01:22 ארז ו-Komodor
    (רן) אז קצת לפני שנקפוץ ונדבר על Kubernetes - כמה מילים עליך, ארז, ועל Komodor.
    • (ארז) מגניב. אז אני ארז - בן ארבעים, גר ברמת גן, נשוי לשירן, אב לשלוש בנות.
      • כבר 16 שנה בתעשייה, בערך מ-2009. עובד היום ב-Komodor.
    • נספר קצת על Komodor כמוצר - 
      • אז Komodor זה בעצם מוצר שנועד לצוותי פיתוח, שמשתמשים ב-Kubernetes, או עושים מיגרציה (Migration) ל-Kubernetes ב-Production.
      • אנחנו מציעים Offering שפונה גם ל-Experts בארגון - אם זה צוותי ה-DevOps  או ה-Platform - וגם לצוותים שמפתחים, שבעצם הקוד שלהם רץ על גבי Kubernetes, אבל מטבע הדברים הם פחות מכירים לעומק את הכלי.
      • אז אם זה כלים של Cluster Management, Cost Efficiency ו-Reliability של ה-Workloads over time ו-Access Control, הנחלת קונבנציות (Conventions) בארגון הפיתוח - זה בעצם מה שאנחנו נותנים ל-Expert-ים.
      • לחבר'ה שפחות מכירים, יש לנו Guided Troubleshooting Tool  כזה, שבמידה ויש Incident, בא ועושה איתם Root Cause Analysis
        • יש פה Generative AI, לוגיקה קלאסית שמעורבת בתהליך.
      • ובעצם, אנחנו עוזרים לארגונים, ל-Enterprise-ים גדולים, להפחית את העומס הזה שנוצר מכיוון צוותי הפיתוח לכיוון צוותי ה-DevOps, ולאפשר להם להיות עצמאיים.
        • ועל הדרך גם ללמד אותם על Kubernetes, ולמה קורים דברים שאנחנו לא היינו רוצים שיקרו.
    (רן) כן, אז חדי-האוזן בוודאי הבחינו בהגייה שלך . . . .
    • (ארז) כן, מתנצל על זה מראש . . .
    (רן) אז קודם כל, נשאלת השאלה- אם Kubernetes או קוברנטיקס? אז ובכן, אחת ולתמיד - זה Kubernetes.אבל כן, אכן כותבים את זה קצת מוזר, וגם דיברנו על זה, אני חושב, לפני די הרבה פרקים, על זה שהמקור הוא ביוונית, וזה למעשה, מה זה? זה גלגל ההגה? [פרק 353 עם Istio](אורי) של הספינה, כן.(רן) של הסירה, של הספינה. כן - אני חושב שיש פה חובלים שיודעים להנהן בראשם.(אורי) חובלים יוונים.(רן) חובלים יוונים, לא סתם - מהמקור!אז אני חושב שיצא לנו לא מעט לדבר עם נתי שלום [לאחרונה ב-489 carburetor 38], שהוא גם לא מעט מדבר על נושאים בתחום הזה - והוא אמר שהרבה חברות למעשה לוקחות תשתית כמו Kubernetes, ובונות מעל זה PaaS. זאת אומרת, בונות מעל זה איזושהי פלטפורמה ל-Deployment של התוכנה שלהן . . .(אורי) דיברנו על כל ה-Platform Engineering שבא מעל זה . . . . [445 Carburetor 33 - platform engineering](רן)  . . . . בדיוק - ואני יודע, זה משהו שגם נעשה ב-Outbrain, וזה נעשה גם בחברות אחרות - אבל זה לא מה שאתם עושים ב-Komodor. זאת אומרת, אתם לא בונים PaaS לחברות . . .
    • (ארז) לא, למעשה אנחנו מה שנקרא Day One או Day Two.
      • בעצם, מרגע ה-Provisioning של ה-Cluster ופרישת ה-Workloads על גביו, אנחנו עוזרים לחברות לתחזק את “המפלצת הזאת” שנוצרת לפעמים לאורך זמן.
      • ושוב - לאפשר לארגון לעבוד בצורה שיותר Efficient, Self-Sustained, והייתי אומר “נורמלית”, בתוך כל הכאוס הזה, שעלול להיווצר ב-Cluster-ים מאוד גדולים.
    (אורי) אז אתם מוצר או Service - או שניהם?
    • (ארז) אנחנו למעשה מוצר SaaS -  יש לנו Agent, שלקוחות מתקינים על ה-Cluster שלהם.
      • ובעצם החל מאותו רגע, אנחנו מתחילים להזרים Data אלינו - ותוך שעות עד ימים מתחילים לנפק Insights.
        • זה, הייתי אומר, ה-Value היותר long-term-י.
    • בנוסף לזה, אנחנו סוג של “Gate ל-Kubernetes”
      • אז אם לדוגמה אתה רוצה לנהל הרשאות גישה של משתמשים across clusters, ויש לנו לקוחות עם מאות Cluster-ים, אז בעצם אנחנו עוזרים למסד את הדבר הזה ולנהל אותו.
    (אורי) כשירות או כמוצר?
    • (ארז) כשירות? אני לא בטוח שאני מבדיל בין שני המושגים האלה - זה מוצר שהוא שירות, כלומר...
    (אורי) אוקיי.
    • (ארז) . . . . נכון, זה מוצר SaaS-י, בעצם אתה ניגש אליו...
    (אורי) לא, לא - אני אומר “כשירות”, זאת אומרת - יש אנשים מאחורי זה? או שיש .  . (רן) . . . . עד כמה זה High-Touch או לLow-Touch?
    • (ארז) לא - הכל נעשה בצורה אוטומטית לחלוטין.
      • כמובן שאנחנו מאוד קשובים ללקוחות, ואם יש דקויות לפה או לשם אז אנחנו ניגשים ועוזרים ומסבירים.
        • לפעמים אפילו עושים שינויים במערכת.
      • אבל אין פה איזה Human Intervention במגע גבוה.

    05:50 בחזרה לעתיד / למה אנחנו צריכים את כל זה?
    (רן) אוקיי, אז אולי אחר כך גם נחזור לעוד כמה דברים ש-Komodor עושים - אבל זה הזמן לדבר על Kubernetes.אז בואו נחזור אחורה בזמן - משהו כמו ה-17, 16, אולי אפילו 20 שנה. אני אספר לכם שבצעירותי, כשעוד היה לי שיער שחור לחלוטין . . . (אורי) . . . כשעוד היה לך שיער . . . (רן) . . .  כשעוד היה לי שיער ברוב חלקי-ראשי, ופחות בשאר הגוף, אז יצא לי לעבוד ב-Google - ושם הייתה מערכת  פנימית שקרו לה Borg. וזו הייתה מערכת שיודעת לפרוש שירותים, לייצר רפליקות (Replications) של שירותים, להריץ Job-ים, Load Balancers, Monitoring - “מכל הבא ליד”.וכשסיימתי את העבודה שם ויצאתי החוצה, חיפשתי משהו כזה - ולא היה, במשך כמה שנים.וכאן, ארז מצטרף לסיפור . . . 
    • (ארז) כן. אז אני אשמח להתחיל את הסיפור דווקא במפגש הראשון שלי עם Kubernetes, בעצם אזור שנת 2015.
      • הצטרפתי בתקופתו ל-Nanit, ממש עובד רביעי-חמישי - וכבר היו בנויים כמה Containers ב-Docker, והיה צריך להחליט איך אנחנו עושים אורכסטרציה (Orchestration) לכל הדבר הזה.
    • בתקופתו היו שני שירותים עיקריים שמציעים פתרונות - 
      • הראשון היה AWS ECS, שלמעשה קיים עד היום.
      • והשני היה Kubernetes - שהוא היה ממש “בחיתוליו”: לדעתי גרסה 1.0.2, גרסה ממש ראשונית.
    • ובעצם, המשימה הראשונה שלי הייתה להבין איך אנחנו הולכים לנהל ב-Long Term את כל ה-Docker Containers וה-Services שלנו, שהולכים להיווצר במהלך זמן חיי החברה.
    (רן) אז קודם כל, אולי למה אנחנו צריכים את כל זה - ואחר כך גם נחבר לסיפור הנוגע ללב, אני חייב לומר, שלי על Borg . . . אז אם אתם, כל מה שיש לכם זה איזשהו, לא יודע, איזשהו Web Service, או משהו שהוא ככה Singleton, מאוד פשוט - כל מה שאתם צריכים זה אולי, רחמנא ליצלן, איזה FTP או סתם ככה SSH: הולכים ל-Server, מרימים איזשהו משהו וזה רץ, הכל טוב ויפה.במציאות, צריך לפחות שניים מכל דבר, נכון? ויש איזשהם בדרך כלל Microservices, אצל הרבה חברות, שמדברים אחד עם שני . . . זאת אומרת, צורת ה-Deployment היא מורכבת, ואם תעשו את כל זה באופן ידני, אתם כנראה תטעו באיזשהו מקום, וזה מאוד קשה לניהול.כאן בא Kubernetes ועוזר לנהל את כל זה. זאת אומרת, זה לא רק לבוא ולהתניע את ה-Container, אלא זה גם לנהל את כל ה-Life cycle של מה קורה אם אחד מהם מת, מה קורה אם צריך לעשות Deployment וכו'.אז זה הצורך ב-Kubernetes. אוקיי - ואז אתה אומר שהייתם צריכים לבחור בין, נגיד, ECS ו-Kubernetes, והלכת על הילד החדש בשכונה?
    • (ארז) כן, בעצם מתוך המחקר שעשיתי, גיליתי שאם כמה זה ששני ה-Service-ים האלה, או השירותים האלה, או הפלטפורמות האלה, הן פלטפורמות צעירות - Kubernetes בעצם הציע המון דברים שהם סוג של “Batteries Included”
      • כמו Log collection, Metrics collection - כבר בשלבים המאוד ראשוניים שלה.
      • ו-ECS הרגיש מאוד “בוסרי” באותו שלב.
      • ולכן גם בעצם קיבלתי - וקיבלנו - את ההחלטה להמשיך עם Kubernetes.
      • החלטה שבתקופתו לא הייתה טריוויאלית או Obvious בכלל - ולשמחתי זה מאוד השתלם לנו.
    • חייב להגיד מילה לעניין ה-Complexity של ה-Deployments - אז יש בלוג-פוסט מאוד מוכר והומוריסטי של CircleCI בשם “It's the future”
      • לא יודע אם יצא לכם לקרוא את זה, אבל ממליץ אחרי שאתם שומעים את הפודקאסט.
      • (רן) כן, אוקיי, מעולה - אז נוסיף ל-Show-notes [ובכן - נראה שהם הורידו את זה מהאתר שלהם, כל הלינקים שבורים, נגיד זה או זה, והולכים לעמוד הכללי של הבלוג שלהם… מניח שהכוונה לבלוג הזה שיושב ב-Medium].
    (רן) אולי אחד הדברים שמי שיהיה באזור והכיר את Kubernetes בטח הרגיש, זה שהיא הייתה מערכת מאוד מאוד בוסרית. אתה אומר שהיו כמה “Batteries Included”, אבל מצד שני לא הכל עבד As-Spec, והדברים זזו, וגם אם משהו עבד, בגרסה הבאה פתאום זה משתנה . . . .
    • (ארז) נכון.
    (רן) . . . . אז ככה שנדרש, בוא נאמר, אומץ רב, כדי לבוא ולאמץ מערכת כזאת בסביבת Production, בשלבים האלה.אבל ההימור, כמו שאתה אומר, הצליח לכם.(אורי) היא גם הייתה מאוד, ככה, “Strict” באיך שעובדים איתה, לא?
    • (ארז) היא הייתה אפילו מאוד מתסכלת, באיזשהו מובן. יכול לתת כמה דוגמאות . . . .
      • לדוגמא, Resource ה-Deployment, שהוא, הייתי אומר, אחרי Pod, כנראה ה-Resource הכי מוכר ונפוץ היום ב-Kubernetes, לא היה קיים בגרסאות הראשונות.
      • ולמעשה, חלק מה-Script-ים שאנחנו בנינו, היו מורידים ReplicaSet אחד ומעלים ReplicaSet אחר, כדי לעשות פרישה של גרסה חדשה.
    (רן) כלומר, אם היית רוצה לעשות Deployment לגרסה חדשה, לא היה את הקונספט הזה שנקרא . . . שהיום קיים ב-Kubernetes ונקרא Deployment - היית צריך לייצר משהו כזה מה-Building Blocks שהיו קיימות אז, שהיו ReplicaSet. גם היום קיימות - אבל יש מעטפת, יש אבסטרקציה (Abstraction) קצת יותר גבוהה.
      • (ארז) לגמרי. אבסטרקציה, הייתי אומר כמעט מושלמת, נכון. היום, כשאני פורש איזשהו Service ב-Kubernetes, אז יש לי את כל השירותים.
        • עד כדי להחליט כמה אחוז מה-Workload שלי אני מוכן שיהיה Unavailable במהלך זמן פרישה.
        • שזה, הייתי אומר, מאוד Advanced, בטח יחסית למה שהיה אז.
      • כל האיחסונים של ConfigMap ו-Ingress להחצנת שירותים בעצם - לא היו קיימים.
    • ואם זה שאמרתי שאולי זה היה קצת מתסכל, אני חושב שגם זאת הייתה הזדמנות נפלאה לייצר המון Open Source.
      • ובאמת ייצרנו המון המון Open Source, כמעט לכל הדברים והכלים שנבנו במהלך הדרך.
        • אם זה Helm charts, שזה בעצם היכולת לעשות Injection של variables ל-Templates.
        • אם זה Ingress, שזה היכולת שלי להחצין איזשהו Load balancer, שמכווין ל-Internal Services וכו'.
    • אז אני חושב שבאמת עם כל הקושי, גם הרווחנו המון מהדבר הזה - אני אישית גם.

    12:01 להשתמש נכון / איך אני יודע שאני צריך אחד כזה?
    (רן) כן, אז בסדר - אז נחזור רגע להיסטוריה: אז אמרנו ש... זאת אומרת לא אמרנו, אבל נגיד עכשיו - למעשה, Kubernetes נולד מתוך איזשהו פרויקט פנימי שהיה קיים ב-Google, שנקרא Borg. באיזשהו שלב, Google החליטו שהם רוצים לייצר גרסה חיצונית - זה לא אותו Codebase, אלא גרסה חיצונית שדומה לאותה מערכת - ולתת אותה לעולם.יש לך מושג למה? כאילו, מה האסטרטגיה פה?
    • (ארז) אז אני חשבתי על זה לא מעט, ואני חושב שזה מאוד מקביל לשחרור של Android.
    • בעצם, המטרה היא פה לפרסם פלטפורמה שהיא חינמית והיא Cloud-agnostic
      • ובדרך הזאת, Google לדעתי קיוותה להיכנס לשוק ה-Cloud Providers, על ידי זה שהם מאפשרים העברה מאוד קלה של Workloads מ-Cloud אחר אליהם.
      • כי Kubernetes הוא בעצם שכבת האבסטרקציה לאותם Workloads - וזה משהו שעובד.
      • (רן) Anti-Lock-In . . . .
      • (ארז) בדיוק, Anti-Vendor-Lock . . . .
    (רן) ואם ככה, אז כאילו, אתה יודע - מתבקש ש-AWS לצורך העניין, לא כל כך יאהבו את Kubernetes, אבל היום התמונה קצת שונה, נכון? היום אתה רוצה Kubernetes, אתה לוחץ על כפתור - הוא מריץ Script קטן ויש לך Cluster בכל Cloud Provider שמכבד את עצמו, וגם כנראה באלה שפחות מכבדים את עצמם . . . . זאת אומרת, זה מאוד מאוד נפוץ.יחד עם זאת, זה עדיין לא פשוט להשתמש בו . . .  זאת אומרת, אולי קל להתניע אחד כזה, אבל להשתמש בצורה נכונה - זה לא קל.
    • (ארז) נכון, אני חושב שצריך להכיר - כמו כל כלי שהוא מורכב, הוא בעצם סוג של פלטפורמה ל-Distributed Execution של קוד.
    • בגלל שהבעיה היא כל כך קשה, גם הפתרון מצריך המון ידע והעמקה וההבנה של מה כלי הזה מאפשר לנו.
    • אז יש המון דברים שכדאי שנכיר. נתחיל לעבור על זה?
    (רן) כן. אז אולי שאלה הראשונה זה מתי אני צריך Kubernetes? כלומר, איך אני יודע שאני צריך אחד כזה?
    • (ארז) אז הייתי אומר שהיום, בזכות העובדה ש-Kubernetes הוא כל כך נגיש וקל להקמה ויש Ecosystem כל כך רחב סביבו, אז באמת כל דבר שהוא יותר מ-Single Service, כבר הייתי מעלה היום Cluster ופורש את ה-Workload שלי עליו.
      • כמובן, בהנחה שזה משהו שמשרת לקוחות, ומאוד חשוב לנו שהוא יהיה Highly Available ו-Robust ועם Visibility על הדברים.
      • אני חושב שזה היום יחסית No-Brainer, באמת.
    (רן) כן. ואולי הזכרנו את זה מקודם - אם אתם מפחדים להיות נעולים אצל אחד מה-Provider-ים, אז Kubernetes יכול לעזור. דרך אגב, זה לא פתרון מושלם - עדיין יש לא מעט ערך מוסף שה-Provider-ים, זאת אומרת, Google ו- GKS [GKE] ו-EKS וכל זה נותנים. אז זה לא אפס, אבל עדיין זה פחות מ-100.
    14:57 בואו נדבר קצת על Best Practices
    אוקיי. אז החלטתי שאני רוצה Kubernetes אצלי בגינה - בואו נדבר קצת על Best Practices. זאת אומרת, מה אני כאיש Infrastructure או מה אני כמפתח, צריך להכיר, שיעשה את החיים יותר טובים.
    • (ארז) סבבה. אז דבר ראשון, אני חושב שעוד פעם מאוד Obvious, אבל כן להשתמש ב-Managed Solutions.
    • דיברנו קצת על תחילת הדרך - אז באותה תקופה, כדי להרים Cluster, היית צריך להריץ cube-up.sh עם מלא Environment Variables, ולהחזיק אצבעות . . . 
    (רן) . . . להתפלל ל-Kelsey Hightower שהכל יעבוד . . .
    • (ארז) ממש, ממש. זה היה “Kubernetes the hard way”, אבל “This is the only way also” - וזה היה בעייתי.
    • היום, בעצם כל Cloud Provider  שמכבד את עצמו, וגם אלה שפחות, מציעים שירות שהוא מאוד נגיש.
      • גם ב-Provisioning - יש לך Control Plane עם Auto-Scaling ו-Full Visibility ו-Resiliency.
      • ואתה לא רוצה פשוט להיכנס לכאב ראש הזה.
    • אז אני חושב שהדבר הראשון כשבאים להקים, זה באמת לבחור את ה-Cloud Provider, שכנראה כבר עובדים בו
      • ופשוט להשתמש ב-Managed Solution שלהם כדי להרים את ה-Control Plane.
      • זה נראה לי התחלה טובה.
    (רן) כן, כשאתה אומרת Control Plane - אתה מדבר על “השלד”, שעליו אפשר אחר כך להרים את ה-Workload עצמו, את ה-Container-ים, את ה-Pod-ים . . .
    • (ארז) כן, למעשה אולי משפט על זה - אז בעצם ל-Kubernetes  מחולק ל-Data Plane ו-Control Plane.
      • ה-Control Plane זה כל ה-Internal Tools, שעוזרים ל-Kubernetes לעבוד,
        • אם זה ה-Scheduler שלו, אם זה ה-Kubernetes API, אם זה ה-ETCD, שהוא למעשה ה-Storage של כל ה-Resources שלנו.
      • וה-Data Plane - אלה ה-Node-ים שעליהם אנחנו, “ה”User-ים” במרכאות כפולות, מריצים את ה- Workload-ים שלנו.
    • אז בעצם, ה-Managed Services - הם עוזרים לך להקים ולתחזק ולעשות Auto-Scale לכל מה שנקרא “ה-Control Plane”.
      • ואז אתה יכול להתעסק ב-Business שלך וב-Workloads שאתה מפתח.
    (אורי) זה לא מין תופעה כזאת של “אוקיי, קם Kubernetes. בהתחלה הוא היה פשוט, אחר כך לאט לאט . . .” - אתה יודע, כשרוצים אז מצטרפים עוד ועוד פיצ'רים לדבר הזה וזה נהיה מסובך. ואז מייצרים מעל זה Managed Services - ועכשיו אנשים מתחילים לשתמש ב-Managed Service, וכשהם שמשתמשים אז הם רוצים עוד פיצ'רים,ואז נהיים לו מלא פיצ'רים - ואז עוד פעם נהיה . . . “Managed Service מעל ה-Managed Service”?
    • (ארז) זו שאלה טובה . . . 
    (אורי) . . .  מהתהליך הזה . . .  אתם מכירים את זה, שבהתחלה אמרו כשקם ה-Cloud, “נגמרה העבודה לאנשיה-Ops”, ואז . . . (רן) . . . “וואי וואי, כמה עבודה יש ב-Cloud” . . . 
    • (ארז) כן, פשוט העברנו אותה ל . . . 
    (אורי) בדיוק . . . ואז פתאום Kubernetes נהיה העבודה של ה-DevOps, ואז נהיה מן Managed Service אבל גם הם נהיו מסובכים . . . בקיצור, תמיד יש עבודה לחבר’ה האלה, להתעסק במה שהמפתחים לא רוצים להתעסק בזה . . . 
    • (ארז) אז אני חושב שה-Complexity שהתווסף ל-Kubernetes Over the years הוא למעשה דווקא לא ב-Control Plane אלא יותר ב-Data Plane.
      • כלומר, באפשרויות שלנו, בתור User-ים של Kubernetes ולא בהכרח בתור אלה שמנהלים את ה-Control Plane, להשתמש בו.
      • ולרוב הוא נולד כתולדה מצורך.
    •  אז באמת, האבולוציה היא כזאת שהם התחילו מ”הכי Lean  שיש”,ולמעשה הוסיפו Complexity לפי הצורך ולפי הצרכים הארגוניים של ארגוני תוכנה גדולים.
    • ואני שמחתי מאוד להינות גם מהדברים האלה במהלך הדרך.
      • כלומר, הרבה דברים שאנחנו חיכינו או עשינו Hacks או Workarounds כדי להקים, פתאום בגרסה הבאה של Kubernetes כבר היו Native Resources ונוהלו על ידו.
    • אז דווקא הייתי אומר שמבחינת Complexity, אני למעשה יכול להשתמש היום ב-Kubernetes כמו שהשתמשתי בו לפני שש-שבע שנים, כי רוב ה-Main Objects  הם Stable כבר מאז.
      • אבל אם יש לי צרכים ייחודיים, שהם הייתי אומר Outstanding, אז גם יש לי את האפשרות להשתמש בדברים שהם יותר Complex ולעשות יותר Tuning לפרישות ול-Workloads שלי.
    (רן) אבל אני גם חושב, אורי, שמה שאתה מתאר זה איזשהו מעגל אופייני של שימוש בטכנולוגיה. אתה יודע - היא מפשטת, ואז על זה בונים ומסבכים, ואז היא שוב משהו מפשטת . . .(אורי) . . . הבעיה היה משתמשים . . . כי יש משתמשים - יש בעיה. הבעיה היה העולם - הם רוצים פיצ'רים . . .(רן) כן, כן . . . אבל כאילו, אני אומר שזה קורה עם המון טכנולוגיה. זאת אומרת נכון שבמקרה הזה דיברנו על  Kubernetes, אבל זה קורה כמעט עם כל טכנולוגיה - אם זה טלפונים חכמים, אם זה LLM-ים, כל דבר שאתה תדבר עליו - אני חושב שזה נכון.
    19:40 על Resource Requests, Limits, שכנים רועשים ו“הסכרת של ה-Workloads”
    אוקיי, בוא נחזור קצת ל-Best Practices - אז אמרת: בתור התחלה, אל תפרשו בעצמכם את ה-ETCD ואת כל ה-Control Plane, תשתמשו במשהו מוכן - ויש כאלה, טובים וחזקים. תשתמשו פשוט ב-Cloud Provider שלכם.זה עדיין . . . זאת אומרת, אמרנו - זה אולי 20% Lock-In, אוקיי? אבל זה לא 100.אוקיי - מה עוד?
    • (ארז) אז בוא נגיד שהעלינו את הControl Plane - עכשיו בעצם אנחנו צריכים להתחיל להתעסק ב-Data Plane, שזה ה-Workloads שאותם אנחנו מפתחים ומריצים בענן.
    • אז אני חושב שהדבר העיקרי שכדאי להכיר וגם להשתמש ב-Kubernetes זה בעצם היכולת להגדיר Resource Requests ו-Limits.
      • משפט על זה - אז Resource Requests בעצם עוזר ל-Kubernetes להבין כמה Resources - אם זה CPU  או Memory, אתה צופה שה-Process שלך ידרוש.
      • ובהתאם לזה לעשות Scheduling נכון ל-VM-ים ב-Data Plane שלך.
    (רן) כלומר, אם אתה פורש איזשהו Service, אתה צריך להגיד מראש - לנחש, או אולי ככה, לעשות “Guesstimation” של כמה CPU תרצה להשתמש וכמה זיכרון . . .(אורי) . . . .או ניסוי וטעייה . . .  אתה רואה שאתה לא משתמש בכל מה שחשבתם.(רן) . . . מה שנקרא Sizing . . .
    • (ארז) נכון. ברוב המקרים מאוד קשה לצפות את הדברים האלה מראש.
      • ולכן אתם צודקים - מה שעושים זה שפורשים את זה בענן, נותנים לזה לרוץ X זמן, ואחרי זה בעצם לוקחים איזשהו Percentile של השימוש, כדי גם לאפשר מרווח.
    (רן) אבל אני חושב שזאת מסקנה יפה ונכונה להמון סוגים של Resource-ים. זאת אומרת, לפעמים ה-Resource זה API שאתה חושף החוצה ללקוחות - וגם את זה תרצה להגביל. אתה יכול לקבוע “לא יותר מ-5,000 Request-ים בשנייה”, או Whatever. אם זה גודל של קובץ שאפשר לעשות לו Upload . . .  נכון, אתה לא מדמיין שהם יעלו לך קובץ של 1 Tera, אבל בוא - תגביל. אז “לא יותר מ-Mb500”. לכל דבר תשימו מגבלות - כולל לשירותים שלכם, כי גם אתם תפתיעו את עצמכם באיזשהו יום ותיצרכו יותר זיכרון ממה שחשבתם או שתיצרכו יותר CPU ממה שחשבתם, ואתם כנראה . . . .קודם כל, אתם רוצים לעזור לCluster - לשים את השירות במקום הנכון, שיש לו מספיק ממה שהוא צריך. ודבר שני  - לדעת כשחרגתם ולדעת לנהל את זה . . .
    • (ארז) להגביל את החריגה.
    (רן) כן - “שלא תפריעו לשכנים שלכם”, מה שנקרא . . .(אורי) גם חשוב לדעת שזה - בסוף זה “קוביות של טטריס” שה-Cluster משחק איתן - ואם תיקח קוביה גדולה מדי, יהיו לך פחות אפשרויות לפרוש.
    • (ארז) נכון, אתה תהיה פחות Efficient כנראה.
    • רק מילה על העניין של Request-ים ו-Limits - נכון, אז Request משתמשים, ה-Scheduler משתמש בהם.
      • ו-Limits ממש מגבילים את ה-Process שלנו, וצריכים להיות מאוד זהירים פה.
        • כי אם אנחנו מגיעים ל-Memory Limits, אנחנו בעצם נחטוף Restart OOM-Kill.
      • אבל לדעתי יותר גרוע זה להגיע ל-CPU Limits - שם אנחנו חוטפים CPU Throttling, ולמעשה all hell break loose . . . [ד”ש לקבוצת ה-Power ב-Intel . . . .]
    • חוויתי לא מעט פעמים במהלך הקריירה שלי Process-ים אפילו תשתיתיים שמגיעים ל-CPU Limit, חוטפים Throttling - ומאוד קשה להבין, אם לא מודעים, אם אין Awareness לעובדה הזאת, מה לעזאזל קורה.
      • כי למעשה, כל השמה של משתנה עלולה לקחת פתאום 20 שניות - ואלה דברים שבדרך כלל אנחנו לא צופים.
      • לרוב אנחנו צופים האטה כתוצאה מ-I/O או כתיבות לדיסק - לא מ-Execution של קוד לוקלי.
      • ו-CPU Throttling זה . . . אני קורא לזה “הסכרת של ה-Workloads” - צריך לשים שם את העיניים.
        • להציב אותם - אבל גם לדעת להיות Aware ולנטר את הדבר הזה, כדי שלא נפגע.
    (רן) כן, אבל פה אולי חשוב לדבר על למה בעצם מעניין אותנו על “השכנים הרועשים” - כי למעשה אותם Pod-ים,אותם Container-ים שעליהם דיברנו - אוקיי, Pod זה קצת יותר מ-Container, אבל לא נכנס לשם - למעשה, הם  פרושים הרבה פעמים על אותה חומרה, אבל, זאת אומרת, הם שירותים שונים. לוקחים שרת מאוד מאוד גדול, מחלקים אותו - דרך אגב, זה גם כמובן מה שה-Cloud Providers בעצמם עושים, אבל גם בתוך Kubernetes - לוקחים חומרה, מחלקים אותה לפרוסות קטנות יותר, ועל כל פרוסה שמים איזשהו Pod, ואם Pod אחד “משתולל”,אז הוא יכול להפריע לכל האחרים.
    • (ארז) כן, תופעה שנקראת “Noisy neighbor” - “השכן הרועש”.
    • אפרופו Komodor - אז יש לנו גם מנגנון Detection לדברים האלה.
      • כלומר, Pod שה-Execution שלו נפגע, למרות שהוא לגמרי עומד ב-Request-ים וב-Limit-ים שהציבו לו, רק כי Pod שכן שלו - היה לו את אותו VM בטעות, והחליט להתפרע.
    (רן) אז יבואו חכמים וגידו “רגע, אז למה צריך שכנים?! - אז תשים Service אחד על כל Host אחד!” . . . “מה הבעיה? למה אתה צריך לקבץ אותם?”
    • (ארז) אז אני חושב שפה...
    (אורי) . . . . כי “מה הועילו חכמים בתקנתם”, נכון? . . . (רו) . . .  אנחנו כל כך צדיקים היום, הא?
    • (ארז) אני חושב שהניסיון פה באמת . . .  הייתי אומר שני דברים:
      • אחד - לעשות אבסטרקציה ל-VM-ים, בסדר? התשתית היא רק ה-Vessel שעל גביו אתה רץ, ואתה לא באמת חייב להכיר איזה סוגי Node-ים וכמה CPU.
        • הכל נכנס לאיזה Blob אחד - כמו S3 ל-Blob Storage, אז הייתי אומר CPU ו-Memory Storage.
      • והדבר השני זה Cost Efficiency - בעצם, זה שאנחנו יכולים לחתוך את ה-Workload שלנו לחתיכות קטנות יותר.
        • אם דיברת על מחסן או טטריס, אז זה בעצם מאפשר לנו לקבל הייתי אומר, “כיסוי יותר מלא” של ה-Resources שאנחנו משלמים עבורם.
    (רן) כן, אז אם נגיד פעם היה לכם One service per VM, אבל ה-VM היה מגיע, בימים טובים, ל-20% CPU או 15% זיכרון - אז פה אתם יכולים להיות יותר יעילים, בלי לעבוד כל כך קשה. זאת אומרת, לתת ל-Kubernetes לעשות את העבודה של הצמצום בשבילכם.
    • (ארז) לגמרי.
    (רן) אוקיי, אז אמרת Resource Request ו-Resource Limit, שזה דברים דומים אבל לא בדיוק אותו דבר: Request זה כמה אני צריך ו-Limit זה מתי “תחנוק אותי” - ולמעשה, ה-Best Practice הוא להשתמש בשניהם.
    25:42 כשקשה - קשה לכולם
    (רן) אוקיי, אז דיברנו בינתיים על שניים, אולי שניים-וחצי -  בואו נעבור לדבר הבא. מה עוד כדאי לעשות?
    • (ארז) כן, אז זה מאוד חשוב להכיר את כל נושא ה-Probe-ים ב-Kubernetes, שזה בעצם היכולת שלנו להגדיר ב-Deployment שלנו, ב-Container, איך Kubernetes יודע שהוא חי ובריא.
    • בעצם, יש שני סוגים של Probe-ים כאלה - אחד נקרא Liveness Probe והשני Readiness Probe.
      • כש-Readiness Probe - במידה וה-Pod שלנו לא עונה, לדוגמה, לאיזשהו TCP Socket או כל בדיקה אחרת.
        • זה בעצם יוציא את אותו Pod מה-Service, והוא יפסיק לשרת בקשות.
        • שזה, הייתי אומר, פעולה שהיא פחות Intrusive.
      • ו-Liveness Probe - במידה ואנחנו לא מצליחים לעבור אותו, ה-Container שלנו יחטוף Restart.
    • אז ההמלצה היא כן להשתמש בשני המנגנונים האלה, אבל בכל מה שקשור ל-Liveness Probe - צריכים להיות זהירים.
      • כי בהרבה מהמקרים, בעצם מה שקורה זה שה-Pod שלנו הוא לא בריא
        • מאיזושהי סיבה - זה גם יכול להיות כתוצאה מאיזשהו כשל Infra-אי, כמו Database או Redis או Queue.
        • וה-Restart שלו בעצם יוצר אפקט של Cascading Failure, כי לפעמים Process-ים שעולים צריכים לחמם Cache וצריכים לפתוח Connection-ים ל-Database, וכל מיני Warm-up-ים כאלה . . . .
      • (רן) כמו שאומרים - כשקשה, קשה לכולם, אז אל תעשה את זה קשה יותר . . . .
    (רן) אבל אולי, רגע, נחזור אחורה - מה המשמעות, למי שלא מכיר: מה זה Liveness ומה זה Readiness? אז בעצם,כשכותבים שירות, ברוב המקרים אתם רוצים יותר מ-Instance  אחד שלו, אתם לא רוצים שיהיה רק אחד. אז אם זה ששמים זה מאחורי Load Balancer או אם זה איזשהו Job שרץ ברקע, אז זה משהו שנגיד קורא Job-ים מ-Queue ומריץ. אבל אתם רוצים יותר מאחד כזה, כי כל אחד יכול “להתאדות” מתישהו, אז תמיד כדאי שיהיה יותר מאחד.עכשיו, כשאחד כזה עולה - פרשתם נגיד, או עשיתם Restart, ויש לכם אחד כזה חדש - אתם רוצים לבוא ולהגיד מתי הוא מוכן להתחיל לעבוד, מתי להכניס אותו ל-Load Balancer או מתי הוא יכול להתחיל לקרוא מהתור וכו’, ולצורך זה, באמת מוגדרים ה-Probe-ים האלה.אז Liveness זה אומר “אני בחיים. אולי אני לא אעשה את הדבר הנכון, אבל אני בחיים - רגע, אל תהרוג אותי” . . . .(אורי) . . . אני - ה-Container. זה עוד לא אומר שה-Service בחיים . . . . הפוך זה ה-Readiness, “אל תהרוג אותי” . . .(רן) אוקיי, סליחה - זה ה-Readiness, וה-Liveness זה אומר “אני מוכן - תביא!”. תביא עבודה, תן לי Traffic . . . (אורי) לא . . . הפוך.(רן)  אז צדקתי מהתחלה! אז רגע . . . 
    • (ארז) שני ה-Probe-ים האלה יכולים להצליח או להיכשל.
    • כש-Pod עולה, הוא צריך לעבור Readiness Probe, כדי להתחיל לשרת בקשות.
      • הוא גם יכול להיכשל במהלך ה-Lifetime  שלו, ולצאת ולהיכנס שוב לאותו סט של Pod-ים, שבעצם מנגיש לו את ה-ה-Service.
      • ו-Liveness Probe, מהצד השני, בעצם ברגע שהוא נכשל הוא ב-Restart.
        • ואותו Pod יכול לעבור גם כמה Restart-ים במהלך ה-Life cycle.
    (רן) זאת אומרת, אם ה-Live שלי נכשל, זה אומר כאילו “תהרגו אותי” . . . “אין לי מה לעשות פה, אני לא מועיל יותר”
    • (ארז) “אני תקוע, אני צריך שמישהו יבוא לחלץ אותי”.
    • ו-Readiness זה “שים אותי שנייה בצד, תחזור אותי עוד כמה דקות, אני רגע עסוק”.
    (רן) . . . “אני עסוק, רגע, אל תפנה לי Traffic . . .  הנה, אני מוכן! עכשיו אני Ready!”
    • (ארז) בדיוק.
    (רן) בסדר.
    • (ארז) אז רק לחדד פה, שהסכנה היא באמת בעיקר ב-Liveness Probe, בגלל ה-Cascading effect שנוצר כתוצאה מ-Restart-ים.
      • לא להשתמש בו Blindly, מה שנקרא.
    (אורי) רגע, אני רוצה להבין משהו - יש קשר בין הקוד או ה-Service שרץ על ה-Container, לבין ה-Probe-ים האלה? זאת אומרת אני יכול להשתמש בהם, נגיד אם ה-Cache שלי עוד לא חם . . .
    • (ארז) לגמרי . . . .
    • אז למעשה, בוא ניקח Probe קלאסי, שדוגם איזשהו HTTP Endpoint בקוד שלך.
      • ואתה, בקוד שלך,  באותו קוד של Endpoint, יכול להגיד “אני בודק שה-Connection שלי ל-Database בריא, ושחיממתי את ה-Cache ושהצלחתי להוריד קובץ קונפיגורציה מ-S3.
      • ורק החל מהרגע שאותם תנאים יתמלאו, אתה מכריז על עצמך בתור Ready, כלומר - “אני מוכן להתחיל להנגיש את השירות, לשרת לקוחות”.
    (אורי) ואז בעצם, מבחינת המערכת - ה-Load Balancer, או מה שזה - ה-IP שלי “חי”.
    • (ארז) ה-IP הוא למעשה חי מרגע היווצרות ה-Pod , מוצמד IP לכל Pod.
      • השאלה היא האם אתה חלק מה-Target Group ב-Load Balancer, או לא?
      • זאת השאלה, זה ה-Readiness - אם אתה מוכן אז אתה חלק מה-Target Group, ואם אתה Not-Ready, אז אתה יוצא מה-Target Group.
    (רן) יש מקומות שבהם ל-Readiness הזה גם קוראים Health, זה אומר “אני בריא ואני מוכן לשרת!”, כלומר - כמו שאמרת: “יש לי את החיבור ל-Database שאני צריך, יש לי מספיק זיכרון” . . . לא יודע, “טענתי מה-Cache, אני מוכןעכשיו לקבל”, “פתוח לקבלת קהל” מה שנקרא.
    30:21 איך הוא עושה Distribution לדבר הזה / Anti-Affinity, Taints & Tolerations
    (רן) בסדר, עכשיו כתבת פה בסעיף D [בהכנות לפרק] מונח מאוד מעניין, שנקרא Anti-Affinity . . . ובכן?
    • (ארז) אז בעצם, דיברנו על ה-Scheduler של Kubernetes, שבסוף - יש לו אוסף מאוד גדול של Pod-ים
      • חלקם מאותו Service, חלקם מ-Service-ים שונים.
      • והוא צריך עכשיו להחליט איך הוא עושה Distribution לדבר הזה, כדי באמת להפוך את אותו Service ל-Highly Available, Resilient, Fault-Tolerant וכל ה-Buzzwords האלה.
    • ובעצם, Anti-Affinity Rules מאפשרים לנו להגדיר ל-Scheduler איך לבזר נכון את אותם Pod-ים. 
      • כש-Anti-Affinity Rule יכול להיות “אל תשים לי שני Pod-ים מאותו Service על Node יחיד”, הם יכולים להיות “אל תשים לי באותו Availability Zone”, אוקיי?
    •  כלומר, יש לנו דרך להגדיר איך אנחנו היינו רוצים שה-Scheduler יבזר את ה-Workloads שלנו
      •  כדי שבאמת אם יש עכשיו איזשהו כישלון Availability Zone, ב-AZ אחד ב-Amazon, אז בעצם יש לנו עוד שני AZs שכבר פרושים שם Pod-ים . . . 
    (רן) כלומר, הCluster, “באופן טבעי”, גם פרוש על פני מספר Availability Zones - ו-Kubernetes מבין את זה. הוא מבין את ה-Concept, הוא יודע. ואז, כשאתה פורש את השירות שלך, אתה אומר “תשים לי אחד בכל Availability Zone”, אין טעם לשים את כל השלושה באותו אחד, כי אין בזה טעם.
    • (ארז) אז מה שמעניין, דרך אגב, זה ש-Kubernetes לא באמת חייב להבין את זה.
      • אלא כל Node שעולה מקבל Label-ים מה-Cloud Provider, ולמעשה אתה יכול להגדיר Anti-Affinity Rules על Label-ים ואפילו על Label - Custom, שאתה שמת.
      • (רן) “שרירותיים” . . . 
      • (ארז) כן, בדיוק.
      • (רן) אבל Out of the Box, כנראה אני מניח שעל פני ה-Cloud Provider יש גם את ההבנה הזאת, ואתה יכול בנוסף לייצר אחרים.
    (רן) אוקיי, אז זה מה שנקרא Anti-Affinity. בסדר, אולי קצת . . . 
    • (ארז) יש עוד איזה נושא שהוא טיפה קרוב . . . הוא לא בדיוק זה, אבל זה כל העניין של Taints ו-Tolerations.
    • קצת מורכב, אבל בעצם Kubernetes מאפשר לנו לשים Taint-ים, שזה סוג של סירחון, לפחות לפי התרגום שאני קראתי . . . 
      • ורק Pod-ים שהם יהיו Tolerates את ה-Taint הזה יהיו Scheduled לאותו Node.
      • זאת נגיד דרך מעולה לעשות Scheduling ל-Pod-ים שצריכים GPUs רק ל-GPU Nodes.
      • או לבודד כל מיני Infra Workloads שהיית רוצה שירוצו לבד.
      • זה גם אחלה כלי . . . 
    (רן) כן, כלומר אוקיי - אולי לא הייתי קורא לזה “סירחון” . . . יכול להיות זה הפירוש, אולי הייתי קורא לזה “איזה טעמים” - איזה טעמים יש לזה: “יש לזה טעם של GPU - אני רוצה לרוץ על משהו עם טעם GPU” או “יש לזה טעם של High Network Bandwidth, אז אני רוצה לרוץ על משהו כזה”.
    • (ארז) בדיוק.
    (רן) בסדר. עכשיו, זה Label-ים שה-Cluster Admin, לצורך העניין, שם על ה-Node-ים, כי כשהוא מרים את ה-Cluster, אז הוא מבין מה יש לו. ואתה, בתור מפתח שכותב את השירותים, אתה יכול לעבור ולהגיד מה אתה מעדיף.מה קורה אם אין כאלה? מה קורה אם אין מספיק - מה ה-Kubernetes יעשה?(אורי) . . . אם אין מספיק Resource-ים . . . . 
    • (ארז) כן, אז בעצם - האמת שזו התנהלות ממש מעולה של Kubernetes.
      • כי Pod -ים שה-Scheduler לא מצליח לסקנג'ל (To Schedule) אותם לתוך Node-ים בגלל Insufficient Resources, והוא גם יודע להגיד למה, בעצם זאת ההזדמנות שלנו להטריג (Trigger) Auto-Scaling ב-Cluster ולהעלות עוד Node-ים.
    • ובאמת, Cluster Auto-Scaler ו-Karpenter - שהם הייתי אומר שני הכלים המובילים היום ל-Scaling של ה-Infra - הם משתמשים ב-event-ים האלה כדי להבין שצריך להוסיף עוד Resources לCluster, כדי לספק את הביקוש.
    (אורי) אתה יכול לכוון אותם בצורה מסוימת? זאת אומרת, לתת High-water mark, Low-water mark . . . 
    • (ארז) בדיוק. אז אפשר להגדיר Headroom, אפשר להגדיר מינימום, מקסימום . . .
      • אפשר להגדיר אותם פר AZ . . .  כלומר, ממש “קונפיגורציה כאוות נפשך”.
    • באמת כלים מעולים, שפשוט מתממשקים לעובדה הזאת - ולא אמרנו את זה, אבל כדאי להגיד: אני חושב שאחד החידושים או באמת הדברים ש-Kubernetes הביא לעולם זה האיחוד של כל ה-Infra וה-Workloads תחת Unified APIs.
      • וזה בעצם מהווה כר פורה ל-Ecosystem מטורף, שפשוט משתמש במידע הזה וקורא וגם כותב אליו.
    (רן) כן. פה, אתה יודע . . . זאת אומרת, כמישהו שמתעסק עם מערכות, לפעמים יש דילמה של מתי לייצר אבסטרקציה. כלומר, מתי לאבסטרקט (Abstract) את ה-Infrastructure מהמפתח, ומתי כן לחשוף.נגיד, אתה לא תמיד רוצה לדעת על איזה סוג של CPU - האם אתה רץ על Intel, על AMD . . . . - זה לא תמיד מעניין אותך.
    • (ארז) נכון.
    (רן) . . . אבל אתה אומר - אם זה מעניין אותך, אז אתה יכול לדעת. אם מעניין אותך איזה סוג של Network יש, אז אתה יכול לדעת, אבל זה לא תמיד אכפת לך.
    • (ארז) נכון. הם פשוט עשו עבודה מעולה בלהנגיש, כמו שאתה אומר, את האופציות.
      • ועדיין - לא להכיר אותם בכלל, ולעבוד בסדר.
      • שזה, הייתי אומר, ה-Sweet-Spot.

    35:08 כמה מילים על Monitoring, על מה להסתכל ואיפה החברים מהגן
    (רן) כן, בסדר, אולי ככה אנחנו לקראת סיום - אולי כמה מילים על Monitoring? על מה כדאי להסתכל?
    • (ארז) כן, אז דבר ראשון - Kubernetes, כמו שאמרתי, מחצין המון המון מידע בצורה סטנדרטית.
      • וזה מאפשר להמון כלי Monitoring לעלות.
    • היום, ה-Stack הרווח הוא kube-state-metrics, Prometheus, Grafana  . . . 
      • אפשר להתקין אותם ב-Helm Charts שהם Official מאוד בקלות.
      •  אז אם הייתי צריך לבחור היום Monitoring Stack ל-Kubernetes - כ-In-House כמובן, שהוא לא חיצוני - כנראה שהייתי הולך עם הכלים האלה.
      • אז זה דבר ראשון.
    • עכשיו, לגבי על מה להסתכל - אז אני חושב שקצת עברנו על זה ב-Best Practices, אבל בעיקר על ה-Resource Usage.
      • בעיקר לשים לב ל-CPU ולהגעה שלו ל-Limits.
      • על Container Restarts - שאנחנו אולי נוטים להתעלם מהם, אבל הם עדיין איזשהו סימפטום של תופעה שלא רצויה, ותמיד יכולה להתגבר ברגעים הכי פחות מתאימים [גם בחלליות…].
    • ואם משתמשים ב-HPA - שלא דיברנו על זה, אבל זה הדרך של Kubernetes לאפשר לי לעשות Horizontal Scaling ל-Workloads שלי.
      • כלומר, לפי ה-Consumption - להחליט אם אני צריך יותר Pod-ים או פחות Pod-ים מאותו Service.
      • אז לשים לב שאם הוא מגיע למקסימום לאורך זמן - כנראה שאנחנו עם Insufficient Resources על אותו Service, ולכן כדאי לשנות שם את הקונפיגורציה (Configuration).
    (רן) כן, אז אולי ממש ניגע בזה בקטנה - דיברנו על Auto-Scaling  של ה-Cluster, עצמו לא דיברנו על Auto-Scaling של ה-Service-ים. אז למעשה, אפשר לעשות Auto-Scaling בשתי הרמות - זאת אומרת, אם ה-Service שלך נגיד אין לו מספיק Pod-ים, ואתה רוצה באופן אוטומטי להטריג (Trigger), זאת אומרת לייצר עוד, ואחר כך להוריד, כי חבל על הזיכרון ועל ה-CPU שלא צריך. אבל אם אתה עושה הרבה כאלה, אז מתישהו גם נגמר לך המקום ב-Cluster . . . ואז אתה צריך לייצר Auto-Scaling של ה-Cluster. ושני הדברים האלה, כמו שאמרת, זמינים ובאים באופן דיפולטיבי (Default) בתוך Kubernetes. אוקיי.(אורי) אותי רק . . . נחזור שנייה להיסטוריה - הוא [Kubernetes.] לא תמיד היה פה, והייתה סוג-של . . . לפני שהוא הגיע, סוג של “מלחמת Provider-ים”, או נקרא את זה “פתרונות”. אני לא בטוח שהוא היה, נגיד, תמיד הכי טוב - אבל איכשהו, The winner takes it all, והוא נהיה סטנדרט . . .(רן) רצית להגיד Mesos, רצית להגיד Nomad, רצית להגיד...(אורי) כן, כל החבר'ה האלה - היום הם לא יודעים...(רן) “החברים מהגן” . . . (אורי) כן, אבל היום לא מכירים אותם - והוא רץ, ו...(רן) כן, אז היו לא מעט - אז הזכרנו כמה: Mesos, Nomad, הזכרת מקודם את AWS ECS, שזה פחות או יותר באותה שכונה. יש את OpenStack, Docker Swarm, יש לא מעט  . . . ובאמת, אני לא יודע מי מהם שרד. כאילו, חוץ מ-Kubernetes. זאת אומרת, ECS קיים . . .(אורי) היה בו משהו, לדעתי - בקהילה, או ב-Google, שדחפו אותו, או...
    • (ארז) אני חושב שהוא באמת, באופן כן, הוא פשוט ייצר את ה-Feature set שהיה הכי נכון - לאותה תקופה.
      • וידע להתגלגל, כמו מוצר אג’ילי (Agile) של חברה מסחרית - ובגלל זה הוא ניצח.
      • הוא פשוט היה קשוב ל-Community, וידע להוסיף את הדברים הנכונים - בזמן הנכון, בצורה הנכונה.
      • וזה מה שקנה אותי לאורך הזמן.
    •  ולכן, גם אני, החל מהרגע שעשיתי את ה-Research הזה ובחרתי ב-Kubernetes, לא הסתכלתי אחורה לשנייה.
      • כי באמת לא היה שום מתחרה בסדר גודל כזה, שידע לספק את הדברים.
    (רן) כן. דרך אגב - זאת אומרת, הזכרנו פה שמות של מוצרים אחרים. הרבה מהם כתובים ב-Open source. זה לא אומר שלא השקיעו בהם כסף . . . משקיעים בהם הרבה מאוד כסף: גם ב-Kubernetes. זה Google וגם אחרים, וגם באחרים - ב-Mesos, ב-Nomad ואחרים - השקיעו הרבה מאוד כסף.זה נכון שהם היו בקוד פתוח - אבל עדיין, צריך לפתח אותם. אז...(אורי) לא, לא - זה תופעה חברתית כזאת, שיש בסוף מישהו שלוקח - Winner Takes it All.(רן) לא, יש פה Network Effect, זה ברור, נכון. זה ה-Community, זה ה-Know-How, זה ה-Adoption מצד ה-Provider-ים. זאת אומרת, יש פה הרבה דברים, יש פה Network Effect משמעותי.
    • (ארז) דווקא אני חושב שפה ה-Adoption הוא באמת היה בעייתי - כי אני חושב שכל Cloud Provider ידע.
      • או לפחות Amazon, שהוא היה בתקופתו, באמת, לא יודע, 80% מה-Market - הם ידעו שברגע שהם עושים Adoption לדבר הזה, זה דווקא מעמיד אותם בסכנה.
    (רן) נכון.
    • (ארז) הייתי אומר שדווקא Adoption היה נגדו באיזשהו אופן - אבל הם הצליחו בכל זאת.
      • פשוט כי זה היה הכלי הנבחר על ידי ארגוני DevOps.
    (אורי) אני יכול להגיד שלנו ב-Outbrain - הלכנו איתו על On-Prem, אבל אחר כך כשרצינו להיות מסוגליםלעבוד גם על Cloud Providers, זה היה די פשוט.
    • (ארז) מאוד . . .
    (אורי) עוד פעם - “פשוט” זה לא, אבל... Doable בזמן סביר.(רן) מקודם דיברנו על Lock-In - אבל פה אתה מדבר על Scenario של Hybrid, נכון? או שני Cloud-ים, או Cloud ו-On-Prem . . . אבל זה למעשה, זה אף פעם לא נורא פשוט - אבל זה כן מאפשר את היכולת הזאת [זכרונות מ-2019 - 382 Carburetor 27 - k8s and multi-cloud].(אורי) לגמרי.
    • (ארז) זה מוריד קצת “מהכבלים האלה”, שקושרים אותך ל-Infra.
    (אורי) כן. לפעמים, אבל כאילו - ב-On-Prem, אתה מסוגל להגיע לעומסים על מכונה מאוד רצינית. פתאום אתה עובר ל-Cloud, שגם ככה יש לו את ה-VM - וכאילו, החומרה לא ממש מנוצלת כמו שצריך, גם אם אתה מתאמץ. ופתאום, אני אומר לך “רגע, אנחנו לא . . . “, ממש, Provider-ים אומרים “אנחנו לא בנויים לעומסים האלה על Node או על...”.
    • (ארז) כן, אז ה-Coefficient של ה-Resource Consumption שלך משתנה, כשאתה עולה ל-Cloud, נכון?
    (אורי) כן - אז זה משלם יותר . . . 
    • (ארז) נכון - Cloud עולה יותר, זה נראה לי ידוע. [וגם זכרונות מ-2021 - 418 Carburetor 31 Cost of cloud paradox]

    41:26 עוד קצת על Komodor לסיום
    (רן) כן, בסדר. אנחנו ככה ממש לקראת סיום - אולי עוד כמה מילים על Komodor? קצת על החברה, כמה עובדים אתם? איפה אתם נמצאים? את מי אתם מגייסים - אם אתם...
    • (ארז) מגניב. אז אנחנו נמצאים ביגאל אלון בתל אביב, במגדל סוזוקי.
    • אנחנו פחות או יותר 20 אנשים ב-R&D - עדיין מה שנקרא “קיבוץ”, כולם מכירים את כולם.
      • אחלה תקופה להצטרף.
    • אנחנו מגייסים, הייתי אומר “מכל הדיסציפלינות” - Frontend, Full-Stack, Backend.
      • עובדים ב-React ו- TypeScript ב-Front וב-Golang ו-Python ב-Back.
      • יש המון אתגרים טכנולוגיים.
    • ובכלל - אני חושב שגם מה שהביא אותי ל-Komodor זה ההזדמנות לעבוד על מוצר שהוא ב-Core שלו טכנולוגי.
      • אז לא רק שאני רץ על Kubernetes, ונהנה ממנו ביום יום - זה גם המוצר שאני מפתח.
    • אז אם אתם אוהבים טכנולוגיה ולפתח קוד, הייתי אומר שזה המקום המושלם.
    (רן) אולי שווה לציין - ה-Komodor הוא ב-K - ולא ב-C, כמו שאולי התרגלתם . . .
    • (ארז) זה ה-Theme שלנו, דרך אגב - יש לנו עוד דברים ב-K . . . 
    (רן) אוקיי, כן. כן, אז זה לא המחשב משנות ה-80 - זה Komodor ב-K, אז כשאתם מחפשים, זה שם.
    טוב, תודה רבה - ושיהיה לכם בהצלחה. להתראות.
    [קישור לקובץ mp3] האזנה נעימה ותודה רבה לעופר פורר על התמלול!
    43 min
  • 489 carburetor 38
    פרק מספר 489 של רברס עם פלטפורמה - קרבורטור מספר 38, שהוקלט בתחילת ינואר 2025. אורי ורן מארחים את נתי שלום לשיחה על כדורי-בדולח, עננים, ואיך הולכת להיראות שנת 2025 בעיני בוגרים מצטיינים של קורס נביאים. 🎗️


    01:45 סקירת השחקנים
    (רן) אז שוב שלום נתי, ובוא נתחיל לדבר. אז מה התחזיות שלך ל-2025?
    • (נתי) קודם כל, אני אפתח במנטרה שלי לשנה הזאת: אני אומר ש-2025 תהיה שנה טובה. בינתיים טפו-טפו-טפו, אנחנו ביום שבו... 
    (אורי) בוא נחזיק את זה עוד רגע?
    • (נתי) נחזיק את זה עוד רגע, אבל יכול להיות שנתבשר סוף סוף על איזו התקדמות עם החטופים. אנחנו זוכרים איפה היינו באפריל שנה שעברה, איפה אנחנו נמצאים היום...
      • כמה דברים אולי השתנו, ונראה שאולי באמת דברים ילכו ויהיו... בוא נגיד, יותר גרוע ממה שהיה שנה שעברה, אני חושב שלא יהיה, אז יהיה יחסית קל באמת להפוך את 2025 לשנה טובה, ובאמת יש הרבה מאוד אינדיקציות חיוביות, אז אני חושב שאת הפודקאסט הזה נפתח בהרבה אופטימיות.
      • בכלל, זה יהיה פודקאסט מאוד אופטימי, אני חושב, לפחות ננסה. 🎗️
    • (נתי) אז אני חושב שהיום, מן הסתם, AI - זה נוגע בכל התחומים, ואי אפשר לכסות את כל הנושאים, אז בחרתי בעיקר להסתכל על השאלה של ה-Arm Race . . .
      • ה-Arm Race - מי שבעצם הוביל את ה-Foundation Models זה היה OpenAI, המנצח המוביל בשנים האחרונות, מאז שזה עלה לגדולה.
      • ואני חושב שהמשחק נפתח לחלוטין.
    •  וככה נסקור את השחקנים העיקריים, שהם קנדידטים (Candidates) ל-Foundation Model, להוביל את ה-Foundation Model.
    (רן) נזכיר - רק לפני כשבועיים היה כנס גדול של Amazon re:Invent, שבו הם הכריזו על מספר מודלים גדולים, והם לא היחידים, כמובן. 
    • (נתי) בבדיוק.
    (רן) אז זה לגמרי כבר לא רק OpenAI, ואני בטוח שאי אפשר גם להתעלם מ-Anthropic ומשחקנים נוספים בולטים אחרים.
    • (נתי) אוקיי. אז אני חושב שיש פה כמה דברים, שאני חושב שדרכם אפשר לנסות לחזות את מי שבאמת יהיה מוביל.
      • ורמז - זה כנראה לא יהיה OpenAI בהובלה.
        • הם יהיו שחקן דומינטי, אבל אני לא חושב שבהובלה.
    (רן) גם יש מקום, אני מניח, לנישות. זאת אומרת, השוק הולך להיות גדול . . . 
    • (נתי) נדבר עוד שנייה על הנישות, נכון. 
      • זו מגמה, הייתי אומר, כמעט הפוכה, שגם קורית, והיא גם אלטרנטיבית.
    • ממש רואים שני חצים שרצים בכיוונים שונים, ושניהם וקטורים משמעותיים.
      • אחד זה ה-Open Source, שהולך באמת יותר לעולמות של Edge ומודלים קטנים ו-Desktop-ים, ונדבר עליו. 
        • היה עכשיו כנס מאוד גדול של CES 2025, ה-Consumer Electronic Conference
        • ומה שהלך שם - בעצם, כמעט כל הממשקי-משתמש הם כבר יחידות קצה-אוטונומיות, רובוטים.
        • היה שם, אגב, משהו שאני התלהבתי ממנו מאוד, שזה מראה - “מראת-בריאות” - שקוראים לה Omnia, החברה שמציגים את זה.
        •  שבעצם אתה מסתכל על המראה והיא אומרת לך, כמובן, את כל הנתונים שלך - משקל, לחץ-דם, בריאות.
        • “מראה, מראה שעל הקיר” - היא באמת תוכל להגיד לך גם מי הכי יפה בעיר . . . זה ממש מתקדם לכיוונים האלה בצורה שהיא הרבה יותר מ-Science Fiction.
    (רן) דרך אגב, CES - ראיתי במקרה פוסט של אשתו של חבר שלי, שהם גרים בפינלנד, והיא הראתה איך היא עוזרת  ל-Drone קטן לדלוור (Deliver) אוכל . . . זו מן עגלה כזאת קטנה שמביאה איזשהו משלוח אוכל, וזה אוטונומי - והיא נתקעה בשלג, המסכנה, אז היא עזרה לעגלה הקטנה הזאת להיחלץ מהשלג ולהגיע ליעדה. מה שנקרא “Human Assisted AI” . . . .
    • (נתי) כן, האמת שבכלל משלוחים היום - זה קצת מוזר לחשוב על זה פה בארץ, אחרי מה שעברנו בשנה שעברה - אבל יש כבר הרבה מקומות, מה שנקרא, ב-Rural Countries, שזה בעצם כפרים נידחים, שבאמת המשלוח שלהם מגיע היום עם חבילות, עם Drone, שהם מניחים להם את זה בחצר [הי Flytrex].
    • אז יש המון המון המון AI היום, בכמעט כל התחומים.
      • אנחנו באמת נתרכז ב-Foundation Models - שם אני בחרתי את Microsoft, מן הסתם את Google . . .
    (רן) אני חייב להעיר, בהערת ביניים, שאורי פה קופץ משמחה בכיסאו, כי הרבה זמן לא דיברנו על AI, נכון? . . . (אורי) כן, ממש . . . (רן) . . .  והנה - הגיע הזמן! אז כן, איכשהו, אני לא יודע, אולי זה העולם - אבל יוצא לנו, נראה לי בעשרה פרקים האחרונים, פחות יותר, לדבר על...(אורי) אמרתי לך . . .  אני אמרתי “טוב, המהפכה הזאת יכולה לקרות בלעדיי”, ו... כנראה שלא.
    • (נתי) כן, אז אני אומר, אנחנו נסקור שנייה את השחקנים: אני חושב שהמשמעותיים זה Microsoft, Google, Amazon, באמת כמו שתיארת.
      • ואני שם הרבה ז'יטונים באזור הזה - Elon Musk עם X.ai.
    •  ובאמת ננסה להבין, כתוצאה מזה, מי באמת יש לו את סיכויי ההצלחה הגבוהים, וגם איך OpenAI מתמודדים עם האתגרים האלה.
    • אז אני חושב שמ-Microsoft - האסטרטגיה ש...
    (רן) ואגב - רכילות קטנה: אם אני לא טועה, אורי, ה-Domain של X.ai נקנה מעובדים של Outbrain לשעבר? או שחברה שקנתה? . . . (אורי) לא, לא קשור לזה, אבל מחברה הישראלית.(רן) אה, אוקיי. לא, כי היו פעם...(אורי) לדעתי Winward או . . . לא יודע, לא זוכר, אבל...(רן) כן, זכרתי איזשהו קשר לעובדים של Outbrain שעבר, שהקימו חברה אחרי זה, בתחום של Calendar Management, ואם אני לא טועה, זה היה ה-Domain שלהם. אבל יכול להיות שאני מבלבל עם משהו...(אורי) לא. זה נקנה מאיזושהי חברה ישראלית, אבל אני לא חושב ש...…
    • (נתי) אוקיי, “חזרה לענייננו” מה שנקרא: אז אני חושב ש-Microsoft - האסטרטגיה שלהם, כמו תמיד, היא Bundle Approach.
    • זאת אומרת, הם בעצם מחברים את ה-AI ל-Office, ולכל הסביבה שלהם עם Copilot, everywhere - ב-Desktop, במסמכים שלך, בפרזנטציה, בכל המקומות שאפשר.
      • גם ב-Search שלהם, שאגב - עובד לא רע בכלל.
      • וככה הם בעצם מחזקים מאוד את האחיזה שלהם.
    • זה עבד להם עד עכשיו, זה כנראה יעבוד להם עכשיו.
    (רן) אוקיי, אבל גם יש להם ז'יטונים אצל OpenAI, זה גם קצת עוזר . . . 
    • (נתי) כן, אני אומר - יש להם גישה, הם משתמשים במודלים של OpenAI, אבל בעצם הם לאט לאט . . .
      • בעצם, האחיזה שלהם היא מן הסתם מול הData של הלקוחות, השתלטות על האזור הזה.
      • ואז בעצם הם מסגירים קצת את התלות שלהם ב-OpenAI, בהקשר הזה.
    • והולך להם לא רע - אני רואה למשל אצלנו, כמה השימוש רחב.
      • מאוד קל ל-Enterprise לצרוך את זה, זה נגיש להם מאוד.
      • זה הופך להיות אבולוציוני, במקום רבולוציוני, 
    • ו-Microsoft מאוד טובים בגישה הזאת - להכניס את זה ל-Teams ולהכניס את זה ל-Office ולהכניס את זה לזה . . . 
      • ב-Teams אתה מקבל עכשיו את הפגישות מסוכמות ואז זה מביא לך Calendar, ואתה יכול אחרי זה להגיד ל-Copilot . . . 
    (רן) זאת אומרת שבתור Enterprise, ה-Adoption של הטכנולוגיה זה לא תמיד שאלה טכנולוגית, זו הרבה פעמים שאלה רגולטורית . . . כלומר, אם יותר קל להמשיך, למי אני כבר יודע לשלם, אם יש לי כבר חוזים . . . 
    • (נתי) בדיוק. נכון, ראינו את זה ב-Slack אגב, עם Slack מול Teams,
      • זה לא ש-Teams היה יותר טוב מ-Slack, פיצ'ר מול פיצ'ר - אבל האינטגרציה של Teams עם שאר Office  היא זו שהובילה הרבה פעמים למשחק.
    • ואני חושב שכולם באים ואומרים . . .
    (רן) טוב, אני רואה שמבחינת ההגבלים העסקיים . . .
    • (נתי) לא תחת שלטון טראמפ, ולא תחת הביליונרים שעכשיו איתו . . . לא נראה לי שהם ישחקו על מגרש הזה.
    • אבל אני חושב ש...
    (אורי) המירוץ-סוסים שם התחיל, ואף אחד לא מתכוון לרסן את הסוסים . . . 
    • (נתי) בדיוק.
    • יהיו בזה, אני חושב, גם הרבה דברים חיובים - אבל את הדברים האלה בואו לא נצפה, בואו לא נהיה נאיביים . . .
    (רן) לא, בסדר - אבל זה גל-סינוס, אתה יודע. אז עכשיו זה עולה, אחר כך זה ירד. . . .
    • (נתי) ה”ירד” -  יורד בסוף מעט . . . .
    • בכל מקרה, אז אני חושב שהאסטרטגיה של Microsoft במקרה הזה נראית לי יחסית ברורה.
      • יש להם סיכויי-הצלחה מאוד גבוהים, מול ה-Adoption של ה-Enterprise ל-AI.
    • די ברור שכמו בכל טכנולוגיה, בסוף זה המגרש המרכזי - מי שינצח את הקרב הזה, הוא זה שיהיה “על הסוס המרכזי”.
    (אורי) אגב, באופן מוזר, היום עשיתי איזשהו Zoom, ופתאום ביקש להצטרף ל-Zoom איזה Bot של Copilot, של אחד המשתתפים . . . ושאלתי אותו מה זה הדבר הזה, אז הוא אומר לי  . . . . “אתה יכול להוריד את זה, אבל בגדול ה-Copilot שלי נכנס, והוא אחר כך מוציא לי סיכום של הפגישה”. שזה אחלה - אבל זה יד אחרת של Microsoft,שהיא לא Teams . . . כאילו, זה היה ב-Zoom.
    • (נתי) כן, אז אני אומר - אז קודם כל, יש בהחלט דריסת-רגל . . . אני חושב שהחיבור בכלל ל-Office הוא מאוד טבעי, בהרבה מאוד מובנים,
      • כי הוא נותן Efficiency, כמעט בלי לשנות שום דבר מהחיים הרגילים שלך.
    • אז באמת הסיפור של Teams וסיכום פגישות הוא שינוי מהותי,
      • אני יכול לא להעלות על שיחות, ולעשות Catch-up מאוד מהיר למה היה בשיחה.
      • הרבה פעמים אני אומר “טוב שלא בזבזתי את הזמן”, כי אני רואה שקישקשו שם רוב הזמן שטויות.
        • אתה רואה גם מי דיבר, אז לפעמים אתה רוצה לעשות Zoom-in למי שדיבר, אז אתה לוחץ שנייה לשנייה שהוא דיבר . . . .
      • זו באמת מהפכה של Efficiency, בסדר גודל ממה שאני חושב חווינו עד היום בכל מהפכה שהייתה, אני ממש רואה את זה ביום יום.
    • אז זה Microsoft.

    11:29 למי יש הכי הרבה Data
    • אני חושב ש-Amazon באמת רוכבים על הגל של ה-Cloud שלהם, מן הסתם כל אחד נצמד לנכסים 
    • המשמעותיים שיש לו, ודרכו בעצם מנסה לפרוץ את הפוזיציה שלו.
    • אז ל-Amazon יש כמובן Stronghold משמעותי ואחיזה מאוד משמעותית בעולמות של ה-Cloud.
      • אז הם מן הסתם הלכו על כיוונים של Ecosystem ושל לתת לך יכולת של מגוון יחסית רחב של כלים, בתוך המגרש-משחקים הזה שהם בנו.
      • שבעצם מאפשר לך גם להתנסות יחסית בקלות, וגם לבנות את התשתית שלך, שאתה רוצה, ב-Amazon.
    • וכמו תמיד, מה שהם עושים זה שהם רואים למה יש Adoption יותר גבוה - ומציעים אותו כבר כשירות Amazon-י, לאט לאט . . . 
      • וכמו שאמרת, אני חושב, אני לא הייתי בכנס, אבל לא מפתיע אותי שעכשיו הם נכנסים עם היד עוד יותר עמוק לתוך התחום הזה ומתחילים להוציא מודלים משלהם.
    • יש להם כמובן - וזו הנקודה הבאה שאני אגע בה - זה למי יש הכי הרבה Data, כי אני חושב שזו נקודה . . . 
      • כשאני אדבר עכשיו על Google, ואנחנו נחזור חזרה ל-Amazon ול-Elon Musk ונדבר על הנקודה הזאת, כי אני חושב שזה איזור-החולשה הכי גדול של OpenAI,
      • ומצד שני, זה איזור-החוזקה הכי גדול של שאר השחקנים . . .
      • (רן)  המחסור בData . . .
      • (נתי) המחסור בData או השליטה שיש להם היום בData.
      • (אורי) כי אין להם, כמו כל אחד אחר, איזור שממנו הם מגיעים, ששם כבר יש User Base . . . 
    • (נתי) נכון, הם מגיעו מטכנולוגיה . . . בדיוק, הם הגיעו מטכנולוגיה, והחברות האחרות, הם יושבים על הרבה מאוד Asset-ים של תוכן.
      • יש לך ב-Amazon, מעבר כמובן ל-eCommerce site  שלהם, שזה חתיכת אזור שיש פה הרבה מאוד מידע צרכני, מוצרים ויכולות בהקשר הזה.
    • יש להם גם את . . . ברח לי השם של ה-Voice הזה . . . .
    (רן) Alexa?
    • (נתי) . . . . Alexa, כן, שזה הרבה מאוד Voice וכל האינטראקציה של אנשים בבית ובכל ה-Consumer Business.
      • זה חתיכת בסיס-נתונים, שאפשר לתת עליו שירותי ערך-מוסף.
    • ודווקא מי שהספידו, שזה Google - אני חושב שנותנים פייט עכשיו, מאוד משמעותי, עם ‎Gemini.
      • אני מתנסה הרבה עכשיו ‎ עם Gemini, למשל.
      • דוגמא משמעותית שאני כל הזמן מוצא את עצמי ב-Gemini זה של-OpenAI אין אינטגרציה עם Google וגם לא עם Twitter, אז כשאני אומר לו “אוקיי, קח Post ב-Twitter ותסכם לי אותו”, הוא לא מסוגל, ואני צריך  לעשות Cut & Paste ואז אז לזרוק אותו וכך הוא יכול לסכם את זה . . . 
      • אז כשאני מדבר על Elon Musk, למשל, אז אתה מצפה ששם זה יהיה טבעי.
    • וקרה לי באמת אותו דבר עם Gemini, אז לקחתי את אותו Post ואמרתי לו “אוקיי, תביא לי עכשיו לינקים לדוגמאות”.
      • נניח, עשיתי איזה Post סיכום של מה שהיה ב-CES ומה הנקודות ואיזה דברים הכי זה . . . . ואמרתי לו “אוקיי, תשים לי לינקים לכל הדוגמאות האלה”.
        • “תעבר Bullet-Bullet ותוסיף לי לינק ל-Demo של כל אחד, במקום שאני אלך ואעשה את הדבר הזה .
        • והוא באמת עשה את זה . . . 
      • אז OpenAI לא ידעו לעשות את זה - הם ידעו להגיד לי “תרשום את זה ב-Search ותביא את הוידאו” . . . .
        • כי הם ידעו כנראה מה לינק, אבל הם לא יכלו לשים אותו . . . .
        • וב-Gemini, למשל, כן יכלו לעשות את זה.
    (רן) דרך אגב, אחד הכלים שמאוד עוזרים ב-workflow כזה זה NotebookLM, בטח יצא לך להתנסות בזה.
    • (נתי) כן, בטח.
    (רן) אז זה כלי ש-Google הוציאו, אני מניח שמאחורי הקלעים משתמש ב-Gemini, אני לא יודע במה הוא משתמש מאחור, אבל הוא עושה אחלה סיכומים והסברים וכו’. זאת אומרת, “אתה זורק עליו ערימה של מסמכים”, אתה אומר לו “תסתכל על האתר הזה” או שזורק עליו אוסף של מסמכים - והוא יודע לעשות אחלה עבודה יחד עם זה.
    • (נתי) אז נכון, אז אני חושב שזה בהחלט . . .  ב-YouTube היה מישהו שזרק מספרים מאוד מעניינים בהקשר הזה.
      • שיש בגדול, אם אתה מסכם את כל המילים בעולם, אתה מגיע ל-5 ביליון, אבל אם אתה מסכם את תוכן הווידאו, אתה מגיע לכמעט 80 ביליון, משהו כזה . . . איזשהו יחס, מכפיל הרבה יותר גדול של Data.
      • של Data שאתה יכול לצבור, במקרה הזה מילים וטקסט שאתה יכול לקחת מהתוכן הזה.
      • וכמובן שתוכן בווידאו יותר עשיר מטקסט, אז יש לו הרבה יותר Data שנמצא בו.
    (אורי) כלומר, “תמונה שווה אלף מילים” . . . 
    • (נתי)  . . . והיא כנראה שווה יותר מילים.
    (אורי) . . . . ווידאו שווה אלף תמונות - אז הגעת למיליון . . . 
    • (נתי) נכון, כי אתה עושה OCR לדבר הזה, ואז אתה עושה מן הסתם, אתה מתמלל את הטקסט [אה!]
      • אז הם יושבים על באמת בנק מאוד מאוד גדול של נתונים, גם של וידאו של אנשים.
      • ויש להם גם, בדומה ל-Microsoft, יש להם את ה-Office שלהם - אז יש להם את כל היכולת באמת לשבת על ה-Drive שלך ולשבת על המקבילה של ה-Office שלהם ולעשות אינטגרציה עם Mail.
    • ו-Mail הוא בפירוש משהו שהם כבר יודעים לנתח ולעשות דרכו Predictions.
      • למעשה, הם גם היו הראשונים שעשו Spelling מאוד מאוד טוב.
    • ויש להם גם את Android כמובן, ואת כל הגישה לעולמות של Android . . . 
    • והדבר הנוסף שהם משחקים עליו זה כל הנושא של ה-Developer Experience - הם יצאו עם IDE שהוא מובנה ל-AI ו-Browser-based, מדהים ביופיו.
      • שיש בו כבר OpenAI Integrated - אתה רק עושה קליק ואתה מקבל כבר Access ל-OpenAI ואתה יכול לפתח איזה סוג של “Notebook2” כזה.
      • אתה יכול ממש לפתח שם אפליקציות-AI, שמתחברים לכל ה-Ecosystem שלהם, ולבנות Widget-ים ודפים ותמונות ומה שאתה לא רוצה - “בכלום זמן”.
    • והם הוסיפו לזה - וזה הדבר שעכשיו כולם נכנסים כמובן שזה Agentic ו-Agent-ים, אז אתה יכול או דרך Chrome Extension או להתקין Agent . . . .
      • [ברזיק פחות זורם על זה]
      • בעצם, הוא מלווה אותך בכל התהליכים האלה ועוזר לך לייצר חוויה שהיא Guided לתוך כל העולמות של AI.
    • זה די מפחיד, אפילו, הייתי אומר . . . אבל כשאתה מסתכל על זה מהזווית הזאת, אז יותר קל לראות שהפוזיציה  שלהם הולכת להיות הרבה הרבה יותר חזקה ממה שאנשים חשבו.
    • אני נוסיף לזה - ושכחתי כמובן את הדבר הכי חשוב - Search.
      • זה יכול באמת להביא Data שהוא Real-time-י ולא Data שהוא נכון ל-2022 או נכון ל-2023.
      • בדרך כלל, ה-Foundation Models בנויים על איזה Batch כזה ולא משהו Real-time-י  . . . 
    (רן) מעניין דרך אגב, נתי, שהזכרת את Android, אבל אתה לא מזכיר את Apple ברשימה שלך, של ה-Contenders . . . 
    • (נתי) או, זה מצוין . . . . אני - יש לי, קניתי Apple 16 (iPhone), עם Apple Intelligence, שנחשב, למי שיצא לו לחוות את זה, לחווייה . . . 
      • הפאדיחה של . . . אני חושב אחת הגדולות שהיו בתחום ה-AI, בזמן האחרון, מבחינת הכרזות.
      • אני מנסה להגיד לו, ל-Siri, “תתקשר לאשתי” או לכאלה דברים . . . 
      • (רן) . . .  והיא מנחשת מי אשתך? . . . 
      • (נתי) היא מנחשת . . . אפילו את הדבר הפשוט הזה.
    • אז אמנם ה-Performance הוא כבר יותר טוב וה-Latency יותר מהיר, אבל עדיין - כמות הדברים שאתה מסוגל לבקש ממנה, לעומת מה שקורה עכשיו ב-Gemini ב-Android, זה עולמות לגמרי שונים.
      • ב-Android אתה יכול לבקש - ראיתי ממש Demo של זה - לייצר פגישה, להוסיף לה תוכן, לשלוח מסמך, לכתוב הודעת WhatsApp . . . .
      • וכמות הפעמים שהיא “מבינה” - לא יודע אם זה “מבין” או “מבינה” - אבל הוא עושה את הדברים והוא מדייק, ויש הרבה פחות אליוסינציה (Hallucinations).
    (רן) זוכר את הימים שהיינו מתקינים Linux על מחשבי Mac, כי היינו מתבאסים מהחומרה של Linux, אז היינומתקינים את זה?  אז בקורב נתקין Android על iPhone-ים, כי נתבאס מהתוכנה . . . .
    • (נתי) אני מעריך שדווקא, לפחות מאיך שאני ראיתי, אני חושב שבחומרה הם כן עשו Catch-up - אבל בתוכנה עוד לא.
      • וזה כנראה יגיע ב-Delay, אז אני מעריך שהגרסה הבאה של מערכת ההפעלה בטח תעשה הרבה תיקונים לדברים האלה.
      • הם פשוט כנראה לא הספיקו, הם נכנסו למשחק יחסית מאוחר.

    19:23 ואז בא Elon
    (רן) כן אז מי עוד, בינתיים?
    • (נתי) בינתיים עד עכשיו, דיברנו על Amazon, דיברנו עכשיו על Google, דיברנו על OpenAI לפני כן - אני אחזור אליהם אולי עוד מעט שוב פעם . . . 
    • עכשיו נדבר על Elon Musk. בעצם, הוא השחקן החדש.
    • אחד הדברים שאגב הם הכריזו ב-CES 2025 זה שהם הצליחו לבנות Datacenter, אני חושב ב-No-time כמעט, לא זוכר את המספרים, אבל בארבעה חודשים עם Google הם בנו Datacenter ענק, שכולו מבוסס GPUs ו-AI.
      • עשו שיתוף פעולה עם הרבה מאוד Vendor-ים, בשביל באמת להתחרות בכל החבר’ה האלה, כשבעצם . . . 
    (רן) מי בנה את זה? X בנו?
    • (נתי) X בנו, כן. Musk עצמו . . . כאילו, לא “הוא בעצמו”, אבל אנשים שלו . . . 
    (אורי) הוא כנראה ישן שם . . . .
    • (נתי) כן . . . אז עכשיו, בואו נדבר שנייה על ה-Asset-ים שיש לו:
      • אז יש לו כמובן את X, שזה Twitter לשעבר.
      • (רן) . . . יש לו את נשיא ארה״ב . . . 
      • (נתי) . . .  יש לו את נשיא ארה״ב, וראיתם - לא יודע אם יצא לכם לעקוב על פרשת האונס בלונדון, באנגליה, כל הפרשה שהייתה שם עכשיו עם זה.
        •  אז זאת הייתה איזושהי פרשה, שהייתה ידועה כבר הרבה מאוד זמן, שהסתירו אונס של הרבה בחורות לבנות על ידי מאפיה פקיסטנית . . . 
        • (רן) אה, בגרמניה זה היה, לא?
        • (נתי) באנגליה, לא. באנגליה. מאפיה פקיסטנית, והסתירו את זה הרבה מאוד זמן, כי פחדו שאם יפתחו את זה, אז זה בעצם יעורר שדים של של גזענות וכאלה דברים.
        • ראש הממשלה היום היה מבין אלה שהיו שותפים לסוג של ההשתקה, אבל כל הניסיונות לפרסם את זה בעצם נתקלו בחומות, כי כל מי שבעצם היה אמור לטפל בזה פחד לגעת בדבר הזה.
        • אז די השתיקו את זה, קראו להן White Trash וכל מיני דברים כאלה.
        • ופרסום אחד שלו [Musk] ב-Twitter, שחשף את הדבר הזה, יכול להחליף ממשלה עכשיו באנגליה.
      • לא יודע אם אתם מכירים, אבל היה עכשיו את אישור התקציב של ארצות הברית ל-2025, אז תמיד כשמתחלפת ממשלה, אז יש איזה תקציב מטורף שבו הוא רק הולך וגדל.
        • כי הרפובליקנים אומרים “אם אתה תכניס את זה, אני תן לי גם את זה” - ואז לאט לאט זה ניהיה איזה תקציב ענק כזה.
        • ואז מה שהם עשו זה פשוט חשפו את כל הסעיפים של התקציב ואת הכמות שלו - ופרסמו את זה ב-Twitter, ונוצר גל של ביקורת, ופעם ראשונה בהיסטוריה, אני חושב, של ארצות הברית, זה נעצר.
        • פשוט התקציב הזה נעצר - ועכשיו יש בחינה מחדש שלו, ויאשרו אותו רק בממשלה הבאה, מן הסתם.
    • אז הוא יושב על כוח מאוד מאוד גדול - גם פוליטית, גם מבחינת . . . .
    • אבל חזרה ל-AI - באמת אחד הדברים שחשוב זה מידע מאוד Real-Time-י, יכולת לזהות באמת ברמה של סנסורים (Sensors) את המגמות בעולם, מגמות בשוק, מגמות פוליטיות . . . .
      • להשפיע על מדינות, להשפיע על ממשלות, לעלות ולהוריד אנשים אם צריך . . . זה חתיכת דבר.
    • והוא כמובן חסם גישה לדבר הזה מכל ה-AI-ים האחרים, אז יש לו את הגישה הכמעט-בלעדית לדבר הזה.
    (רן) אבל הוא לא ה-Walled-Garden היחיד בעולם - יש אחד יותר גדול: Meta.
    • (נתי) נכון. אז Meta משחקת משחק שתיכף נדבר עליו, כשנגיע לגל ה-Open Source.
    • אבל רק לסכם את Elon Musk - דבר הנוסף שיש לו זה Tesla.
      • ו-Tesla גם יושבים היום על כל הנושא של הסנסורים, מן הסתם, של המכוניות האוטונומיות.
      • אגב, התרגיל שהוא עשה שם - אנשים לא מכירים את זה כל כך, אבל כש . . . 
      • אחד הדברים שהם בנו עם FSA [FSD?], ה-Full Autonomous Driving Cars, זה שהם בעצם . . .
      • מה שהם עשו זה איזשהו מהלך די דרמטי, שבעצם הם הפכו את המכוניות לאיזשהו מודל Subscription.
        • כי בעצם יש לך תוכנה, שאתה צריך לקנות בכסף - שבעצם נותנת לך את ה-Autonomous Driving.
      • והם יכלו, על הטיקט הזה, בעצם להוריד את מחיר המכוניות ב-20% - ועכשיו תחשוב מה זה אומר:
        • זה כשהוא יושב על Margin-ים מאוד נמוכים, אז כשאתה מוריד את המחיר ב-20%, אתה הופך את כל החברות האחרות כמעט לפושטי-רגל.
        • והוא יכל להרשות לעצמו את זה, כי הוא פיצה על זה בתוכנה - הוא היה חברה שבעצם מוכרת Perpetual License של מכונית.
        • הכניס מרכיב Software של Subscription - וזה אפשר לעשות מהלך שהוא כמעט שחמט מול הרבה מאוד חברות אחרות, בזה שהוא הוריד את המחיר לרמה שכל המתחרים לא יכולים להוריד את המחיר, למרות שהוא ידע שהוא לאט לאט מאבד את היתרון התחרותי שלו במכוניות חשמליות.
        • וככה לקנות לעצמו זמן, ככה שכשיהיו לו באמת Autonomous Cars, הוא יוכל לבוא עם פתרונות עוד פעם מתקדמים מעבר לאחרים, ולעשות עוד איזה Disrupt . . . 
    (אורי) אבל זה ממש . . . זה כאילו לקנות לא הרבה זמן, כי תוכנה - אנחנו יודעים - זה . . . הסינים מעתיקים מאוד מאוד.
    • (נתי) הוא עושה כמה מהלכים באיזור המכוניות האלקטרוניות, שאני חושב שכן ישימו חלק מהדברים האלה די מאחור.
      • חלק מהדברים שהוא עושה זה באמת את השירות מכוניות - שירות המכוניות האוטונומיות: מוניות ודברים מהסוג הזה, שבאמת הוא מתלבש על התשתית הזאת.
    • אז כן תהיה תחרות - אבל אני חושב שזה מראה על היכולת של חברות כאלה באמת לחבר נכסים ביחד, כדי לייצר באמת Disruptive . . . .
    (רן) . . . לא, אבל אורי, אתה יודע - הוא מחלק את הפלטפורמה בחינם . . . . אוקיי, זה לא חינם, אבל באיזושהי הנחה משמעותית. אתה יודע, זה כמו לחלק Android בחינם, ואחר כך, על הפלטפורמה הזאת, אתה יכול לעשות מוניטיזציה (Monetization).(אורי) כן, אבל מה שיעשו סינים, במיוחד עם הכניסה הגדולה שלהם לשוק המכוניות, זה שהם פשוט ייתנו את התוכנה בחינם . . . . אז ישברו לו את השוק.
    • (נתי) אז ההגנה, כרגע, שיש להם זה את המיסים - למעשה המכס . . .
    (רן) . . . והטראמפ . . .
    • (נתי) כן, בדיוק. הוא מאוד אוהב את ההגנה הזאת מול הסינים, כדי לייצר באמת איזשהו סחר, אבל באמת . . .
    (אורי) עד שזה מגיע ל-TikTok . . . 
    • (נתי) עד שזה מגיע ל-TikTok. . . ו-BYD אגב, באמת . . .
    • אפרופו CES - הם הראו משהו מאוד מדהים במכוניות . . . קודם כל, יש להם מכוניות מטורפות, אבל הם הראו מכונית, שהיא יכולה לקפוץ 6 מטרים, מעל בורות, כאילו . . . 
    • (רן) אה, שישה מטרים לרוחק, לא לגובה . . . .
    • (נתי) לרוחק, כן. היא בעצם . . . . אני לא יודע איך הם עושים את זה, אבל יש להם כמובן מנוע בכל גלגל, ואז הם משנים את הזווית של המיטלים, ככה שכשהוא מתקרב ורואה בור, אז הוא בעצם “מרחף” מעליו.
    • אז אם זה בור עד 6 מטרים, זה פשוט “ירחף” מעליו, ולא תרגיש את הבור לא תנחת עליו, כאילו תחטוף את זה  . . .
    • (רן) במהירות מספיק גבוהה, אני מניח?
    • (נתי) כן, אני מעריך ש-6 מטרים זה בתנאי שאתה במהירות מסוימת, אני מעריך שבמהירות יותר נמוכה זה הולך . . .
    (אורי) וכך הם ידלגו מעל הבור ש-Elon Musk כורה להם . . . 
    • (נתי) אז בהחלט הסינים יהיו תחרות, אבל אני חושב שפה . . . טוב, זה כבר גיאו-פוליטיקה, זו כבר שיחה אחרת, על כל המלחמות בין הסינים לשאר העולם.
      • אני חושב שלסינים יש כמה דברים שהם משחקים לרעתם - כל מיני דברים שעבדו לטובתם, יעבדו לרעתם.
      • אבל זה באמת שיחה גיא-ופוליטית, ש. . . .
    (אורי) . . . זה יגמר בדם . . . לא, באמת.
    • (נתי) אז יש פה שיחה גיא-ופוליטית מאוד מעניינת, לדבר על הדבר הזה - אבל זה לא לעכשיו, לא נושא שיחתנו עכשיו.
      • [למי שממש רוצה - הנה קצה-חוט]
    • אז באמת, אם אני מסתכל על הקנדידטים (Candidates) - ולא דיברתי על כל השחקנים האחרים, הייתי אומר ה-Pure Players כמו Anthropic ו-Mistral.
    • אני חושב שאגב - הם יעברו תהליך של קומודניזציה (Commoditization) מאוד משמעותי, כי זה הופך להיות משחק של באמת המון-המון כסף, המון המון השקעה.
        • [הנה דוגמא עדכנית]
      • וללכת רחב, על כל הקופה, ולא Play שהוא Vertical-י, צר . . . 

    27:31 מה דרוש כדי להצליח וטכנולוגיה כ-Commodity
    (רן) זהו, בוא נדבר על מה דרוש כדי להצליח: אז הזכרת אלמנט אחד, שזה Data. הזכרת אלמנט אחר, שזה חדירת-שוק, בהקשר של Microsoft . . . 
    • (נתי) ה-Bundle Approach, כן.
    (רן) אז זה אומר הרבה כסף, נכון?
    • (נתי) נכון, בדיוק. אז אני חושב ששלושת האלמנטים משחקים, מן הסתם, מאוד חזק, יש מספר שחקנים יחסית מצומצם, שיכולים לענות על הקריטריונים ושבאמת יש להם את הData.
      • לצורך העניין, הData - אני חושב שהוא המרכיב הכי מרכזי.
    (אורי) אבל פה אני כאילו שואל את עצמי - מנינו Data . . .
    • (נתי) Data, Bundle . . . 
    (אורי) . . . אינטגרציות וכסף . . . ומה שהופך פה לגמרי ל-Commodity זה טכנולוגיה.
    • (נתי) נכון, בדיוק - ואתה גם רואה את זה.
    • אתה רואה שהיום אפילו ב-Open Source, אתה יכול לראות . . . . 
      • את ה-LLM עצמו אתה יכול לייצר היום גם בגדלים קטנים וגם יחסית במחיר אפסי, אז זה בהחלט מוביל . . . . 
      • אז מי שעיקר הערך שלו הוא טכנולוגיה, הוא הולך לעבור דיווליוtציה (Devaluation) מאוד משמעותית, ויהיה לו מאוד קשה להתחרות מול הדבר הזה.
      • זה די ברור שזה יתכנס לאיזה . . .
    (רן) כלומר, OpenAI, Anthropic, Mistral . . . 
    • (נתי) כן. OpenAI, אני חושב שבגלל שיש להם עדיין את זכות הראשונים, ואני חושב שהם כן . . .
    (אורי) “זכות ראשונים” זה לא משהו ש . . . 
    • (נתי) אז אני חושב שזה יחזיק להם, לדעתי, להיות במקום רביעי ואולי לא מקום ראשון . . . 
    (רן) . . . זה כמו Docker . . .(אורי) . . . .אבל זה הרבה פעמים ה-Innovators’ Dilemma . . . (רן) אז לפני כמה שנים - עדיין קיימת חברה, קוראים לה Docker - אבל לפני כמה שנים היא הייתה הבטחה גדולה, וכנראה שלא ידעו למנף את זה. אז נכון, הם היו הראשונים בשוק, אבל בסוף אחרים לקחו את התהילה.אותו דבר גם OpenAI - אם ידעו למנף את זה, אז יופי . . . .
    • (נתי) כן, אז אני חושב שאני לא הייתי מספיד אותם לגמרי, אבל אני חושב שאת ההובלה אני לא הייתי נותן להם.
      • לא יודע אם זה יקרה ב-2025, אבל אם זה לא ב-2025 אז ב-2026, אני חושב שאנחנו נראה את שאר השחקנים בהובלה, בגלל כל הדברים שמניתי.
    (רן) אתה מדבר פה על AI בצורה מאוד מאוד גנרית - אבל יש המון נישות ו-Use Cases. סתם, דיברנו על מכוניות אוטונומיות - אני מניח שפה, נגיד, ל-Tesla יש הובלה. אוקיי - נניח. בעולם של אולי, לא יודע - פרודוקטיבית בעבודה - אז יכול להיות של-Microsoft תיהיה הובלה. זאת אומרת,  יש פה שוק די גדול . . .
    • (נתי) כן, אז אני אומר - יש, להבנתי, יש AGI ויש באמת את ה-”Vertical AI” נקרא לו.
    • ואני חושב - פתחנו בזה שיש פה שתי מגמות כמעט הפוכות, אבל הן קשורות אחת לשנייה
      • אז מגמה אחת של AGI היא בעצם הולכת לכיוונים של באמת משהו שיכסה כמעט כל מקרה אפשרי.
      • וההכרזה האחרונה אגב, של OpenAI, שהלכו לזה ש-GPT 403 - דלגו על 02 אגב, אתם יודעים למה?
      • (רן) אתם מדבר על O . . זה o2 . . . 
      • (נתי) o2 , כן, סליחה.
      • (רן) אז o3 . . . אז אני חשבתי על Ozon . . .
      • (נתי) לא - O2 זו חברת טלפוניה, מי שמכיר, אז הם לא רצו להיכנס לאיזשהם Infringements של . . . 
      • (רן) וה-Ozon לא הולך לתבוע להם . . . . אם נשאר ממנו משהו . . . 
      • (נתי) לא, לא.
    • (נתי) אז הם הצליחו להגיע למצב שהם עוברים באמת בנצ'מרקים (Benchmarks) מאוד משמעותיים בפיזיקה ומתמטיקה, ודברים מהסוג הזה.
      • וזו הייתה קפיצה גדולה.
    • והם באמת,  מתוך ההבנה של הניתוח הזה, האיצו מאוד הרבה מאוד אינובציות (Innovations) בהרבה מאוד תחומים, כמו הנושאים של Agent-ים, כמו הנושא של האפליקציות  . . . .
      • אז באמת - לא הייתי מספיד אותם, אבל לא הייתי גם נותן להם את ההובלה. או את המשך ההובלה.
    • אז זה לגבי OpenAI.

    31:11 מעבר ל-AGI ו-Open Source
    • (נתי) עכשיו, לנקודה שהעלית [רן] - מעבר ל-AGI, שזה בעצם נותן לכאורה איזשהו פתרון גנרי - GPT, שכל שאלה שתשאל אותו, הוא ידע לתת לך תשובה.
      • מאחורי הכל, אגב זה הרבה Agent-ים, שפשוט יודעים להפנות אליהם את הבקשה הרלוונטית.
    • יש באמת את החלק שהוא ההתמחות. זאת אומרת, מודלים קטנים יותר, שהם מאוד טובים בבעיה מסוימת ותחום מסוים.
      • אגב, מי שמתעסק ב-AI, יודע שבעיה האלוסינציה (Hallucinations) - או הדיוק, לצורך העניין - נפתרת בדרך כלל, או מצטמצמת, לא הייתי אומר נפתרת, ברגע שאתה מצמצם את ה-Scope של סוג השאלות שאתה בוחר וסוג הData.
        • כי אז אתה יכול לתת Prompt-ים יותר מדויקים, ואתה יכול לכוון ולעשות גם כמובן Fine-tuning לדברים האלה.
        • אז בסופו של דבר, גם כשאנחנו מדברים על AGI - הוא מורכב מהרבה מאוד Vertical Agents כאלה, שכל אחד - יש לו את ההתמחות הרלוונטית שלו.
    • עיקר המגמה של ההתמחות, אני חושב שהיא הולכת באמת לכיוונים שבהם Meta היא השחקן מוביל, Facebook.
      • והם הלכו לכיוון של Open Source - ובאמת ב-Open Source אנחנו מתחילים לראות כמה מודלים.
        • מן הסתם Llama 3 עכשיו, ו-Llama 3.1
    • ויש עוד כמה מודלים שנותנים פייט לא רע בכלל ל-GPT, בצד ה-LLM - זאת אומרת, כשמסתכלים על LLM to LLM, אתה יכול להגיע לתוצאות לא רעות בכלל.
      • וככל שאתה עושה לזה ורטיקליזציה (Vertical), ובאמת אם אני בונה Autonomous Cars, אני לא צריך עכשיו שזה יענה לי בסינית או בגרמנית, אני צריך שזה יעשה Autonomous Cars.
    • אז לכן, כשאני מצמצם את מרחב הבעיה, אני יכול באמת לייצר מודלים אפילו טובים יותר ממודלים גנריים, שמנסים לפתור את כל שאלות העולם.
    • אז באמת, ה-Open Source היא מגמה, היא הייתי אומר עם Volume כמעט שווה, ובעולמות של Enterprise למשל, ובכלל בעולמות של ה-ISPs משתמשים בזה הרבה.
      • לא רק כדי להוריד עלויות של GPT, אלא באמת כדי להצליח להכניס את זה לטלפונים, ל-Device-ים הקטנים, למצלמות . . .
      • לכל אחד מהרכיבים האלה, אתה לא יכול להישען על GPT חיצוני בשביל לעשות את הדברים האלה, אתה רוצה לעשות את זה לוקאלית (Local), מקומית.
      • ויש תחום מאוד גדול שמתפתח סביב הדבר הזה.
    • ובאמת, CES היה איזושהי דוגמה מסויימת לראות כמה מהר זה קרה, הדבר הזה.
      • זאת אומרת, היום כל מצלמת אבטחה, כל מכונית, טלפון מן הסתם, בין אם זה Android או . . . .
      • באים עם מודלים קטנים, שהם כבר embedded בתוך ה-Device-ים עצמם.
      • ו-Dell ו-nVIDIA הכריזו Developer Desktop, שבעצם מאפשר לך להריץ סוג של GPU, אם במקרה של Dell זה NPU, שזה Natural Processing Unit, שזה כאילו סוג של מתחרה של GPU . . . .
      • אבל הרעיון הוא בסוף להתחרות על המגרש הזה של עלות, Footprint, אנרגיה . . . . ולהביא את זה למקום  שבו זה נכנס למסגרת של עלות, שיכולה להתאים ל-Desktop.
    • אני חושב שזה די מהפכה, הדבר הזה - כי ככל שאתה מביא את זה קרוב למשתמש,  אז ה-Adoption של זה יהיה מן הסתם הרבה הרבה יותר גדול.
      • וזה מכפיל בהחלט משמעותי.

    34:28 מחשבות על Code Assistants
    (רן) אני סקרן אם יש לך מחשבות גם בתחום של ה-Code Assistants . . . .
    • (נתי) כן . . .  זה הבייבי שאני מתעסק בו ביום-יום . . .  והתשובה היא כן.
    • מה שאנחנו רואים שם זה שבאמת ה-Open Source ומן הסתם ה-Agent-ים, זה הדרך כמעט האפקטיבית העיקרית שאנחנו משתמשים בה.
      • אבל כמובן שאתה יכול לעבוד מול OpenAI וגם לייצר לך Code Assistant מאוד יעיל.
    • יש עם זה לא מעט בעיות, לפחות בעולמות שאני מתעסק איתם.
      • כמו למשל זה שאתה צריך שה-User ייתן לך את ה-Access ל-OpenAI שלו, ו-Data יוצא החוצה מתוך הארגון, שיש ארגונים שלא כל כך אוהבים את זה . . . 
      • ואתה נהיה איזשהו Broker של משהו, וזה קצת מדלל לך גם את הערך - אתה פחות יכול לעשות לזה Fine Tuning או Custom Training, כמו שאתה יכול במודלים של Open Source.
      • אז זו יכולת קסטומיזציה (Customization) מוגבלת.
    • ולכן אנחנו בחרנו ללכת דווקא למודלים של Llama ולמודלים של Open Source . . . 
    (רן) מה שאני מתכוון זה שיש תחרות לא קטנה לדעתי, בתחום של Code Assistants, של חברות שמפתחות כליםכמו GitHub, Cursor, Codium ועוד כמה.
    • (נתי) אז נכון, אז אני חושב - וזה מתחבר למה שאמרת על ה-Vertical-יזציה: היתה לי היום דווקא שיחה מעניינת עם חברת Security בהקשר הזה, שעושה משהו מאוד דומה.
      • ואז שאלתי באמת “למה אתה לא משתמש ב-Framework-ים קיימים, שעושים את הדברים האלה?”
      • ואז אני אמרתי לו בואו ננסה לענות על השאלה הזאת, ונבין גם למה הם לא עונים על כל השאלות.
    • אז א' - אנחנו מפתחים קוד בצורה מאוד מסוימת, עם Pattern-ים מאוד מסוימים.
    • זה לא מספיק כשאתה אומר לו “תייצר לי קוד” - והוא מייצר לך קוד.
    • אנחנו יודעים שרוב הזמן זה תחזוקה של קוד, אתה צריך שזה יהיה כתוב בצורה מודולרית, בצורה שמתאימה לצורה שבה אתה אחרי זה עושה Testing ו-Framework-ים . . . 
    • יש המון המון Knowledge שהוא ארגוני, בסופו של דבר.
    (אורי) אבל גם את ה-Styling הזה - הוא יכול ללמוד.
    • (נתי) כן, אבל הוא לא ילמד אותו מהאינטרנט, או לא ילמד אותו . . .
      • אלא אם כן זה, שוב פעם - יש דברים שהם גנריים, זאת אומרת Python ו-Go וכאלה דברים, שאתה בהחלט תמצא להם הרבה מאוד דוגמאות ב-Open Source Frameworks, ותוכל ללמוד אותם.
    • יש הרבה מאוד חלקים, שבהם למשל חברות Security, שכן מחוללים קוד, או במקרה שלנו פתרונות של  אוטומציה, שאין אותם באינטרנט.
      • לא תמצא עכשיו, לא תוכל לסרוק אותם באינטרנט וללמוד מהם.
    • אז א' - מראש, אין את הידע הזה בחוץ.
    • וב' - זה ידע מאוד ארגוני, הוא מאוד תפור לסוג הבעיות אוטומציה שאני מתעסק איתן ובעיות התשתיות שאנחנו מתעסקים איתן, ו-Pattern-ים שאנחנו כותבים אותם.
      • אז אני חייב איכשהו ללמד משהו שידע לעשות את הדברים בצורה הזאת.
    • ולכן, זה מה שאנחנו עושים . . . 
    (אורי) או שהקוד שלך יכול ללמד . . . 
    • (נתי) זה מה שאנחנו עושים, אבל עדיין אני אומר - עדיין זה ידע שהוא מאוד Proprietary.
      • הוא גם לא . . . אני לא בטוח שיש לו ערך ברמה גנרית, כמעט בטוח אפילו שלא . . . 
    • ויש Policy, שאנחנו מן סתם מיישמים, כדי שהדברים באמת . . . 
      • נניח, בדרך שבה אנחנו משתמשים, אנחנו רוצים ששאר הצוותים יכתבו בצורה מאוד מסוימת.
    • אז איך אני מעביר את ה-Knowledge הזה?
      • אז בעבר היינו עושים  Training וכל מיני דברים כאלה, אז אמרנו “בואו נעשה את זה ב-Copilot”!.
      • זאת אומרת, מראש, כשאתה כותב כבר את הקוד לסוג של אפליקציה מסוימת, שיהיה לך בן אדם שעובר לך על הקוד ואומר לך “לא ככה אנחנו כותבים! אתה צריך לכתוב את זה בסטנדרט כזה”.
      • אז אתה בעצם מממש את ה-Policy הזה ב-Copilot, וככה אתה יכול בעצם לייצר איזושהי סטנדרטיזציה (Standardization) ארגונית.
    • אז הצורך ב-Vertical-יזציה יהיה קיים תמיד, בכל ארגון.
      • אני לא חושב שמודלים גנריים, גם עם Open Source, יכולים לפתור את כל בעיות העולם.
      • יש הרבה מאוד תת-נישות ונישות, ול-Open Source יש מרכיב מאוד מרכזי בלאפשר את היכולות האלה ולאפשר לחברות להשתמש בדברים האלה.

    38:24 איפה אנחנו נמצאים?
    • (נתי) אז רק לסכם את המפה של איפה שאנחנו נמצאים, אני חושב, ב-Ecosystem: אז יש באמת שתי מגמות עיקריות:
      • יש לנו את ה-AGI ואת ה-Domain Model, ששם אני חושב שהחברות שיובילו זה דווקא אני חושב Google עם הסיכויים הכי גבוהים.
    (רן) ב-Domain Model או ב . . .
    • (נתי) ב-Domain Model, ב-Gemini, לצורך העניין.
    • אני חושב ש-X - אני חושב שיש להם יכולת להיות . . . בין אם שניים, אולי אפילו יכולים להפתיע תוך שנה-שנתיים ולהיות ראשונים, אבל יש להם . . . 
      • הם מתקדמים מאוד מהר, ודווקא זה שהם שחקן טיפה מאוחר יכול להיות פתאום יתרון עבורם.
      • יש להם המון ידע ב-AI, מן הסתם, בתוך הארגון עצמו - אז הם אני חושב יהיו ההפתעה של המקרה הזה.
      • ו-OpenAI, כמו שאמרתי, יהיו לא ראשונים, אולי רביעיים, בכל מקרה.
      • וכמובן Amazon ו-Microsoft - לא בהכרח יהיו מספר אחד, אבל הם יהיו במקום טוב ברשימה הזאת.
      • זה בגדול ה-Predication, בהקשר הזה.
    • ו-Open Source, כמו שאמרנו, הוא לא ממש מתחרה במודלים האלה.
      • הוא מתחרה בהם באופן יחסית עקיף, כי עדיין רוב השימוש של המשתמשים יהיה מול מול ה-GPTs ומול Microsoft ומול הזה . . . 
      • רוב ה-Consumers יעבדו בשיטה הזאת, הם לא יתחילו להתקין לעצמם מודלים ויעבדו Open Source.
    • אז Open Source באמת נותן מענה לנישות יותר Specialized, יותר Custom, יותר יחידות-קצה שצריכים לבנות, Developers שרוצים לבנות בעצמם Pattern-ים ספציפיים אליהם.
      • אני חושב שזה מכסה נישה כזאת, שהיא גם מאוד גדולה בעצמה - אבל היא מאוד שונה באופי שלה ובסוג השימוש שבה.
    • זאת אומרת, זה לא ממש Head to head competition, זה לא אסטרטגיה של קומודיטיזציה (Commoditization), כמו שהיה בדרך כלל בOpen Source, שיש איזה שחקן גדול שכותב Enterprise Software והוא לוקח עליו הרבה מאוד כסף.
      • ואז אני אבוא עם Open Source, כמו מה ש-Red Hat עשו ל-Windows - אני אבוא עם Open Source ואעשה קומודיטיזציה על הדבר הזה, זה לא המקרה הזה.
      • זה לא המקרה של Open Source, שמאפשר לעשות באמת Use Case-ים מעט שונים.
    • הוא מתחרה בשוליים, אני חושב, ביכולות של המודלים הגדולים - אבל לא ממש,  לא הייתי קורא לזה תחרות Head to Head.
    (רן) לא, אבל הוא כן מוציא את העוקץ מחברות שהמוקד שלהם זה טכנולוגיה . . . 
    • (נתי) כן, הוא בהחלט . . . כן, אוקיי - הערה נכונה. הקומודיטיזציה (Commoditization) תקרה מול החברות שבאמת על הציר של הטכנולוגיה.

    40:53 סיום
    (רן) אוקיי, אז תודה רבה, קודם כל . . .(אורי) רגע, נתי - עכשיו, כשתראה קפה שחור, תהפוך את הכוס ותקרא לנו בקפה . . . 
    • (נתי) אני קורא בקפה ש-2025 תהיה שנה טובה.
    (רן) קודם כל שתהיה שנה טובה. דבר שני, כמו שאמרנו בהתחלה - אתם לא צריכים להאזין הפרק הזה שוב בעוד שנה,כי צדקנו! אוקיי, יש לנו את נתי, אנחנו יודעים שאנחנו צודקים בעניין הזה.אבל באמת - אני אקח את התקווה שלך לשנה מצוינת, בכל הגזרות - גם בתחום של AI, גם בתחום המדיני, ביטחוני וכל השאר.🎗️וזהו - שיהיה לנו טוב. שתיהיה לנו שנה טובה.תודה רבה.
    [קישור לקובץ mp3] האזנה נעימה ותודה רבה לעופר פורר על התמלול!
    42 min
  • 488 Developing with LLMs securely, with Guy from Pillar
    פרק מספר 488 של רברס עם פלטפורמה, שהוקלט ב-7 בינואר 2025 - פרק ראשון לשנת 2025, בתקווה שתיהיה שנת בשוורת טובות. אורי ורן מארחים באולפן בכרכור את גיא גרינאפל מחברת Pillar Security כדי לדבר על LLM ו-Security. 🎗️


    00:54 גיא ו-Pillar
    (רן) לפני זה -  קצת עליך וקצת על Pillar?
    • (גיא) אז קודם כל -  כיף להיות פה. אז אני גיא גרינאפל, בן 34 מתל אביב.
      • אני בגדול “משוטט לי בתעשייה” בערך 12 שנה, אחרי שהשתחרתי מ-8200.
      • אני בעולם התוכנה בערך 8-9 שנים - הייתי ב-LivePerson, אחרי זה הייתי ב-AppsFlyer.
        • כמעט שבע שנים, תפקידי פיתוח וניהול-פיתוח שונים.
      • במהותי ובעברי אני מהנדס Backend, מתעסק המון ב-High Scale, High Throughput Low Latency Systems.
      • ובשנה האחרונה פחות או יותר אני מוביל את הפיתוח בסטארטאפ קטן ונהדר בשם Pillar Security.
    • ו-Pillar זו בעצם חברת Early Stage, מתעסקת בעולמות ה-AI security, LLM security,
      • קמה לפני כשנה וחצי, גייסנו באזור ה-2 מיליון דולר Pre-Seed מקרנות מעולות.
      • ובעצם מה שאנחנו עושים זה אנחנו מאפשרים לחברות לאמץ, להטמיע פתרונות AI, בצורה שהיא safe, secure, private וכו’.
      • בעצם, מה שאנחנו מאפשרים לעשות זה - בפלטפורמה אחת - לגשת, החל משלב ה-Discovery, למצוא את כל הפרויקטים שמשתמשים ב-AI, במודלים, ב-LLM, בארגון.
        • על הדבר הזה, לעשות איזושהי אבאלואציה (Evaluation) על השימוש ב-LLM - איך משתמשים, System Prompts,  Meta-Prompts - כל דבר שיכול כבר לייצר Risk כבר בשלב הזה.
        • ואיך זה מתחבר לתוך האפליקציה.
      • יש לנו פתרונות של בעצם Runtime Detection & Response - כלומר, סוג של אפשר להגיד Guardrails ב-Runtime, שמגינים על האפליקציה.
        • נדבר על זה גם מן הסתם בהמשך, על הצורך בדבר הזה.
      • ומתעסקים גם ב-Automated Red Teaming - בעצם, לקחת את האפליקציה שהמפתחים, שהלקוחות שלנו  בונים, ולעשות לאיזשהו תהליך של אבאלואציה (Evaluation).
        • להבין איפה היא חשופה, למה היא Susceptible, איזה סוג של מתקפות.
        • והדבר הזה בסוף מתחבר לאיזה-שהם Guardrails, שגם יודעים ללמוד את האפליקציה וכו', ולהתאים את עצמם.
      • אז זה כזה איזשהו פתרון מקיף שאנחנו מתעסקים בו.
    (אורי) ספציפית בשימושים במודלים של AI נכון? כאילו . . . 
    • (גיא) אתה מתכוון ספציפית ב-LLM?
    (אורי) כן . . . זאת אומרת, אתה אומר “אנחנו מריצים Red-Team וכו' לאפליקציה”, אבל כאילו . . . .(רן) זה לא “Security גנרי“, זה פוקוס . . . 
    • (גיא) אתה צודק, אני אחדד - Red Teaming, נכון . . .  תכל’ס, המאזינים שלנו הם מפתחים, הם אנשי Data Science, זה פחות אנשי Security.
      • אני גם, אגב,  לא מגיע מעולם ה-Security, ואני אגיד ש-Red Teaming זה מונח מאוד מוכר בעולם ה-Security.
      • הוא מדבר על ניסיון בעצם לדמות “צבא אוייב” או לדמות תוקף . . . 
      • (אורי) מה שקוראים “White Hat” . . . 
      • (גיא) בדיוק, להגיד “אני רוצה לפרוץ לאפליקציה בכל דרך אפשרית”.
    • והרעיון של Red Teaming הרבה פעמים הגיע מתוך Professional Services.
      • כלומר, אנשים שזה העיסוק שלהם, זה התחום שלהם - ובסוף זה Services.
    • אנחנו לוקחים זה למקום של Automated Red Teaming. כלומר, לייצר ממש מוצר SaaS-י, לצורך העניין,  שיודע לבצע ניסיונות תקיפה ושבירה.
      • נדבר גם אחרי זה בעצם על סוגי המתקפות השונים.
    • אבל מול אפליקציות מבוססות LLM - שם אנחנו כרגע מתמקדים.
    (רן) כן, זאת אומרת לא Port-Scanning או דברים בסגנון - ספציפית ל-LLM-ים.
    • (גיא) נכון.

    04:38 מי מפחד מ-LLM ולמה שסבתא תרצה לעשות Prompt Injection
    (רן) אוקיי, אז קם אדם בבוקר, כמאמר המשורר, והוא רוצה לעשות אפליקציות LLM. ממה הוא צריך לפחד?בואו לנסה ככה להבין, פחות או יותר, מה עם וקטורי-התקיפה או איזה סיכונים הוא צריך להכיר, לפני שהוא מתחיל  . . .(אורי) LLM זה לא להשתמש במודל, נכון? זה ה . . . .
    • (גיא) האמת שלא הכרתי . . . . אנחנו ניקח את זה אלינו - יש לנו קיר-ציטוטים כאלה משעשעים, אז נכניס . . .
    (אורי) אני רק מבקש רפרנס . . . .
    • (גיא) אבל גם יש שם “אסור בדיחות אבא אחרי שש בערב” , אז צריך לראות שנייה איך זה מתכתב [בר-זיק?].
    (אורי) הבנתי, אני אתבייש לי פה בצד . . . .
    • (גיא) אז בסדר, בואו נתחיל באמת לדבר קצת על עולם הבעיה, וקצת על מה הסיכונים.
    • אני חושב שהכי נכון להתחיל מהמונח, הטרמינולוגיה שנזרקת לאוויר מדי יום ביומו - “Prompt Injection”, נכון?
    (אורי) מדי יום ביומו - בדיוק היום שמעתי על זה . . . 
    • (גיא) קראת את רן בר-זיק?
    (אורי) לא . . . 
    • (גיא) סבבה. נדבר על רן בר-זיק, כי הוא גם אוהב לדבר על Prompt Injection-ים, עשה איזה טריק נחמד . . . טוב, נספר על זה אחרי זה.
    • אבל בכל מקרה, לענייננו - המונח שהכי הרבה מדברים עליו זה בעצם Prompt Injection.
      • זה מונח שהוא לקוח מעולמות ה - מה שהיה בעבר - SQL Injection: הקונספט של לנסות  . . . 
      • (רן) כולנו מכירים את Little Bobby Tables, נכון?
      • (גיא) אני לא מכיר . . . 
      • (רן) שהמורה מתקשרת לאימא ואומרת “בגלל הבן שלך, כל טבלת הציונים נמחקה!”, אז היא אומרת לה “מה? איך הוא עושה דבר כזה?”, אז הוא כתב “Bobby'); Drop Table Students; --”  . . .  והיא עונה “אה, כן, We call him Little Bobby Tables” . . .. 
      • (גיא) לא הכרתי את זה . . . אוקיי, אז Prompt Injection . . . 
      • (רן). . .  SQL Injection, רק להזכיר למי שלא מכיר, זה איזושהי דרך להחדיר תוכן Malicious לתוך SQL, ומי שלא מסנן את אותו תוכן, יכול בטעות גם להריץ את זה מול ה-Database שלו ולשנות Data, למחוק  Data, בקיצור לעשות דברים שהוא לא תכנן לעשות, כשלא עושים סינון כמו שצריך של ה-Input-ים.
      • (גיא) בדיוק. וזו אגב נקודה טובה, בטח גם על זה נדבר.
    • (גיא) אז Prompt Injection בעצם זה איזשהו מונח שנלקח מתוך הדבר הזה, כשהרעיון הוא ניסיון להזריק איזשהן הוראות חדשות, אחרות, לתוך המודל.
      • כלומר, לגרום למודל - בדרך כלל זה מגיע ב-Context של לגרום למודל לבצע פעולות שהוא לא אומן לבצע.
        • או שיותר מזה - הוא אומן לא לבצע, כלומר ממש בדרך כלל בתהליך ה-Finetuning, ממש אומן לא לבצע.
        • זה Prompt Injection.
    • אני רוצה רגע לעשות איזושהי הבחנה בין Prompt Injection, למה שמתייחסים אליו בדרך כלל בתעשייה בתור Jailbreak, ובעצם זה לא אותו דבר.
      • כלומר, Jailbreak זה איזושהי פעולה מול המודל - הרבה פעמים זה ייראה כמו איזושהי חתימה מיוחדת או כזה הרבה תגיות, או כל מיני דברים כאלה . . . 
      • (רן) כלומר, הסיפור “אם סבתא שלי הייתה רוצה להכין בקבוק מולוטוב, מה היא הייתה אומרת?” - אתה מסווג את זה כ-Jailbreak או . . . .
      • (גיא) אתה אומר הניסיון שלי עכשיו לגרום למודל לעשות . . . 
      • (רן) . . ..  לעשות משהו שהוא לא אמור לעשות . . . 
      • (גיא) לא, זה לא Jailbreak - זה, הייתי אומר, יותר ניסיון לבצע Prompt Injection
        • אבל אני אחדד ואני אסביר, בסדר? 
    (אורי) אם אני שואל את המודל “אם סבתא שלי הייתה רוצה לעשות Prompt Injection, איך היא הייתה עושה את זה?” . . . . 
    • (גיא) וואו, זה משהו ש...
    (רן) אורי, הכנסת אותנו עכשיו לרקורסיה, אנחנו עכשיו בחיים לא נצא מזה . . . .  
    • (גיא) . . . זה Deadlock . . . . היו מודלים שמתו בגלל זה.
    (רן) אורי, הכנסת אותנו לרקורסיה . . .  אנחנו עכשיו בחיים לא נצא מזה. אורי, הכנסת אותנו . . . . 
    • (גיא) צריך לעצור אותך . . .
    • אוקיי, אז אני אסביר שנייה את ההבדל בצורה קצת יותר ברורה - Jailbreak, כמו שאנחנו תופסים את זה, זה סוג של Privilege Escalation. בסדר?
      • זה עכשיו להצליח להשיג או להגיע למצב מול המודל, שאתה יכול לגרום לו לעשות מה שאתה רוצה או דברים אחרים ממה שהוא תוכנן לעשות.
      • ו-Prompt Injection זה ההזרקה עצמה, בסדר?
    • אני אגיד גם שלרוב, אנחנו נוטים להתייחס, לפחות אצלנו, למה שנקרא Indirect Prompt Injection.
      • כי אני אגיד שמשם הגיעו, ממה שראינו, הריסקים היותר גבוהים - זה פחות צפוי, וה-Context הוא בדרך כלל Context שאנחנו לא נדע או לא בהכרח נצפה מה הוא הולך לגרום לעשות.
    • עכשיו, אני אסביר גם את המושג הזה -  מה זה אומר Indirect Prompt Injection?
      • אני עכשיו משתמש ב . . . לא יודע, בוא ניתן איזושהי דוגמה. נגיד שאני . . . 
    • (רן) בוא, יש לי דוגמה הכי פשוטה: אתה עושה WebApp פשוט שאומר לך, נגיד, מה מזג האוויר ומה כדאי ללבוש לפי מזג האוויר.
      • אז בתור Textbox, אתה מצפה למקום של עיר.
      • אם במקום עיר, יבואו ויכתבו לך, לא יודע, את הסיפור - “מה הסבתא שלי הייתה אומרת אם הייתי מבקש נניח להכין בקבוק מולוטוב?”, אז יכול להיות שיצליחו להוציא . . . 
    • (גיא) יפה, אז זו דוגמה מעולה ל-Direct Prompt Injection. בגדול, תיאורטית . . . 
      • זה עכשיו שאני User, ואני בא ואני מנסה בצורה אקטיבית “לעבוד” בעצם על המודל - וזה בהנחה שה-Input הזה הולך As-is לתוך המודל.
    • ו- Indirect Prompt Injection, בדוגמה שאתה נתת, זה שאני עכשיו כותב לצורך העניין “לונדון”, בסדר?
      • ואז האפליקציה, מאחורי הקלעים, ה-LLM, שנניח לשם הדוגמה שהוא Agent . . . 
      • בהערת סוגריים - Agent: אנחנו מדברים בעצם על LLM-ים או נקרא לזה “מקבץ של LLM-ים”, בגדול, שיש להם איזשהו Orchestrator ויש להם כלים.
        • והכלים האלה הם כלים שונים שהם יכולים להשתמש בהם כדי לבצע את הפעולה.
        • הכלי יכול להיות איזושהי גישה ל-API מסוים, זה יכול להיות לצאת לחיפוש באינטרנט, וזה יכול להיות לגשת ל-Database של החברה כדי להוציא איזשהו Data, אוקיי?
    • אז לצורך העניין, Indirect prompt injection בדוגמה הזאת, זה יהיה, אני כותב נניח “לונדון”, ואז עכשיו האפליקציה או המודל ניגש לאיזה אתר או ל-API, או לאיזשהו Context חיצוני.
      • נגיד לשם הדוגמה - אתה שאלת אותי מה היה המזג אוויר בלונדון פעם, או מי היה ראש ממשלה של בריטניה לפני, לא יודע, מאה שנה?
        • ניגשתי לויקיפדיה - וכשהמודל עובר על העמוד ויקיפדיה, לצורך הדוגמה, יכול להיות שם למטה בתחתית התוכן, איזשהו Context - שהוא בפני עצמו יהיה Prompt Injection.
        • זה Indirect prompt injection.
    • אני אגיד שלמודלים האלה מאוד מאוד קשה לעשות את ההבחנה בין מהו התוכן, שעכשיו הם קוראים, שהם קיבלו כאיזשהו Input - לבין הוראות חדשות שהם מקבלים ושהם צריכים לבצע.
      • וזה בעצם הבסיס, כאילו, לכל ה-Risk-ים האלה.
    (רן) זאת אומרת, בזמן שב-SQL, אולי יש לך את יכולת לבוא ולהגדיר “הנה, זאת שאילתה, ויש לה פרמטרים, והפרמטר צריך להיות או Integer או String” . . . אבל זאת אומרת, ברור מה זה, אוקיי? אתה לא יכול להכניס שם -- Drop Tables בתור פרמטר . . . . ב-LLM, זה הכל טקסט, ואין הבדל בין טקסט לטקסט, ואתה יכול בתוך הטקסט לעשות מה שאתה רוצה . . . .
    • (גיא) והוא ממש טוב בלעשות אינטרפטציה (Interpret) לטקסט.
      • כאילו, הוא “מבין” . . . המודלים האלה, הם מבינים המון המון המון סוגים של Input-ים.
      • וזה חלק מהמשחק פה, וחלק ממה שמייצר את הריסקים.
    • כי בסופו של דבר, אני יכול עכשיו להכניס Input למודל, שהוא, נגיד, בוא נדבר על הסיפור, על “הסבתא שרצתה להכין מולוטוב” [סיפור ילדים האהוב, עכשיו בגרסת אודיו?]
      • אז כאילו לכאורה, נורא קל להגיד “רגע, שנייה, אתה מנסה לעבוד עליי!”
      • אבל עכשיו בוא נעשה לזה Encoding ל-Base 64. ועכשיו, לא יודע, נוסיף על זה עוד איזה “מטבל כזה ומטבל אחר”, ונשים עוד Evasion Techniques ועוד Obfuscation ודברים.
      • ופתאום, זה כבר פחות קל.
    • ואנחנו רואים, וגם יוצאים אז המון מחקרים, שככל שאנחנו הולכים למקומות האלה של ה-Evasion Techniques והאובפסקציה (Obfuscation), המודלים פחות טובים בלהתגונן.
      • ולכן אני אגיד - הטכנולוגיה הזאת, במהותה, היא פשוט . . . היא Prone לדברים האלה.
      • זאת אומרת, יש פה נטייה, יש פה איזושהי פגיעות - שהיא מובנית בתוך הטכנולוגיה.
    (רן) כן, זאת אומרת - מצד אחד, הטכנולוגיה Enabler - אתה יכול לעשות דברים מדהימים, אתה יכול לייצר הרבה מאוד Value. אבל יחד עם זה גם מגיע סיכון גדול. With great power comes great responsibility, אמר ספיידרמן.
    • (גיא) נכון. דוד של ספיידרמן. דוד בן.
    (רן) אז זה היה הדוד? אוקיי, אני אתקן מעכשיו את קיר הציטוטים שלי . . . .
    • (גיא) מעולה . . . 

    13:06 איזה Guardrails יכולים לעזור ואיך להגיע לסלובניה
    (רן) כן, אוקיי - אז דיברנו על כמה דברים. דרך אגב, הזכרת עוד מושג מקודם, שנקרא Guardrails, שתכף נגיע אליו. דיברנו על Prompt Injection ישיר - זאת אומרת, נגיד, המשתמש הוא Malicious, ומנסה לעשות משהו, ויחסית אולי קל לסנן את זה. דיברת על Indirect Prompt Injection, כלומר, נגיד, התוכן או ה-Database או אתר שממנו אתה מנסה למשוך את התגבור ל-Prompt שלך, מכיל תוכן שהוא בעצמו Malicious, ואולי לא ה-Data. זאת אומרת, גם אם הנחת שהמשתמש הוא Malicious, אתה כנראה תניח שה-Database בסדר - אבל גם את זה כבר אי אפשר להניח, או שויקיפידיה בסדר, אבל גם את זה כבר אי אפשר להניח.ואז, מקודם, הזכרת את המושג של Guardrails.אז איזה Guardrails. למשל, קיימים בעולם הזה? נגיד, איזה ספציפים יכולים לעזור מול שתי התקפות כאלה?
    • (גיא) כן. אז שנייה לפני שאנחנו מדברים על Guardrails, אני רוצה רגע לתת איזשהו Framing לריסקים (Risks).
      • כי דיברנו על מה היכולת - כאילו, מבחינת נקרא לזה “התקיפה של המודל”, הניסיון לעקוף אותו.
      • אבל בסוף, כשאנחנו מדברים על הריסק - אם אני פשוט מצליח לעקוף את מנגנון ההגנה של המודל, זה נחמד, אבל זה עדיין לא משהו שהוא בהכרח מעניין, זה עדיין לא בהכרח מאיים על חברות.
      • כאילו, למה שמישהו ישלם, אם לא יודע מה - המודל שלי עכשיו או האפליקציה שלי, כתבה לי הייקו, או נתנה לי מתכון למולוטוב? זה לא בהכרח מה שאתה חושש ממנו . . . 
      • ואני חושב שמה שמעניין לדבר עליו, זה מה גוזר את הסיכון.
    • אז אני חושב שהסיכון נגזר מכמה נקודות.
      • קודם כל, מה נקרא לזה ה-Attack Surface - או בעצם, מה ה-Input שיכול להגיע למודל?
        • זאת אומרת, האם ה-Input הוא trusted? האם זה מגיע מ-User שאני יודע שהוא לקוח שלי, למשל.
      • זאת אומרת, יש לפעמים מוצרים שהם מבוססי-LLM, שהם בתוך פלטפורמות ארגוניות ודברים כאלה.
        • אני יודע נגיד ש-AppsFlyer התחילה לעבוד הדברים כאלה ממש, קצת לפני שעזבתי, והרבה חברות עושות את זה.
        • במקרה כזה, אתה יכול להניח שהלקוח הוא לא Malicious, אז זה נגיד לא משהו שאולי צריך לדאוג ממנו.
      • במקרה אחר, אם אני עכשיו איזשהו Chatbot כזה, של Support של חברה, שכל אחד עכשיו, כל אדם, יכול להיכנס ולכתוב,
        • אז אולי משם יגיע User שהוא Malicious, וזה מגדיר את המשטח-התקיפה.
      • הנקודה הנוספת מהצד השני זה מה הנגישות שיש ל-LLM.
        • זאת אומרת, לאיזה Resource-ים, לאיזה Asset-ים הוא נגיש? הוא נגיש ל-Database רגיש, הוא נגיש לאינטרנט, איזה Tools יש לו - דברים כאלה.
      • וזה בגדול אני חושב השתי נקודות שיכולות להיות רלוונטיות, ויגדירו כמה יש פה באמת ריסק.
    (רן) כן, כשאמר “Tools”, אתה מתכוון ליכולת לקרוא לפונקציות או לקרוא ל-API-ים. נגיד, לא יודע - לעשות Log-out ל-User או למחוק שורה ב-Database.
    • (גיא) בדיוק. אני, כשאני עכשיו . . . . בעצם, Tools זה גם, זה הולך יד ביד עם המושג של Agents.
      • בעצם, הרעיון זה “אני איזושהי אפליקציית LLM”
      • אני מקבל ב-Meta-Prompt שלי, אני מקבל - בעצם כשמפתח מקנפג (Configure) אותי, מגדיר אותי, את כל העבודה עם המודל - אני אומר לו “תשמע, יש לך את החמישה כלים האלה, שאתה יכול לבחור מתי להשתמש בהם”.
      • אם עכשיו אתה מקבל איזשהו Input, איזשהו Prompt, אז אני מייצר לו איזשהו Description או הסבר, של מתי אני משתמש בכל כלי כזה.
    • וה-LLM - הוא גם מקבל החלטה. זאת אומרת, זה חלק מאותו Agent.
      • אז לפעמים אני ניגש ל-Database או מוחק או מוסיף רשומות.
      • לפעמים אני יוצא לאינטרנט,
      • ולפעמים אני...
    (רן) ניקח את הדוגמה של “מה כדאי ללבוש, אם אני נוסע עכשיו ללונדון?” - הוא ילך ל-weather.com, שזה כלי, ילך ל-weather.com, יעשה קריאת API - זה לא בתוך ה-LLM, זה איזשהו Agent, כמו שאמרת, שיעבוד יחד עם ה-LLM. אז ילך ל-weather.com, ייקח את מזג האוויר, יחזיר את זה וישים את זה בתוך Prompt ל-LLM, ו-LLM “ילעס את זה” וייתן לך בסוף תשובה: “כדאי ללבוש מעיל ולקחת מטריה”.
    • (גיא) בדיוק. והעולם הולך למקום הזה - של Agentic Systems.
      • כאילו, יש על זה הרבה מאוד מחקרים, והרבה חברות הולכות לשם.

    (רן) אז ללכת ל-weather.com - אוקיי, לא מזיק. אבל אם זה ללכת ל-Database ארגוני? אם זה לקרוא רשומות HR? אם זה לגשת לבנק? אז שם כבר יכול להיות נזק . . . 
    • (גיא) נכון. אז כשאנחנו מדברים . . . אני חוזר רגע בעצם ל-Guardrails, ואיך אנחנו מגנים.
      • וספציפית כרגע, אנחנו נדבר על ה... 
      • אני גם גיליתי את זה לפני שנה -  בעולם ה-Security, אז “Run time” זה מה שאנחנו המפתחים קוראים לו “Real Time”.
        • בסדר? הדברים הם אותו דבר, המונחים הם קצת שונים.
        • אבל בגדול, עולם ה-Runtime Detection & Response.
    • הרעיון ב-Guardrails זה בעצם לייצר או להציב איזושהי שכבה בין האפליקציה לבין המודל, גם ביציאה החוצה וגם בכניסה פנימה, כדי . . . 
      • זה יכול להיות לפלטר (Filter) דברים, בסדר? אם זה למשל, למנוע הדלפות של PII, PGI, כל מיני Data “רגיש”, נקרא לזה.
      • יצא לנו לעבוד עם לקוחות, עם Design Partners בעולם ה-Finance, בעולם ה-Healthcare - שם זה מאוד מאוד משמעותי.
    (רן) זאת אומרת שזה על ה-Output - כן, אתם מסתכל על ה-Output, ואתה בודק האם יכול לדלוף החוצה משהו . . . 
    • (גיא) אז בגדול, אני אגיד שזה לשני הכיוונים - יש גם את הכיוון שלה להכניס את זה, מן הסתם, למודל - אבל זה יותר על ה-Output.
      • זה יותר החשש מלהדליף עכשיו PII, PGI של User אחר של החברה, של הלקוח, ל-User אחר, שזה לא ה-Data שלו, מן הסתם.
      • אז אנחנו מדברים על לזהות PII, PGI,.
    • אנחנו מדברים על Secrets, בסדר? זה כל מיני - כל משהו שהוא Data רגיש כמו API keys,  . . . API keys, האמת זו הדוגמה הכי טובה שיש לי בהקשר של Secrets.
      • אבל כל דאטה שהוא רגיש, יכול לתת גישה למערכות שונות, ל-Resource-ים רגישים וכו'.
    • יש Guardrails שהם בכלל בתחום ה-Integrity וה-Safety - זאת אומרת, אני לא רוצה שהאפליקציה שלי תקלל.
      • כאילו מבחינתי, אם עכשיו אני Chatbot שירות לקוחות, אני ממש לא מעוניין שלא יודע, יכתבו ללקוח שלי . . . 
    (רן) בוא, אני אתן לך דוגמה מהעולם האמיתי, שנתקלתי בה לא מזמן - איזשהו ניסוי שעשיתי, שלוקח על Database של נגיד ויזות של מדינות - לאיזו מדינה אני צריך ויזה ואיך אפשר להיכנס. והשאלה ששאלתי נגיד זה “האם אפשר להיכנס לסלובניה, ללא ויזה?”. תשובת-הספר היא כמובן שלא. ה-LLM ענה לי “לא - אבל אתה יכול להיכנס לפולין בלי ויזה, ואז לחצות הגבול ואף אחד ישים לב, והנה אתה בפנים” . . . .
    • (גיא) וואו, זה אמיתי?
    (רן) כן, כן, זה אמיתי.
    • (גיא) צייצת את זה?
    (רן) לא, כי זה ניסוי פנימי שעשיתי . . . אבל כן, זה מסוג ה-Guardrails שאף אחד כנראה לא חשב עליו מראש, אוקיי? זה לא PII, זה לא Curse, זה לא Hate Speech . . . . אבל עדיין לא היית רוצה שה-Chatbot שלך ייתן תשובה ככה.
    • (גיא) חד משמעית.
    • עכשיו, מבחינתי זה מתחבר מאוד לנושא האינטגריטי (Integrity), שאני אולי טיפה קופץ קדימה, אבל בגדול, כשאנחנו חושבים למה שמפתחים - בכלל יעניין אותם לדבר על Security, בסדר?
      • כאילו, בסוף היום, יש את הדברים שהם Obvious, נכון? כולנו רוצים להטמיע AI
      • זה Adapt or Die, כמו שאמרו חכמים - ו-AI נותן לנו את ה-10x ו-100x וכו'.
    • הבעיה שזה מכניס איתו איזה שהם Risks, ואם עכשיו אני מפתח שלא יודע, ניגשה אלי עכשיו ה-VP R&D של הארגון, ואמרה לי “קח את הפרויקט הזה, תכניס שם LLM!” או “בואו נבנה פרויקט חדש, תכניס שם LLM, בואו נהפוך אותו ונהיה בקדמת הטכנולוגיה”.
      • אני, מה שמעניין אותי עכשיו זה לבנות מוצר - שהוא עובד, שהוא עושה את מה שמצופה ממנו לעשות, שהוא עומד ב-Scale שנדרש, שהוא נותן ושהוא עונה על הדרישות המוצריות, נכון?
    • עכשיו, המשחק פה, ומה שאני חושב שכן צריך לעניין מפתחים בשלב ראשון, זה אירוע האינטגריטי (Integrity).
      • כי מה זה אומר בסופו של דבר? אנחנו עובדים - דיברנו על זה קצת בשיחת הכנה - אנחנו עובדים עם  Black-Box.
      • כאילו, LLM, כשאנחנו . . . זה נכון אגב, גם במודלים שהם לוקאליים (Local), אבל בפרט ב-LLM-ים: אם אנחנו עובדים מול OpenAI, עובדים מול Anthropic, עובדים מול Google וכו’.
    (אורי) זה כמו שאתה מגייס עובד - אתה מגייס Black-box, נכון? אתה לא יודע אם הוא יקלל יום אחד, או . . . (רן) דבר מניסיון, אורי - בוא נשמע . . . .
    • (גיא) כן. בדיוק . . . זה קצת, זה מאוד “Black-boxed”.
    • והנקודה שלי, זה שאני - בתור מפתח - אומר מה הדרך הכי טובה עבורי, להבטיח שהאפליקציה תעשה מה שהיא אמורה לעשות?
    • הנקודה שלי זה שעם דברים כמו מתקפות - כמו Jailbreak, כמו Prompt Injection ועוד סוגים של מתקפות - אפשר לגרום למודלים, ואז בפרט גם לאפליקציה ולמוצר, לעשות דברים אחרים ממה שהמפתח התכוון וממה שהחברה רצתה שהמוצר יעשה.

    22:15 רגישות ל-Social Engineering
    (אורי) אז רגע, רגע, רגע . . . כי כבר התחלנו להקביל קצת את המודל לאדם, בסדר? אחד הדברים שבעצם . . .  אולי אחת הדרכים שבסוף בסוף הכי קלות לעשות פריצת אבטחה, זה מה שנקרא Social Engineering, נכון?
    • (גיא) חד-משמעית.
    (אורי) אז הדרך להתמודד עם Social Engineering זה לבנות Awareness - ללמד את העובדים שלנו להיות חדים או להיות רגישים ל-Social Engineering.אנחנו יכולים לעשות אותו דבר למודלים?
    • (גיא)  אוקיי, אז קודם כל - זו שאלה מעולה. 
      • א' - אני אוהב את ההקבלה לבנאדם. אני חושב שיש הרבה קווי דמיון, מן הסתם, וזה קצת מה שמפחיד בדבר הזה.
      • אבל כמובן שרמת האינטליגנציה שם היא לא באמת קרובה לשל בני אדם.
    • לשאלתך על Social Engineering, התשובה היא “כן - עד רמה מסוימת”.
      • זאת אומרת, אתה מדבר על . . . במילים אחרות, מה שאתה אומר זה “האם אנחנו יכולים לגרום למודל, או לוודא או ללמד את המודל . . . “
      • (אורי) . . . . לזהות Prompt Injection . . . 
      • (גיא) כן . . . אז אני אגיד כמה דברים: המודלים שמגיעים, ה-Foundational . . . .
      • כי בעצם, החברות שעושות את ה-Foundational Models, שבונות את ה-Foundational Models
        • כמו שציינתי - OpenAI, Anthropic וכו’ [לא רק - 483 Training of foundational models with Ofir Bibi Lightricks]
        • בתוך תהליך הבנייה של המודל, יש גם תהליך Finetuning - בדרך כלל זה בסוף התהליך, שבו הן בעצם עושות איזשהו תהליך של “ללמד את המודל”, כמו שאתה אומר . . . 
        • (רן) “הקשחה” . . . 
        • (גיא) הקשחה, בדיוק. תודה.
        • וזה יותר בעולמות באמת ה-Safety, וגם Integrity, כמו שקראתי.
        • זאת אומרת, אל תייצר harmful content, בסדר? אם אני צריך לתת איזושהי כותרת.
        • וזה כאילו “אל תסביר איך לבנות פצצה” ו”ואל תקלל” והרבה מאוד דוגמאות ל”להנה, אם אתה מקבל כזה Prompt, אז תסביר שאתה לא יכול לעזור עם הדבר הזה”.
    • אז בגדול, יש דרכים לעשות את זה - ועדיין אני אגיד שיש דרכים גם לעקוף את זה - וזה נובע מכמה טעמים.
      • זה גם נובע מהטעם שבסופו של דבר, קשה למודלים להבחין, כמו שאמרתי, בין מהו Prompt, כאילו שהוא פשוט Prompt, שהוא איזושהי “בקשה”, לבין מהו instruction, או מה הן “ההוראות”.
    • אני כן אגיד ש-OpenAI גם הוציאו איזשהו מאמר, לדעתי כבר לפני כמעט שנה, שמדבר על ההיררכיות בסוגי Prompt-ים.
      • בעצם, אנחנו נכנסים פה קצת לרזי העבודה עם LLM, אבל ב-LLM-ים יש בעצם סוגים של הודעות או Prompt-ים, שאפשר להכניס אליהם או לשלוח אליהם, אוקיי?
    (רן) אז סבבה, הזכרת סיבה אחת - אמרת שקודם כל, it's complicated . . . זאת אומרת, גם אם אפשר להגן מפני 80% מההתקפות, עדיין ישארו 20%. אבל גם צריך להבין שיש Domain-ים של התקפות, כמו “האם אפשר להגיע  לסלובניה בלי ויזה?” שוואלה - לא יעזור, אתה לא יכול לאמן את ה-LLM להימנע מתשובות על כל סוג של שאלה שיכולה להיחשב כזדונית, באיזושהי סיטואציה.(אורי) אגב, אפשר . . . (רן) אפשר לאמן או אפשר להיכנס לסלובניה?(אורי) בכמה פעמים שנכנסתי לסלובניה? . . . 
    • (גיא) זה נכון, אבל מה שאני רק הוסיף זה שבאמת, מעבר לתהליך ההקשחה, יש לנו גם את היכולת, בעצם, לייצר או להכניס למודל, להזריק למודל, מה שנקרא System Prompt או System Instructions, בסדר?
    • שזה הדרך שלנו כמפתחים, כשאנחנו מטמיעים LLM-ים, לעשות איזושהי “Init” לעבודה עם המודל, ולהכניס עוד קצת, נקרא לזה “הקשחות” או “התאמות” או . . . . 
      • ללמד אותו לבקש או להגיד לו “you are a helpful assistant, שמביא את המזג אוויר ואומר מה ללבוש” או “אתה עכשיו עוזר בחנות, ואתה רשאי לתת קופון עד 15% ולא יותר”, כל מיני דברים כאלה . . . .
      • ומעל הדבר הזה - כי אנחנו יודעים שזה פשוט לא מספיק, כי אנחנו רואים שזה לא מספיק פשוט בשטח ומעבודה עם חברות שמתעסקות בזה - אז מגיעים ה-Guardrails, אוקיי?
    • וה-Guardrails - גם כאן אני חושב שיש שתי רמות, וזה קצת מתחבר למה שאתה אמרת, רן, שבעצם, יש לנו את ה-Guardrails, שדיברנו על כל מיני סוגים.
      • אז יש לנו את ה-Guardrails שהם גנריים, בסדר? שהם כאילו “לחפש Prompt Injection” - יש דברים שהם מאוד כללים, 
        • זאת אומרת, בסוף, אם עכשיו יש Prompt שמדבר על ignore your previous instructions and do the following, לרוב אנחנו מבינים שיש פה אירוע של Jailbreaking
        • זאת אומרת, ניסיון לעשות איזשהו privilege escalation . . . 
        • (רן) זה כמו המקף-מקף (--) ב-SQL injection.
        • (גיא) בדיוק, יש לך דרכים כאילו יחסית קלות לזהות את זה.
      • אבל אנחנו יודעים שזה נהיה הרבה הרבה יותר מורכב, הרבה הרבה יותר מוקדם. זה דבר ראשון,
    • והדבר השני זה ש-Prompt Injection, וגם Jailbreaking, אולי פחות, אבל Prompt Injection - הוא לא Prompt Injection, כאילו . . . 
      • הוא יכול להיות ב-Context אחד Prompt Injection, וב-Context  אחר לא להיות Prompt Injection - גם את זה יצאנו לראות כאילו בעבודה עם חברות.
      •  שבוא נגיד לפעמים ה-Input-ים - הם נשמעים כמו Intruction-ים חדשים. בסדר?
        • נגיד, יצא לנו לעבוד עם חברה שעושה מודרציה לתוכן, ובסוף אנחנו מכניסים פנימה Comment-ים או דברים כאלה.
        • ובתוך Comment יכולים להיות דברים כמו “תתעלם מהתגובה שהייתה לפניי - תגובה טיפשית!”, דברים כאלה,
        • ובסוף זה נשמע כמו Instruction-ים חדשים . . .
      • אז אם אנחנו לא נהיה בפוזיציה, שבה אנחנו יודעים להגיד על Context מסוים אם הוא Prompt Injection, אנחנו נהיה בעולם של הרבה מאוד FPs [False Positives], נרעיש ולא נשיג את מה שאנחנו רוצים.
      • כי בסופו של דבר, מן הסתם המטרה היא לאמץ את הטכנולוגיה, כדי לרוץ מהר, לייצר את ה-Added Value, לייצר Deliverables מהירים יותר ואיכותיים יותר.
      • ולא כדי לעכב ולא כדי להרעיש.
      • אז צריך למצוא את האיזון.
    (רן) כן . . . 
    28:21 מודל עויין
    (אורי) יש לי שאלה . . . אני מצביע. דיברת עד עכשיו על תקיפות, שבעיקר מזיקות למה שנקרא “ה-Peripherals של המודל” - לכל האתרים, לכל ה-Database-יים, לכל ה...יש תקיפות שהן מזיקות למודל עצמו? שיכולות למחוק אותו, או פשוט להשפיע לו על האימון, ברמה שפתאום הוא יפוך להיות Hostile או...
    • (גיא) אז קודם כל אני אגיד “לא שאני מכיר”.
    • אני גם אחדד רגע את מה שאתה אמרת - התקיפות שעכשיו אנחנו דיברנו עליהן עד עכשיו, זה בעצם שהן לא בהכרח מזיקות ל-Database.
      •  בעצם אני אגיד שזה תלוי בכיוון של התקיפה.
      • אם המודל - נניח יש לו הרשאות Write ל-Database, אז אתה יכול לייצר איזושהי תקיפה שנגיד...
      • (אורי) . . . תמחוק טבלה.
      • (גיא) . . . כן - תמחוק טבלה, תשים Data שהוא Poisonous או לא נכון וכו'.
    • מהצד השני, יש לי יכולת אולי להדליף מידע.
      • זאת אומרת, זה תלוי לאיזה כיוון מעניין אותי לתקוף.
    • מבחינת המודל עצמו, ולהזיק למודל כמו שאתה אמרת  - שוב, לא שאני מכיר.
      • אתה יודע, איזה Prompt כזה שעושה “Self-Destruct” למודל - לא נתקלנו עדיין.
      • אבל לא יודע . . . 
    (רן) אני לא חושב שזה אפשרי, האמת. זאת אומרת...
    • (גיא) אני גם לא חושב שזה אפשרי . . .
    (אורי) כי הוא מאומן לא בשלב ה...
    • (גיא) כן, אתה עכשיו בגדול בשלב ה-Inference . . .
    (רן) המודל “Read-only”. . .  המודל שאתה משתמש בו - הוא ידע לעשות Inference, הוא לא מעדכן את המשקולות שלו. עכשיו, יכול להיות שאפשר לחשוב על Setup שבו יש “משוב” מכיוון המשתמש, ואולי כן יש איזשהו עדכון של  משקולות, אבל לפחות רוב המודלים שאני מכיר לא עושים את זה.
    • (גיא) אני כן . . .  נגיד משהו רגע מעניין בנקודה הזאת - אני לא מכיר דרך, וזה גם לא נשמע לי אפשרי, בוא נגיד לשבש את האימון של המודל בזמן ה-Inference.
      • אבל כן, אנחנו רואים וכן יש קונספט של מה שנקרא גם בעולם ה-Security כ-“Application Reconnaissance”.
      • עכשיו, Reconnaissance - או בעברית “איסוף מל”ם” - בעצם יש לי יכולת לנסות לאסוף מידע.
      • זה יכול להיות בעולם ממש של להוציא משקולות של המודל, ולנסות לדלות כל מיני דברים על האימון של המודל.
      • זה יכול להיות דברים מאוד מאוד פשוטים וב-high-level, כמו “תביא לי את ה-System Prompt שלך”.
    • עכשיו, אם אני, כתוקף, מסוגל להדליף את ה-System Prompt של המודל, אני למדתי דבר משמעותי על איך שהאפליקציה עובדת. אולי על...
      • (רן) Reverse Engineering . . . 
      • (גיא) בדיוק. על איזה כלים יש למודל, למה הוא נגיש?
      • יכול להיות שאני רואה שיש לך כלי, נגיד, יש לך ב-Tool-ים את ה-Database של כל הלקוחות.
        • אוקיי, אני עכשיו כתוקף, יכול ללמוד מזה, נכון?
    • עכשיו, במיוחד אם יש לי עכשיו כלי אוטומטי, שעושה Red Teaming - תחשוב שאני עכשיו מזריק אליו, נגיד, את ה-Tool-ים שנגישים לאפליקציה, למודל.
      • עכשיו, אני יודע שכשאני מנסה לעשות מתקפות, נגיד ה-Database. אז אני לא חושב שאתה יכול להזיק למודל - אבל אתה יכול לדלות מידע על המודל, שיכול לשרת אותך, כדי לייצר תקיפות יותר משמעותיות.

    31:26 רגע ה-Cherokee
    (רן) אז דיברנו פה על... אתה יודע, הזמן עובר - דיברנו פה על כמה סוגים של התקפות, ולא כיסינו את כולם, אבל אולי גם הוגן לציין, שעדיין לא ראינו את “רגע ה-Cherokee” [ה-Cherokee moment]. ולמה אני קורא “רגע ה-Cherokee”? אולי מישהו מכם זוכר, שפעם צולם וידאו של מכונית, ג'יפ Cherokee, שנוסעת על הכביש, ולידה נוסעים אנשים עם Laptop ופשוט מורידים אותו מהכביש, ומעיפים אותו לתעלה.כלומר, השתלטו על הרכב מרחוק, ובעצם הצליחו לגרום לו לרדת מהכביש, וזה כמובן יכול... אתם יכולים לדמיין לאן עוד אפשר לקחת את זה.ובעקבות זה, קמו לו מעט חברות Security, חלקן של אנשים טובים שאנחנו מכירים בותעשיית הרכב, ובנו מנגנונים להגנה.אז רגע כזה של Cherokee, אני חושב שעדיין לא ראינו בעולם ה-LLM, אבל אולי הוא כבר קרה ואנחנו לא מכירים, או שאולי יקרה בעתיד. זאת אומרת, לי די ברור שזה יקרה מתישהו, וחברה כמו Pillar, כנראה, תיתן את המענה, או לפחות תהיה מוכנה לאותו רגע שיקרה.
    • (גיא) לגמרי,
    • אז אני אתייחס לזה, כי א - אני אוהב את הדוגמה הזאת, ואני מסכים.
      • זאת אומרת, אני חושב שעוד לא ראינו את הרגע Cherokee הזה שאתה מדבר עליו.
    • אני יכול להגיד שאנחנו הוצאנו איזשהו דוח, אצלנו ב-Pillar, על כאילו קצת, ה-State של המתקפות סביב ומול LLM-ים.
      • מאלפי או הייתי אומר מאות-אלפי Prompt-ים שיצא לנו לנתח, של Chatbot-ים של איזשהו פרטנר שאנחנו עובדים איתו.
    • ואני אגיד כמה דברים. קודם כל, ראינו מתקפות, וראינו גם מה עובד ומה פחות עובד.
      • ואני חושב, שהסיבה שעדיין לא ראינו את ה-Cherokee moment, או היה את הרגע שגם הייתה פריצה גדולה שהייתה ל-Okta, שגם התניעה שם את כל השוק הזה.
    • לא ראינו את זה, כי לדעתי עדיין אין מספיק LLM-based Applications ו-AI Applications ב-Production, ב-Scale גדול.
      • (רן) אנחנו הולכים לשם. ה-Stake עדיין לא מספיק גדול . . . 
      • (גיא) ה-Stake עדיין לא מספיק . . . 
      • (רן) “אין מספיק ג'יפים על הכביש” . . . 
      • (גיא) בדיוק, אין מספיק Cherokee-ים על הכביש, כדי שאתה יודע - יבוא תוקף אחד ויתפוס איזה Cherokee, ויוריד אותו.
      • אני חושב שאנחנו הולכים לשם,
    • אנחנו רואים גם יותר ויותר חברות מדברות על 2025 כעל השנה שהם יטמיעו AI.
      • ואני אגיד גם, באותה נשימה, אנחנו רואים יותר ויותר חברות, שכבר עכשיו - בתכנון של סוף 2024, כשמתכננים את התקציב של 2025 - כבר יש שורה בתקציב של “AI Security”.
      • של להביא עכשיו פתרון לדבר הזה.
    • כי מבינים, שזה חייב לבוא ביחד - במיוחד כי הטכנולוגיה הזאת היא פשוט Prone למתקפות האלה.
      • זאת אומרת, יש לה איזושהי פגיעות סביב הדבר הזה.


    34:14 הרגעות, נוף הפתרונות ו-Best Practices למפתח מעל LLM
    (רן) אז עד עכשיו עסקנו בהפחדות, ולקראת הסוף בוא נעסוק קצת בהרגעות.אז הזכרת כמה פתרונות, שאתם ב-Pillar נותנים, אבל בוא עכשיו שים את עצמך בנעליים של מפתח - שאתה רוצה להשתמש ב-LLM.איזה פתרונות יש היום בשוק? בין אם זה Open Source, בין אם זה חברות שנותנות אולי פתרונות מסוגים אחרים, שמכסים דברים אחרים. מה פחות או יותר . . . איך נראה ה-Landscape של פתרונות האלה?
    • (גיא) אז קודם כל אני אגיד שיש היום גם פתרונות, שהם Open Source-ים, שלחלוטין אפשר להתחיל ולנסות אותם.
      • אני אגיד שחלקם מוגדרים כ-”Experimental”, והם כנראה יהיו מעולים לבדיקות ולמשחקים שאנחנו עושים בסביבות Dev.
      • לקחת את זה ל-Production - זה כבר, אני אגיד, כל מפתח צריך כאילו לקחת בחשבון עם עצמו.
    • אז אני לקחתי פה איזשהן שתיים-שלוש דוגמאות, שגם אנחנו, אגב, עובדים איתם ומתנסים איתם, משתדלים תמיד לראות מה יוצא ולעקוב אחרי ה-Framework-ים החדשים שיוצאים.
      • אז קודם כל יש לנו גם את Llama Guard וגם את Prompt Guard - אלה שני Open Source-ים של Meta, אם אני זוכר נכון.
      • כש-Prompt Guard הוא בעצם יותר בעולמות של למצוא Prompt Injection, Jail Breaking, כל הדבר הזה.
      • ו-Llama Guard יותר מדבר על עולמות ה-Integrity, Safety, Harmful Content, Toxicity . . . כל העולם הזה,
      • אז אלה כבר שני מוצרים שאפשר לקחת ולשחק איתם מאוד מאוד בקלות.
    • בעצם לקחו איזשהו מודל של Llama, ועשו לו Finetuning ספציפית כדי לזהות את הדברים האלה.
      • (רן) כלומר אתה מעביר את התוכן דרך איזשהו מודל, איזשהו “שומר” - ואם זה עובר אותו, אז אתה מעביר את זה הלאה, או שאולי בדרך החוצה אתה מעביר את זה דרכו.
      • (גיא) בדיוק, ממש ככה,
    • עוד דוגמא שיש, האמת דווקא ממקום קצת אחר - יש איזשהו פרויקט Open Source שנקרא PyRIT, שהוא של Microsoft, גם Widely Adopted
      • והוא דווקא פרויקט שיותר נועד ל-Evaluation, קצת יותר מהמקום של מה שאני קראתי לו ה-Red Teaming, כאילו על LLM-ים.
        • בעצם לנסות לראות למה המודל “תקיף”, למה הוא Susceptible.
        • ולנסות למצוא חולשות במודלים שלנו.
    (רן) רק נזכיר, ל-Context - אתם מדברים על Setup שלם של Production. זאת אומרת, לא רק על האם המודל הזה Susceptible, אלא האם כל ה-Setup שלך - זאת אומרת, כל ה-WebApp, אפליקציה, או Router Service - פגיע, וזה לא רק המודל עצמו, זה גם כל מה שמסביב.
    • (גיא) נכון. אז קודם כל זה מדויק, ואני אגיד, בדיוק בהקשר הזה - יש הרבה מאוד כלים, חלקם Open Source, אגב, חלקם לא Open Source, שיכולים לעזור כשאנחנו רוצים להתגונן, או לייצר . . . 
      • בואו נגיד, להטמיע LLM בצורה שהיא בטוחה, עם כמה שפחות ריסק לארגון, לאפליקציה, ל-Production.
    • היתרון - ואני, כאילו, תסלחו לי פה על זה, אבל...
    (רן) תן את השפיל . . . .
    • (גיא) כן, אני אתן את השפיל - היתרון בעצם, בלקחת פלטפורמה כמו Pillar, הוא שאנחנו מקבלים פה איזשהו משהו קצה-לקצה, בסדר?
    • כאילו, אני כמפתח - הסיוט הכי גדול שלי זה שיהיה לי, לא יודע מה - לוגים ב-Kibana ו-Dashboard-ים ב-Grafana, ומטריקות ב . . .
      • אני לא רוצה. אני רוצה פלטפורמה אחת שאני יכול לעבוד איתה.
      • שהיא לוקחת אותי, מקצה לקצה, הכי Shift-Left שאפשר.
      • לדעת, מרגע שאני מתחיל לפתח, שכשאני בונה ומייצר את ה-Meta Prompt-ים וכו', ועם המודלים שאני בוחר, אני מוגן.
        • או ממה אני לא מוגן.
      • עד השלב שבו אני מתחיל להריץ את האפליקציה - אני עובד מול איזשהו API או SDK או Proxy, שמגן עליי,
        • שאני יכול לקנפג (Configure) אותו בעצמי, שהוא פתוח גם לארגון שלי.
      • וגם שאני יודע לתת תמונה עכשיו מלאה, לצורך העניין לארגון ה-Security בתוך החברה.
    • כשבסופו של דבר, אני עכשיו כמפתח, אני זוכר מהימים שלי ב-AppsFlyer - כשיש פיצ'ר חדש, אני צריך לסמן אם הוא דורש Security Review - וזה תמיד ידרוש Security Review.
    • וברגע שזה דורש Security Review, אני רוצה את המינימום Friction
      • אני לא רוצה שיבואו שיפנו אליי ושישאלו . . . 
      • כאילו, חלק מהעבודה עם Pillar, מאפשר כבר לחשוף את זה לצוותי Security, הכל במקום אחד,
      • ואנחנו מאוד משתדים להיות כאילו, אתה יודע - Developer Friendly, ולבוא למקום של המפתחים יהיה כמה שיותר קל להטמיע, כמה שיותר קל לעבוד.
    (אורי) תגיד, יש Best Practices למפתח, שמפתח מעל LLM?
    • (גיא) וואי, זה שאלה - “שאלת השאלות”. ממש אני אוהב את השאלה, אורי.
    (רן) כבר שאמר ביידן - “Don't”.
    • (גיא) וואו, זה בדיוק התשובה שרציתי להגיד . . . .
    • בגדול, התשובה היא “תניח שכל מה שיכול להתחרבש, יתחרבש”  . . . 
      • תניח שה-System Prompt שלך הולך לדלוף.
      • ותניח ש . . . סתם, לדוגמא - אל תרנדר (Render) לי עכשיו Markdown, שג'ונרט (Generated by) על ידי LLM, כי אתה לא יודע מה הולך להיות שם מאחורה.
      • תניח את כל הרע שיכול לקרות, וזה מה שיהיה . . . 
    • עכשיו ברצינות - ה-Best Practice: יש כלים שעוזרים עם Best Practices.
      • יש כל מיני כלי Open Source - אני מזמין את המאזינים ללכת לחפש מונחים כמו Prompt Hardening, אוקיי?
      • זה בעצם שיש כל מיני מוצרים Open Source-יים, שאתה זורק אליהם את ה-System Prompt - והוא מוסיף כל מיני הגנות.
        • זה דברים קטנים שעוזרים.
    • עכשיו בסוף - זה Endless. כאילו בסוף, גם אם אני אעשה Prompt Hardening, עדיין כנראה יש סיכוי טוב שהמודל ידריך אותי להגיע לסלובניה דרך פולין . . . 
      • כאילו, זה דבר שהוא יכול לקרות.
    • ולכן לדעתי אין מנוס משכבה - שהיא שכבה דינמית, אקטיבית, ב-Real-time.
      • וזה דבר שהוא מעבר ל-Best Practices של פיתוח.
      • כי הגיינת-קוד - כולנו צריכים לקיים כל הזמן. זה לא שונה,
    • ועוד דבר שלא דיברנו עליו היום, וחשוב לי גם להגיד - בסוף העבודה מול LLM - מול Open AI, מול Anthropic - זה עבודה שהיא מאוד דומה לעבודה מול API.
      • מול כל API יש Best Practices ויש הגיינה שצריך לעשות, וצריך לעשות Error Handling ו-Circuit Breaking ו-Time Out והכל.
      • וזה אותו דבר.
    • ההבדל הוא, שיש פה איזשהו Black Box בקצה השני - זה לא דטרמיניסטי.
      • אז זה לא כמו API שאני מכניס Input ואני יודע מה אני הולך לקבל.
      • זה לא מוגדר בדוקומנטציה (Documentation), אין ארגומנטים (Arguments) כמו שדיברנו קודם.
    • והדבר הנוסף זה שלכלי הזה, ל-LLM הזה, יש לפעמים איזושהי נגישות למקורות מאוד מאוד רגישים.
      • ויש יכולת קבלת החלטות.
      • והדבר הזה ביחד מייצר ריסק די גדול, שכדאי לכל הפחות להיות מודעים אליו ולעבוד בצורה חכמה.
    (אורי) ברוכים הבאים לעולם הכאוס . . . 
    • (גיא) בול . . . 

    40:55 עוד קצת Pillar לסיום
    (רן) ובנימה אופטימית זו . . . . אבל לפני שאנחנו מסיימים פה - עוד קצת על החברה, על Pillar,אז אמרת שאתה מנהל פיתוח שם. אתם אולי מחפשים מפתחים? איפה אתם נמצאים? ספר קצת . . .
    • (גיא) כן, אז אנחנו - אני ב-Pillar בערך כשנה, אנחנו היום שמונה אנשים בחברה.
      • מאוד Early Stage אבל רצים מאוד מאוד מהר.
      • אנחנו היום חמישה בפיתוח - ואני אגיד שבקרוב מאוד אנחנו נתחיל לגייס, או אני אגיד “נחזור לגייס”, מפתחים.
        • זה יהיה מפתחים, מפתחות, דאטה סיינטיסטיות (Data Science), אנשי ונשות Security.
      • ובכלליות אנחנו מחפשים אנשים מאוד מאוד טובים - Culture טוב, אנשים ב-Good vibes.
      • ואתם מוזמנים לפנות אליי, 
        • כמובן להיכנס לאתר - אבל אני חושב שזה “של פעם” קצת.
        • אז אני מניח שהלינקדין שלי הופיע איפשהו, ה-Twitter [@guyg_99].
        • (רן) Instagram, עזוב . . .
      • (גיא) כשאני מכיר אנשים -  אני יוצא לפעמים למסיבות, לאירועים - אז אני, כשאני מכיר אנשים חדשים, אנחנו מחליפים LinkedIn . . . זה לא אצלי, זה לא Instagram . . .
      • (רן) “Old School” . . . 
      • (גיא) ממש.
      • (רן) יש לך כרטיסי-ביקור בכיס?
      • (גיא) בדיוק . . . 
    (רן) איפה אתם נמצאים? יש לכם משרד?
    • (גיא) כן, אנחנו יושבים היום - אני לא יודע מתי יצא הפרק - אבל אנחנו היום יושבים ב-Mindspace ברוטשילד, בתל אביב,
      • אז למי שגר בתל אביב - כיף.
      • ולמי שלא - זה חמש דקות מהרכבת הקלה.
      • יש לנו כמה אנשים שמגיעים מחוץ לעיר - מגיעים ברכבת, ממש בקטנה,
    • יש לנו הורים לילדים, אנחנו כולנו מגיעים מארגונים מאוד מאוד טובים, וניסינו להביא את זה לתוך החברה
      • לבנות ארגון טוב ובריא מההתחלה, שצומח . . . בוא נגיד שצומח על איזשהו חומר, על איזשהו הון אנושי איכותי. זו המטרה.

    (רן) טוב - שיהיה בהצלחה! נראה שיש לכם מספיק עבודה, אתגר יפה.
    • (גיא) כן. “יש הרבה עבודה”, כמו שה-CTO שלי אוהב להגיד.
    (רן) מעולה - אז שיהיה בהצלחה.תודה רבה.
    [קישור לקובץ mp3]  האזנה נעימה ותודה רבה לעופר פורר על התמלול!
    44 min
  • 487 Bumpers 85
    פרק מספר 487 של רברס עם פלטפורמה - באמפרס מספר 85: רן, דותן ואלון באולפן הוירטואלי עם סדרה של קצרצרים שתפסו את תשומת הלב בתקופה האחרונה - בלוגים מעניינים, דברים מ- GitHub, וכל מיני פרויקטים מעניינים או דברים יפים שראינו באינטרנט וחשבנו לאסוף ולהביא אליכם.וכמיטב המסורת לאחרונה - גם לא מעט AI, כי על זה הצעירים מדברים בזמן האחרון.🎗️
    00:53 דותן
    • (דותן) כן, אז האייטם הראשון - למי שמכיר LSP, אז זה פרוטוקול של VS Code, נראה לי ששם זה הומצא, והוא בא להגיד...
      • (רן) אני חשבתי שב-Vi, האמת . . . חשבתי שב-Vim המציאו את זה. שם לפחות נתקלתי בזה בפעם הראשונה . . . 
      • (דותן) לדעתי . . .  האמת, אני לא יודע. 
        • בראש שלי LSP הגיע במקור מ-VS Code, ועשה את דרכו ל-Neovim והתגלגל.
      • וזה אומר, שאם אתה רוצה לייצר Plug-in לעורך שלך - כדי, נגיד, לעשות Refactoring, לעשות דברים חכמים בקוד.
        • אז אתה יכול לכתוב בעצמך LSP Server, שיש לו Instance אחד במערכת שלך בדרך כלל - וה-Editor שלך מדבר איתו בפרוטוקול מסודר, בפרוטוקול LSP.
        • וככה אתה מקבל את הפונקציונליות הזאת, בלי לכתוב משהו ספציפי ל-IDE.
      • כי אם אתם זוכרים, אז נגיד JetBrains, יש להם את ה-SDK שלהם, ואם נלך אחורה ל-NetBeans גם כן, וכו' וכו'.
        • זאת התקופה שהיית כותב Plug-in לכל Editor בנפרד.
      • (רן) זאת אומרת, יש הפרדה בין ה-Frontend -שזה בעצם ה-IDE, וזה יכול להיות JetBrains, זה יכול להיות VS Code, זה יכול להיות Vim - לבין ה-Backend, שמממש את הלוגיקה של השפה עצמה.
      • (דותן) נכון, כן.
      • אז סתם כאילו לפתוח רגע את הנושא - כל אחד יכול להוריד LSP לשפה שלו.
        • אגב, יש LSP טובים, ויש פחות טובים.
        • בדרך כלל, אם לשפה יש LSP Server - נגיד ל-Lua או ל-Python וכו' - זה אומר שההשקיעו שם די הרבה בצורה טובה.
      • אז פה יש LSP Server שהוא בעצם מעניין - הוא LSP AI, וגם ככה נקרא הפרויקט.
        • שזה אומר שאפשר לקחת את הפרויקט הזה ולחקור, להתעמק בו - ולהוסיף לו AI,
        • או לקחת חלק מה-Provider-ים שלו, ואז ליצור איזשהו “Copilot משלכם” [עם בלאק-ג’ק?]
      • הוא בא ארוז עם כמה וכמה Extension-ים.
        • נגיד, אם רוצים לעשות “Local AI Copilot” כזה, אז אפשר להתחיל מהפרויקט הזה.
        • כלומר, משלכם - או להשתמש בפרויקט הזה בתור איזשהו Driver ל-AI מקומי.
      • (רן) כן, שאלה - אני לא יודע אם צריך לבדוק את זה, אבל בדרך כלל, הכלים האלה שעושים Code Completion, או בכלל שעוזרים לך לכתוב קוד, הם צריכים לקבל Context. כ-Context לא רק, נגיד, איפה ה-Cursor שלך כרגע נמצא וכמה שורות לפני ואחרי, אלא הרבה דברים נוספים, כמו נגיד איזה קבצים כרגע פתוחים, לפעמים אפילו מסתכלים על יותר מזה - על הפרויקט, לפעמים גם על תיעוד וכו'.
    • השאלה אם כל זה קיים בתוך ה-Language-Server-Protocol? כי כשהוא הוגדר, אני מניח שלא חשבו על Use Case כזה . . . השאלה אם זה קיים פה ויודע לעבוד עם זה?
      • (דותן) האמת שהשאלה טובה . . . מה שאני התעסקתי עם LSP זה רק Per-Document, זאת אומרת - מה שאתה עובד עליו כרגע.
        • לא דווקא השורה, אלא כל המסמך.
        • אני רוצה להאמין שיש יכולת לדחוף לו עוד Context, אבל לא בדקתי את זה ספציפית.
        • כן, זה כנראה אלמנט חשוב לדברים כאלה.
      • מה שאני יכול להגיד - אחד מה-LSPs שאני מכיר לעומק זה ה-LSP של Rust.
        • שם יש פרויקט שנקרא Rust Analyzer, וזה סוג של “מוח” כזה מאוד מאוד מורכב, שנוצר כדי לנתח את הקוד שלך ב-Rust.
      • על “המוח” הזה הרכיבו LSP, ואז בעצם נולד איזשהו Server, שמשתמש ב-Rust Analyzer כדי לנתח את הקוד שלך
        • וכל הפרויקט הזה מנתח את כל הקוד, בשלמותו.
        • אז אני מניח שיש דרך לעשות את מה שאתה מתכוון אליו.
      • (רן) אוקיי, אחלה.
      • (אלון) סתם בדיקת עובדות - VS Code אכן התחילו עם זה ראשונים, ל-LSP.
      • (דותן) כן, זה מעניין - יש הרבה דברים טובים ב-VS Code.
        • שזה נחמד, כאילו... 
      • (אלון) יצא ל-Microsoft משהו טוב בסוף . . .
      • (רן) הסטה קצרה, בערך באותו נושא - אתמול בערב קיבלתי אימייל ש-GitHub Copilot הוא עכשיו בחינם לכולם.
        • אז המלחמת ה-Code Completions או ה-AI Coding Assistants, מתחממת - הזכרנו את זה גם בפרקים הקודמים [482 Bumpers 84].
        • יש את Cursor ואת Windsurf ולא מעט אחרים.
        • עד עכשיו Copilot היה בתשלום, עכשיו הוא בחינם - לדעתי, ל-2,000 Completions בחודש, אם אני זוכר נכון, ומעל זה זה כבר בתשלום.
        • אבל הנה - רף התשלום הולך ויורד, והתחרות מתחממת.
      • (דותן) כן, זה מודל טוב של ה... כי אתה מתחיל, וזה ממש כמו סם.
        • כאילו, ברגע שאתה מתחיל לצרוך את זה, אז אתה תתקע, ואז...
      • עד אז, כל הזמן שואלים “זה מנוון? זה מנוון?”
        • אבל אני לא יודע אם זה באמת מנוון - אבל מישהו שמתרגל לזה, לדעתי, הוא מתרגל לזה קשות.
        • ואז אתה נתקע בלי - ותצטרך להתמודד עם הדילמה, אם אני מוציא כרטיס אשראי וקונה עוד קצת כדי שאני אוכל להשלים את המשימה, או חוזר לתכנת, להפעיל את המוח לבד.
      • (רן) או שאתה קמצן ועובר בין סביבות שונות עד שנגמר לך - בין Cursor ל-Windsurf או ל-Copilot.
      • (דותן) כן, זה מעניין. אני מהמר שבסוף, אני חושב רגע . . . . אני חושב שבסוף זה חייב להיות חינם לגמרי.
        • מספיק שאחד יבוא וייתן חינם, ואז הוא יקרע את ה . . . 
        • כי ההבדלים הם מינוריים בסוף.
      • (אלון) אבל זה יקר . . . כאילו, אלא אם כן יתחילו להריץ את זה Local-ית, אז זה בסוף יעלה הרבה כסף, הסיפור הזה.
      • (דותן) כן, אבל אחד שייתן חינם, בדרך כזאת או אחרת - ישבור את הצורה של כל הדברים האלה.
        • כולם ילכו לחינם, בסוף.
      • (אלון) טוב, זה בקיצור - Microsoft או Google יתנו לכולם חינם, וזה יזרום עם זה.
      • (דותן) בקיצור, לגבי Copilot - כל הזמן אמרתי “גם אם זה חינם, אני לא אשתמש בזה!”
        • עכשיו אני צריך לשנות את זה ל”גם אם ישלמו לי, אני לא אשתמש בזה!”
      • (אלון) דותן, בוא אני אשלם לך קצת, ותתחיל לבדוק את זה . . . 
      • (רן) דווקא, דרך אגב, נגיד בעולם ה-Editors - היו הרבה כל הזמן בתשלום, עד שהגיע VS Code.
        • זאת אומרת, הוא לא הראשון שהוא חינם - אבל הוא חינם והוא יחסית טוב,
      • (רן) עדיין - יש בתשלום, נכון? IntelliJ ו . . . 
        • (דותן) כן, אבל מספקים לך משהו שהוא ייחודי - כאילו, איזושהי נישה, שממש תופסת אותך באיזשהו כאב.
        • כרגע, LLM זה מאוד מאוד גנרליסטי (General) - אני מקבל את אותו דבר, כבר בדקתי, מ-ChatGPT, מ-Claude . . . 
        • האמת שאני פותח את ה-Browser, ה-Tab הראשון שיש לי עם זה Claude או ChatGPT פתוחים - אני אפילו לא מסתכל, פשוט לוחץ על ה-Tab, זורק שם את הקוד שלי, אומר לעשות Refactor או משהו כזה, לוקח את הקוד, אפילו לא מתייחס למה השתמשתי מרוב שזה-זה...
      • (רן) אני מאמין שה-Code Assistants - כן, כל אחד יחפש לעצמות הייחודיות.
        •  אם זה, אני מניח, להסתכל על... דיברנו קודם על Context, אז אם זה להסתכל על Context-ים שונים, שיתנו לך תוצאות יותר איכותיות, או אולי להקל על ה-Workflow, יש כאלה שנגיד, הולכים בכיוון של Testing אוטומטי, ואחרים . . . 
        • אז אני מניח שכל אחד ימצא לעצמו את הזווית.
        • אבל כן - ימים יגידו.
      • (אלון) אני חושב שמחפשים את הזווית רק כי עדיין אפשר לעשות הכל.
        • ברגע שאי אפשר לעשות הכל, שזה עניין של זמן - אז כולם יעשו הכל.
        • ואז הייחודיות של JetBrains תיהיה שהם יעשו הכל - רק לאט . . . כמו שאנשים אוהבים את ה-IDE שלהם.
        • (רן) זה יתן לך זמן לחשוב לפחות . . . 
        • (אלון) כן, כי מה אני עכשיו ממהר? מה קרה? מה, אני אשתעמם! נעשה את זה לאט, ניקח את הזמן . . .
        • (רן) איכותי, איכותי.
        • (אלון) איכותי, משקיע בך.
      • (רן) טוב, הבא בתור, דותן . . .

    • (דותן) אז הבא בתור זה שירות, או חברה, שנקראים Koyeb.
      • אני לא יודע מה המשמעות של השם הזה, זה שם שקשה מאוד להגות . . .
        • (רן) שם כואב, מאוד כואב . . . .
        • (דותן) כן, שם ממש “קוייב”, זה כאילו “כואב” בעיראקית . . . 
      • זה המלצה שקיבלתי מחבר-מערכת בשם רפאל דקר.
      • ואם אתם זוכרים את Heroku, שהיו פעם בחינם . . . 
        • והיית פעם בונה משהו וזורק ב-Heroku באפס מאמץ - בלי DevOps, בלי כלום - וזה עבד פשוט מדהים.
      • אז היום יש כמה אלטרנטיבות. חלק מהם מרגישים כמו “Heroku גרסת אלפא”.
        • אתה דוחף אליהם, ואיפשהו נתקע לך איזשהו Service, או לוגים מתחרבשים לך - ממש כאילו, “לא בריא“ כזה . . . 
        • אני לא אגיד איזה פלטפורמות, אבל אם אתה עשה גוגל “Alternatives Heroku”, אתה תקבל איזה 3-4 כאלה - שזה רק מראה כמה Heroku הקדים את זמנו.
      • ו-Koyeb נראה ממש Heroku Alternative - יציב מאוד, ברזל, בטון - קחו את החומר שנראה לכם - נראה ממש טוב.
        • גם במבחן התוצאה - פשוט עובד.
      • ומסתבר שזה, כאילו מהחוויה שלי, וגם רפאל שהשתמש - זה פשוט עובד.
        • וכמובן תמיד מחפשים את החינם - אז יש פה Tier חינמי מספיק טוב, שמזכיר את “ימי Heroku העליזים”
        • שהיית פורש מיליון אפליקציות Demo, שחיו שנים על ה-Instance המסכן של Heroku . . . 
      • (רן) כן, אני רואה שהם גם מאוד מדגישים את עניין ה-GPUs, ויש להם למעשה - לפחות בעולם ה-Marketing - יש להם שלוש קטיגוריות.
        • אחת זה Language Models. שתיים זה AI Stack והשלישי זה Web Framework.
        • אז Heroku נכנס אולי למשבצת של ה-Web Framework, אבל השניים הראשונים - Language Models ו-AI Stack - זה לגמרי פוקוס על AI.
      • אז כן, וגם בכל הדיאגרמות שלהם, לפחות השיווקיות, הם כל הזמן מראים קודם כל GPU - ורק אחר כך CPU . . . 
      • (דותן) . . . כן - שזה Win-Win, כי הגעתי לזה לא בשביל ה-GPU - בכלל לא בשביל ה-GPU - והם עושים עבודה ממש ממש טובה בלתת לך את הצעד הראשון הזה, באפליקציה שאתה בונה.
        • ואתה אומר “יאללה, בוא נראה אם אני יכול לעשות איזו הכנסה פאסיבית כזאת, מאיזשהו פרויקטון”.
        • זה בדיוק מה שהקוביה של Heroku הייתה עליה - זה עובד, זה מעולה.
      • (אלון) מגניב לאללה, האמת . . . 
      • (רן) כן, נראה טוב.
      • (אלון) . . . זה גם GPUs - שזה היום . . . כאילו, GPUs זה כזה “On-Demand” - שזה נחמד, כי זו נישה בעייתית היום, שיש להם.
        • ושמע, אם זה ה . . . עוד לא מצאתי - מצאתי כמה, האמת אני חייב להודות, כבר לא רעים, בעולם של Heroku.
        • כאילו - האלטרנטיבות.
      • (דותן) מי למשל? אני מכיר Fly, Render . . . 
      • (אלון) Render זה סבבה . . . . כאילו, עם Render הצלחתי אשכרה לעשות משהו בלי...
      • (דותן) אתה צריך לשים כרטיס אשראי, נדמה לי, ב-Render . . . 
      • (אלון) לא, לא, לא, לא - לא חייבים. שם זהו, אפשר להגיע... אפשר להגיע לחודש חינם בלי אשראי.
      • (דותן) לא, לא חודש חינם - אני רוצה “חינם לכל החיים”.
      • (אלון) לא - חינם לכל החיים.
        • כמו Heroku - חודש Compute Time יש לך.
        • אז אפשר לעשות איתו, שהוא סבבה.
        • פחות מתחבר, יותר אהבתי את Heroku, אבל זה עניין של טעם - אבל זה נראה מגניב, כי פה גם GPUs וזה . . . 
      • (דותן) כן, נזכיר שב-Koyeb יש גם Postgres, Redis והדברים האהובים . . . 
      • (רן) נחמד - ננסה. תודה!

    • (דותן) הפרויקט הבא נקרא RSQL.
      • עכשיו זה - אתם מכירים את הקטע של Re-write in Rust? מכירים את זה שזה רץ כזה?
        • (אלון) אתה כל זמן שולח לי “כתבתי מחדש ב-Rust” . . . 
        • לא, זה Meme שרץ כזה ברשת, ב-Twitter וכאלה . . . למשל, אולי משהו שאתם יותר מכירים זה את הכלים של Python, ששכתבו ב-Rust
          • יש את uv למשל . . . כלים מטורפים, שבאו ו . . . 
      • הרי ב-Python את PY, ואז התחילו Poetry וכל החברים האלה.
      • ואז בא בחור, בשם נדמה לי Charlie Marsh, ממש שלפתי את זה עכשיו מהזיכרון, והחליט לשכתב ב-Rust.
        • זה ה-Principal שלו, כאילו. נקרא לזה “המוטיב-לפעולה”.
      • ואחרי שהוא סיים, הוא בעצם גילה שהוא יצר כלי ש”מעיף את כל הדברים האלה מהמים", מה שנקרא, בלי להתאמץ.
        • וזה כבש את כל עולם ה-Ecosystem של Python.
      • והוא הקים חברה, ועכשיו החברה הזאת - כל יעודה זה להחליף את כל כלי Python בכלים מבוססי-Rust.
        • וזה ממש עובד - אנשים פשוט מתפלצים מהמהירות, מהיעילות, מאיך שזה עובד.
        • אז יש טרנד כזה, וזה חלק מהדבר הזה - וגם יש סוג של Meme כזה, שכל דבר משכתבים ב-Rust.
      • אז זה אחד מהדברים שגם קרו זה כלי שהסתכלתי עליו ממש ממש מזמן, כי השתעשעתי עם לייצר איזשהו “SQL over everything” כזה, לצרכי מחקר Security.
        • ויצרתי זה משהו קטן, “צעצוע” - וזה היה מספיק לי, ושם עצרתי.
      • אבל הכלי הזה המשיך להתפתח - אנחנו קוראים לו RSQL.
      • זה התחיל גם בתור משחק - מישהו שבא ושכתב כלי נפוץ, נדמה לי ב-C, שעושה דבר כזה.
        • הוא שכתב את זה ל-Rust - וזה הפך להיות מפלצת.
      • אז עכשיו, הכלי הזה לא רק שמתחקר SQL ועושה דברים כאלה מה-Command Line, אלא מתחקר גם Columnar Databases ובעצם כל מה שאפשר לתחקר כ-SQL, זה עושה את זה.
        • זה CSV, זה מלא מלא מלא פורמטים.
      • (רן) כלומר, זה סוג של, אם אני מבין נכון, סוג של נגיד תחליף ל-Psql, שהוא נגיד ספציפית ל-Postgres, אבל גנרי לכל שאר ה-Database-ים, זאת אומרת לא רק ל-Postgres . . . .
      • (דותן) כן, זה יכול להיות Avro, זה יכול להיות, לא יודע, Postgres או CockroachDB, הכל הכל הכל . . . 
      • אם אני זוכר נכון, יש - היה או יש - כלי שנקרא q, זוכרים?
        • (רן) כן, של Harel Ben Attia . . .
        • (דותן) בדיוק. אז לדעתי, זה הכלי שכאילו הוא שכתב, או “Inspired by” - או שזה קרה במקביל, בלי קשר. אולי הוא לא הכיר . . .
      • (רן) אז q, אם אני זוכר נכון, הראל - מה שהוא עשה, הוא השתמש ב-SQLite כדי לתשאל קבצים ב-Disk . . . 
        • זאת אומרת, נגיד יש קובץ טקסט, או קובץ csv - הוא טוען אותו לתוך SQLite ואז מריץ עליו SQL.
        • (דותן) כן, הוא “שותה הכל לשם”, ואז . . . 
      • (דותן)  ופה, הוא עושה גם דברים מהסוג הזה, וגם ניגש לתחקר את הפורמט, מה שנקרא “רואה לפורמט את הלבן של העיניים” . . . .
      • אז זה ממש נחמד, למי שמחפש . . . למי שזרוקים לו קובצי, לא יודע - Avro או Parquet, כאלה . . . 
        • וגם רוצה לתחקר Database-ים מה-Command-Line.
        • זה אחלה דבר.
      • (רן) אני חושב של-Parquet זה שימושי, כי לא מצאתי כלי נוח ל-Parquet . . . 
        • כאילו, יש כל מיני CLIs, אבל זה הכל כזה נורא מעצבן ואיטי . . . . זה יכול להיות שימושי.
      • (דותן) אז זה כנראה לא לא יהיה האיטי . . .  או במילים אחרות, זה כנראה יהיה הכי מהיר שתקבל.
        • אני לא יודע אם זה יהיה לך נוח . . . אתה יכול לנסות.
        • (רן) אוקיי.
      • (אלון) אין כלי נוח ל-Parquet? באמת?  . . . 
      • (רן) לא יודע, לא מצאתי בינתיים.
      • (אלון) כאילו, אני . . . 
      • (רן) לפני חצי שנה הייתי צריך משהו, חיפשתי - ולא מצאתי משהו . . . משהו “נעים”. אולי זה שפספסתי.
      • (אלון) לא, לא, בסדר. זה פשוט תמיד מפתיע אותי, כי זה פורמט שכאילו הוא כביכול פורמט שניהיה סטנדרט, ואין לו Ecosystem . . . .
      • (רן) כן . . . כאילו בסוף, מצאתי שהכי נוח זה לטעון את זה בתוך Notebook, ואז לשחק עם זה . . . 
        • כאילו, לטעון את זה לתוך DataFrame Python-י, ואז לשחק עם זה ב-Notebook.
        • אבל לפני, אם אתה רוצה הרבה פחות מזה - אתה רוצה פשוט משהו ב-CLI, שיבדוק כמה שורות יש או איזה עמודות יש, ולא מצאתי ממש כלי נוח שעושה את זה.
        • כאילו יש - אבל איטיים מעצבנים, Java, כאלה . . . 
      • (דותן) עוד דבר מעניין שאני חושב שאולי גרם לכלי הזה לתפוס טוב, זה שאם חושבים על AI ו-Agents, אז בעצם אפשר לקחת כלי כזה, לתאר ל-AI את כל הדרכים להשתמש בו, בכל הפורמטים . . . 
        • ועכשיו זה הפך להיות Tool “בתוך החיים” של ה-Agent שאתה בונה.
        • זה יכול להיות גם נחמד.
      • (רן) אוקיי, Nice . . . 

    • (דותן) טוב, אז מחר - האמת, זה לא כזה חשוב בפודקאסט, אבל לא משנה - “מחר יש גשם”, ככה אומרים. אולי כשייצא הפודקאסט יהיה גם גשם . . . ויש פה איזשהו פרויקט נחמד, נראה לי, לעשות עם הילדים בבית.
      • זה פרויקט של Facebook Research [Meta Research] - הם בעצם לוקחים דמויות שילדים מציירים על נייר, ועושים להן אנימציה עם AI.
      • כשאתם נכנסים לאתר, אז אתם יכולים לראות - יש פה בן אדם אמיתי, שקופץ ורוקד
        • והדמויות - כל הדמויות שהילדים ציירו - בעצם רוקדות אחריו.
        • ואני מניח שעשו את זה עם הפרויקט הזה.
      • (אלון) זה ממש מגניב . . . רגע, אני כאילו יכול לכתוב את הקוד, להעלות את התמונה שהילד צייר - וזה יעבוד?
      • (דותן) אני חושב . . . או לפחות אני מקווה.
      • (אלון) Install Docker . . . .כן.
      • (דותן) אתה עושה פה Clone לפרויקט, pip install - ומריץ שתי שורות Import לספרייה של איזשהו פונקציית - Render כזאת.
        • לוקח קובץ קונפיגורציה (Configuration) מוכן - ומריץ את זה.
        • וזה עושה לך אנימציה לחתיכת-דמות מתוך הנייר שציירו אותה.
      • זה מה שאני בונה עליו, שיצליח לי מחר . . . . ונראה אם זה יעבוד.
      • אני עוד לא יודע אם זה יעבוד לי על המחשב, מבחינת Spec, אבל נראה שהם מתכוונים שתריץ את זה בעצמך, על כל מחשב .  . .
        • (אלון) על שרת nVIDIA שיש לך בבית . . . . [קרו מקרים . . . .]
        • (דותן) זהו, שלא ראיתי פה שום דבר שאומר “קח GPU” וכו’ וכו’ . . .  אני מאוד מאוד מקווה שזה מודל קטן, שיעבוד.
      • (רן) טוב, אני - יש לידי nVIDIA. להביא לך איזה ערימת GPUs?
        • (דותן) תיסע לשם, תגיד להם “הנה, אני רוצה להריץ”, תכניס אסימונים למכונה - ותקבל את זה מודפס.
        • (רן) נקבל שעות חישוב בלילה . . . .
        • (אלון) זה הזמן לתרום לרברסים - אנחנו מחפשים GPU למהנדסים מסכנים . . . .
        • (רן) “GPU מרופא, במצב טוב”.
        • (אלון) כן, “יד שנייה מרופא”.
      • (רן) אוקיי, אז איך זה נקרא? fairanimateddrawings-נקודה-קום.
      • (אלון) קניתי! דותן, זה נראה לי . . . תקשיב, אם זה עובד, אתה ב- Hall of Fame . . . .
      • (דותן) זה טוב, נכון? עכשיו, אתה - יש לך קפיצות יפות, אלון. יכול להיות שאני אבקש ממך לקפוץ לי וזה, ואני אקח את זה . . . 
      • (אלון) אני הדוגמנית, אתה אומר . . . .
      • (דותן) כן. אני זוכר שיש לך תמות טובות.
      • (אלון) ממש, ממש. זה לריקוד המודרטורים (מחפשים!) שאנחנו תמיד מתכוננים כל שנה, ולא יצא לפועל.
      • (דותן) בדיוק. יכול להיות שעכשיו אפשר לעשות אנימציה של ריקוד המודרטורים . . . 
      • (אלון) או, הבאת הרעיון לכנס הבא.
      • (רן) טוב, הרעיון הבא . . .

    • (דותן) נכון אתם כל הזמן מסתבכים עם Traceroute ו-Ping? כל הזמן  . . . 
      • (רן) האמת שהרבה זמן לא . . . אבל כן! בטח! יש לך משהו טוב בשבילנו?!
      • (אלון) היום בבוקר בדיוק הילדים שלי שאלו אותי מה קורה, ואמרתי “יש לי בעיה ה-Trace” . . . .
      • (דותן) . . . . ”למה האינטרנט לא עובד?” - ואז הרצת Traceroute, נכון? אז יפה.
      • אז עכשיו, יש כלי שמאחד את השניים, ולוקח את הפלט שלהם ועושה אותו אנושי ונחמד.
        • ממשק כזה של CLI - אבל עם UI חמוד כזה וכיפי, ואפשר לדבג (Debug).
        • ופעם באה שאומרים לכם שהאינטרנט לא עובד - אז אתם יכולים להשתמש בכלי הזה.
      • (רן) רגע-רגע-רגע! לא אמרת את הדבר הכי חשוב - זה כתוב ב-Rust!
      • (דותן) ברור, מה? לא . . . . אני כבר לא אומר, לא טורח לציין.
        • כי כבר כל הכלים האלה . . .
        • (רן) כבר מובן מאליו. יש לך Bias, כבר לא תביא משהו שלא.
        • (דותן) כן . . .  אייטם הבא - 
      • (רן) רגע, לא אמרנו איך קוראים לזה - קוראים לזה trippy, ואפשר למצוא לזה ב-GitHub
        • כמובן שכל הקישורים גם יהיו ב-Show Notes [הי!]

    • (רן) הכלי הבא . . . “קטנה”?
    • (דותן) לא קטנה - kanata.
      • ובשבילי היתרון היחיד שזה . . . נגיד רגע מה זה - זה מקנפג (Configure) מחדש את המקלדת, את ה-Keyboard
        • לאנשים שרוצים להחליף את התפקוד של המקשים ברמה גבוהה.
        • נגיד אצלי - ה-Caps Lock הוא Backspace. ככה אני מוחק עם Caps Lock . . .
        • (אלון) אצלי Escape . . . 
        • (דותן) אצלך הוא Escape, אוקיי . . . 
        • (אלון) אני פשוט מוחק פחות - אני לא עושה טעויות כמוך - וכשקופץ לי חלון, אני מיד סוגר.
        • (דותן) יש לך סגירה מאוד מהירה של חלונות . . . .
        • (אלון) נכון - ואני לא טועה בכתיבה, אתה מבין? זה מעיד הרבה.
        • (דותן) כן. אתה בעצם טוב ב-Multi-tasking, כי אתה יודע לסגור חלונות מאוד מאוד מהר . . .
        • (רן) למעשה, כשמודלי AI, יש להם בעיה - הם פונים לאלון.
        • (דותן) כן.
        • (אלון) יותר מזה - כשאתה כותב, אתה מוחק קצת. אני פשוט סוגר את החלון, מתייאש. אם יש טעות - לא צריך!
        • (דותן) יפה . . . אז זה אצלי.
      • (רן) אז kanata משמש כדי לקנפג (Configure) את המקלדת מחדש, אוקיי. איזה עוד דברים עשית, חוץ מ-Caps Lock?
      • (דותן) אז יש את המקלדת המגעילה - האירופאית, עם ה-Enter בצורת ריש?
        • (אלון) נכון . . . 
        • (דותן) אז זה גועל-נפש . . . .
        • (אלון) טפו עליה . . . 
        • (דותן) אז נגיד, אני לקחתי את ה-Back-Slash, שמופיע . . . נקרא לזה “בלמטה של ה-Enter” - והפכתי אותו גם ל-Enter.
        • (אלון) יפה. רעיון יפה. אני גם פעם  . . . 
      • (דותן) עכשיו, זה מכניס אותך לתסבוכת - כי עכשיו מאיפה תביא צינור ו-Back-Slash?
        • אז אתה מביא אותו מהמקש ליד ה-Z, שהוא שייך רק למקלדות האלה - הטילדה [~], נכון?
        • (אלון) כן . . . 
        • (דותן) אז זה גם מסובך. מאיפה תביא טילדה~? מאיפה תביא?
        • (אלון) הזזת את כל המקשים . . . חזרת בסוף לאותה נקודה.
        • (דותן) לא, רגע . . . עכשיו הטילדה [~] - אתה יכול לראות שיש לך גם נקודה-פסיק [;] שם. זה מיותר.
        • (אלון) שמע, זה נשמע כבר כמו מערכון של ארץ נהדרת, מה שאתה עושה עכשיו . . . .
      • (דותן) רגע, אבל זוכרים שאת ה-Backspace נתתי ל-Caps Lock? אז זה אומר שה-Backspace פנוי . . . .
        • אז ה-Backspace אצלי . . . 
        • (רן) שתי לחיצות מהירות על ה-Backspace זה הטילדה~?
        • (דותן) לא! ה-Backspace המקורי, מעל ה-Enter - אצלי זה הטילדה~ . . . . בסדר?
        • (רן) אוקיי . . . 
      • (דותן) זהו, ואז אתה משלים את כל ה...
      • (רן) יש לך טוש לכל זה? אתה רושם לך, על המקלדת, את ה . . .
      • (אלון) יש חצים . . . “זה הלך לפה, זה הלך לפה”. תרשים . . . 
        • תקשיב, הרווח נורא גדול ולא מנוצל - אתה יכול שהחלק הימני שלו יעשה משהו אחד, השמאלי משהו אחר - ודאבל-רווח יעשה משהו שלישי.
        • (דותן) אגב, יש מקלדות כאלה . . . אתה לא טועה. שהרווח מפוצל לשתיים.
        • (רן) אלון - דותן מקליד כל כך מהר, שהוא לא צריך רווחים . . . . אצלו הכל זה ברצף.
        • (דותן) נכון. אני כותב את הכל רצוף, וה-AI מפריד לי . . .
        • (אלון) . . .  ואז הוא מוחק, אתה מבין? הוא צריך למחוק מהר. זה כל האופטימיזציה - התחלנו מזה שהוא עושה טעויות, וצריך למחוק מהר.
          • אולי פשוט תלמד להקליד בלי טעויות? זה יפתור לך את כל הבעיות האלה, של להתחיל להזיז כפתורים, להתקין מערכות . . . 
        • (רן) זה כמו כתב-סתרים . . . . כמו כתב-סתרים - אף אחד לא יכול להשתמש במקלדת.
        • (אלון) אני לקחתי את זה למקום אחר, דותן.
          • תקשיב, מה שאני רשמתי לפה, הנקדה הכי חשובה - שזה עוד כלי ברשימת Trolling שיש לי.
          • כלומר - מישהו השאיר את המחשב פתוח, אתה מתחיל לעשות לו את כל המיפוי שונה לגמרי . . . .
          • (דותן) זה חזק . . . להחליף לו את השורות, השורה של ה-SDF היא בכלל למעלה, וה-QWERTY למטה . . .
          • (אלון) אתה מחליף את ה-Enter ב-Escape, את ה-Escape, את הרווח . . . .
          • אתה מתחיל להחליף, גם מזיז קצת אותיות נגיד שקרובות - אתה נגיד הופך לו בין G ל-H, או כאלה, ואז הוא כאילו כל פעם חושב שהוא מקליד עם Typo . . . 
          • (דותן) אבל אתה חייב להשאיר לו שיהיה אותו מקש? השפה. כי ברגע שהוא יתחיל להקליד והכל יצא לו ג'יבריש, הוא ישר יחליף שפות.
            • הוא יחליף לאנגלית, יחליף לעברית, יחליף לאנגלית - הוא לא יבין, כאילו, מה - למה זה יוצא לו כזה?
          • (רן) זה נראה לי כמו שבירת-קרח טובה לראיון-קידוד . . . . אתה נותן למועמד מקלדת כזאת, ויאללה.
          • (אלון) אולי זה הרעיון - אתה נותן לו מקלדת כזאת, והוא צריך לפענח מה בעצם  . . . מה דותן חשב במיפוי שלו, כשהוא הזיז את הטילדה~ ואיך הכל התחיל?
          • (דותן) כי גם ככה ה-AI לקח את החיפוש בינארי וכל הדברים האלה . . . . 
          • (רן) אני בטוח שאחרי זה, הוא ישמח לעבוד איתך . . . .
      • (רן) אוקיי . . . . COSMIC?
      • (דותן) יפה, אז רגע - kanata, למי שרציני ואוהב להחליף דברים - מה שמיוחד פה, זה שכל הקונפיגורציות (Configurations) של ההזחות והזזות הם בקובץ טקסט קריא.
        • ולא מצאתי שום כלי, שהשתמשתי בו עד היום, שיש לו טקסט שהוא קריא, והמטרה שהטקסט יהיה קריא זה שאני אוכל להעתיק את זה לכל מחשב שאני רוצה ולשמור את הקונפיגורציה הזאת.
        • (רן) הבנתי . . . 
        • (אלון) עכשיו, כשמתחברים לשרת - זה גם ככה?
        • (דותן) תריץ שם את הפרויקט הזה, ותזרוק שם את הקונפיגורציה .  . . .
        • (אלון) אתה פעם סיפרת לי . . . 
        • (דותן) . . . אבל אני לא מתחבר לשרתים . . . מי מתחבר לשרת?
        • (אלון) . . . אתה פעם סיפרת לי, עם ה-Dvorak בשרת . . . . הרגת את כולם. לא זוכר מה היה בדיוק.
        • (דותן) כן . . . . היתה לי אפיזודה של Dvorak, וישבתי ממש, כאילו כל יום בעבודה ראיתי איך אני יורד בביצועים שלי . . . . ותכנתתי והקלדתי כמו . . .  כזה, עם אצבע אחת, ואחרי זה עם שתי אצבעות וכו’ וכו’.
          • ואז זה תפס מהר, והתחלתי להקליד ממש ממש מהר.
          • שזה היה “תוכנה של פעם” - אז היינו מתחברים לכל מיני שרתי Production ומתקנים שם תיקונים, תוכנת Enterprise כזאת.
          • ואז, מה שקרה זה שהתחברתי לשרת של לקוח, שמתי לי הגדרות “כיפיות”, של Dvorak - והם נשארו  שם . . . 
          • ואז היה בעצם Demo ללקוח, והראש-צוות שלי נכנס לעשות את ה-Demo, ובעצם הוא זכר שיש לי את הקטע עם Dvorak, שיגעתי את כולם וגם החבר'ה שישבו איתי וכל פעם הוא היה צריך לבוא ולשנות את ה-Dvorak וכו’.
          • וזהו, ואז נתקע לו ה-Dvorak והתחרבש לו כל ה-Demo, והוא לא הצליח להקליד.
          • ואני גם לא יכולתי לסייע לו או להגיד לו “שמע, זה ה-Dvorak שלי שם בזה . . . 
          • קיצור, וזה היה הסוף של ה-Dvorak.
      • (רן) מסתבר - בדקתי ביוקיפדיה - שDvorak הומצא ב-1936!
      • (דותן) כן, כן. זה לא חדש. יכולתי לקחת גם Colemak וכל מיני כאלה, אבל אמרתי “אה, אני אתחיל במסורתי” . . . .
      • (רן) טוב, זהו . . . . הבא בתור.

    • (דותן) הבא בתור . . .
      • (רן) COSMIC.
      • (דותן) כן. יש חברה בשם system76 - חברה חמודה מאוד [שהזכרנו כבר בפרקים קודמים]
        • היא בונה מחשבים - Desktop-ים - לשימוש כללי.
        • מבוססי Linux - סוג של אלטרנטיבה ל-Apple.
      • והייחוד שלהם שזה עיצוב כזה “רטרו” חמוד, כיפי. מאוד-מאוד איכותי, כאילו, ברמה ממש גבוהה.
      • והם גם ידועים ככאלה שפיתחו את המערכת-הפעלה שלהם, שנקראת Pop!_OS.
      • ובקהילת ה-Linux, ה-Pop!_OS נחשב סופר-סופר יציב.
        • המון-המון אהבה למערכת הפעלה הזאת.
      • יש לה רק חיסרון אחד - באיזשהו שלב, לפני  לא מעט שנים, היא “עצרה בזמן”.
        • אני לא זוכר על איזה Ubuntu זה מבוסס, אבל הם הקפיאו אותה . . . הגיעו למסקנה שהם רוצים לפתח Desktop מאפס, להחליף את GNOME, להחליף אותו לגמרי.
      • ואם תשימו לב, בהיסטוריה של Linux זה תמיד קורה - יש לך KDE, יש כל מיני אלטרנטיבות.
        • יש שנאה מאוד חדה ל-GNOME, אבל גם יש אהבה מאוד עצומה לזה . . .  סוג של פרדוקס, שתמיד קיים ב-Linux.
      • אז הם בעצם שכתבו את כל ה-Desktop Windowing System - ב-Rust.
      • קראו לזה COSMIC - וזה אחד הפרויקטים הכי . . . נקרא לזה, “שאנשים הכי מצפים להם”.
        • משחררים עדכונים, זו משימה מטורפת.
      • ועכשיו הם הגיעו ל-Alpha, אחרי שנתיים של עבודה מאוד מאוד קשה.
        • ואנשים כבר לוקחים את זה, וזה יציב.
        • זה נראה כמעט אותו דבר כמו כל Linux שתראו - אבל הרבה יותר יציב.
      • (אלון) קשה לי . . . קשה לי להסכים עם האמרה האחרונה שלך . . . בלי להכיר את הפרויקט אפילו.
      • כי ב-Fixing Issues האחרונים, רשום Memory . . . איפה זה היה? שה-memory leak causing some panel applets to crash . . . 
      • (דותן) בסדר, אבל זה דבר רגיל ב-Linux, אתה רגיל לזה, זה לא לא רציני . . . .
      • ואני אגיד לך גם - בזמן האחרון התחלתי להשתמש ב-Fedora, עם GNOME יחסית מאוד חדש.
        • כל יום יש לי כזה Crash על Memory . . . .אני עושה איקס, לוחץ על האיקס - ומתחיל את האפליקציה מחדש.
        • וממשיך הלאה - ואתה מתרגל לזה . . . פה קורס, שם קורס, פה כשאתה עושה Restart אז המחשב נתקע ולא רוצה לעשות Restart - אז אתה עושה עוד פעם Restart . . . . זה יציב.
      • (אלון) תקשיב, למה אנשים מזוכיסטים, למה? למה לחיות עם ה-Linux-קקה הזה?
        • עכשיו הבאתי את כולם עלי, עם המשפט הזה . . . 
      • (דותן) אין מה לעשות . . . מה תעשה? אתה צריך ממש לבדוק דברים על Linux אמיתי.
        • מה תעשה? יש לך Docker, אבל לפעמים אתה רוצה לחיות בתוך ה . . . יום שלם, לבדוק.
        • (אלון) בתוך הסחל’ה . . .  יום שלם לסבול.
        • (דותן) כן, אין מה לעשות. לחיות בתוך “עמך” . . .  כן, אתה פורש את ה-Linux, אז אתה רוצה להיות . . . להבין מה . . . .
    • (רן) אלון, אם התחלת בכזאת חיוביות, אולי תמשיך אל האייטם הבא שלך?

    32:56 אלון
    • (אלון) טוב, יאללה - בוא נלך איתכם. יש פרויקט חמוד שנקרא steampipe - זה פרויקט, שבגדול מנסה להפוך כל API ל-SQL, שזה די נחמד.
      • אם נגיד אתם רוצים לקחת רשימת User-ים מ-Amazon, אז עושים “Select Users From” . . . -  לא יודע,  משהו - “Role Administrator” או כל מיני כאלה - וזה יעבוד.
      • אפשר גם ככה לעבוד עם API-ים של אחרים - של Slack, GitHub, מה שרוצים . . . 
        • אז ממש נחמד, בסוף SQL משתלט על העולם . . . 
      • אגב, עוד דבר נחמד ב-SQL זה שמודלי-AI נורא טובים בלעבוד איתם - אז אני חושב שזה יהפוך את זה אפילו ליותר קל להם בשביל להסתדר, כי זו שפה מאוד מובנית.
      • (רן) כן, נחמד . . . אז נגיד Select Region ו- * Count, ו-From נגיד EC2 - ואז, נגיד, אתה מקבל כמה  Instance-ים יש לך בכל Datacenter.
      • (אלון) כן, גם נורא קל למשל לעשות גם דוחות Billing ככה - אתה רוצה מחירים, CPU . . . 
        • מה שאתה רוצה - פתאום זה קל, כי לעבוד עם ה-API-ים האלה - לפעמים זה לא כיף.
        • אבל ברגע שכבר הנגישו את זה ב-”SQL-יות”, אז פתאום יותר קל לעשות Queries מורכבים, שדורשים כמה קריאות API.
      • בקיצור - חביב, חמוד.
        • (רן) נחמד.
        • (אלון) . . .  חביב וחמוד - ולא מזוכיסטי! דותן, רואה? אנחנו מחפשים דברים לא מזוכיסטים . . . 
      • (דותן) כן, האמת שזה נחמד. יש פה תמיכה ל-GitHub, בתור Provider כזה, Microsoft 365 . . . 
        • אגב - למה זה 365? . . .
        • (רן) “למה השם”, אתה שואל?
        • (דותן) כן. למה אני צריך . . . כאילו, למה זה . . . 
        • (רן) מה זאת אומרת? יש 365 ימים - ורבע - בשנה . . . 
        • (דותן) כן . . . אבל אני מבין למה אני צריך את המשביר 365 ימים בשנה - אבל למה אני צריך את זה?
        • (אלון) בוא אני אגיד לך - אתה רוצה בלי חגים וסופי-שבוע? אפשר - יש להם חבילה, 30% הנחה, לא עובד בסופי-שבוע. יש לך Office - בלי סופי שבוע.
        • (דותן) השאלה אם יש יום שה-Sh!t   שלך של Microsoft לא עובד - האם אתה מקבל זיכוי?
        • (אלון) יש יום שה-Sh!t של Microsoft כן עובד לך?
        • (דותן) זהו, אתה צריך פה לקבל . . . . אולי יש לנו פה תביעה ייצוגית . . . .
        • (רן) טוב . . . 
        • (אלון) אני חושב שעוד שנייה יש על רן תביעה ייצוגית . . . . (איפה העו”ד של זוהר?]
        • (רן) ירדנו נמוך מדי . . . . בואו נעצור.
        • (אלון) “פרק זה הינו . . . כל החומר פה הוא בהלצה! סטירי, ואין הנאמר . . . אין  לראות את זה כהמלצה” . . .
        • (דותן) אני רק אגיד שאצלי ה-Microsoft עובד באמת 365 ימים - ממש על הדקה, על השנייה . . . 
        • (רן) חסר לך רבע . . .  שלא ידפקו אותך.
        • (דותן) כן . . . . אוקיי - אייטם הבא.

    • (אלון) “האייטם הבא בחסות” . . . . לא. אז מקודם, דותן, דיברת על - עכשיו זה משתלב טוב, האמת, עם זה שה-Copilot בחינם - אז Microsoft נהיו בעצם “Hub של AI”.
      • כאילו, אני לא יודע אם יש להם משהו משל עצמם . . . כאילו, כי אני לא חושב שבאמת יש להם משהו שלהם.
      • (רן) יש להם מודלים שלהם, כן - אבל הם לא לא באותה רמה.
      • (אלון) אז הם לוקחים את OpenAI, ועכשיו הכניסו את Claude, כש-Claude הוא כנראה המודל - לפחות ממה שאני נתקלתי - הוא המודל הכי טוב לעבוד איתו.
        • אני חושב שכל המודלי-AI נתקעו אי שם ב-Claude 3.5. כאילו, המודלי-טקסט, נתקעו שם.
        • אני חושב שכל “ה-O-ים” האחרים - יש להם את היכולות הנחמדות שלהם, אבל הם בסוף, Under the Hood, הם פחות טובים מה-Claude. יש להם יתרונות מסויימים . .  .
      • אז בקיצור, עכשיו אפשר בתוך ה-Copilot, לעבוד עם Claude - וזה ממש חביב ונחמד.
      • (רן) למעשה, בתוך Copilot, אתה עכשיו יכול לבחור אם אתה רוצה לעבוד עם Claude או עם ChatGPT.
      • (אלון) כן - ומעניין אותי, מה שאמרנו עם כל השיחות AI של מקודם, בעצם - מה יקרה ל-Cursor בסוף, וכל האלה.
        • כי אני לא יודע כמה יתרון נשאר להם . . . . אז נראה.
        • (רן) נחכה ונראה.
    • (אלון) טוב, יאללה - הדבר הבא: פרויקט שנקרא Genesis, שזה פרויקט שמנסה לדמות את ה-Real Physics עם AII - ואז בעצם, אחד הדברים . . . .
      • האמת שאתמול ראיתי את זה - למשל, סרטונים שהראו, כל  היוצרי-וידאו - Sora וזה של Google [Veo 2] וכל הסינים וכולם  . . . .
      • אז נגיד סרטון של איך חותכים בשר - אז כאילו הם מצליחים לחתוך, אבל הפיזיקה של איך הבשר אחרי זה נופל נורא בעייתית להם
        • הוא פתאום נעלם, הוא פתאום עף למעלה, הוא פתאום עף הצידה . . . . הוא פתאום נראה בצורה אחרת - והפיזיקה קשה.
        • חוץ מהמודל התיאורטי של Google - אבל הם לא הוציאו אותו, אז זה קצת רמאות, כי גם אני יכול להקרין  סרט בבית ולהגיד שזה מודל AI עשה . . . 
      • אז בגדול - שוב, זה משהו שיצא אתמול, אז אני לא הספקתי להבין אותו כל כך, מה הסיפור - אבל בעיקרון, הוא מודל פיזיקה של “העולם”.
        • אז אפשר איתו לעשות דברים די מגניבים - ככה זה נראה לפחות.
        • אבל יכול להיות שעוד יומיים יקטלו אותו ויגידו שזה לא באמת עובד, כל הדוגמאות . . . 
      • (רן) דרך אגב, הסיפור הזה מזכיר לי איזשהו וידאו מצחיק כשראיתי, על כל מיני Fuckups של AI .  . . [תוחזר פינת המצחיקולים?]
        • אז נגיד, כשה-Prompt היה “תייצר וידאו של דג סלמון שוחה בנהר”, אז אתה רואה דג סלמון שוחה בנהר - רק שהדג סלמון כבר בושל בתנור, ואתה רואה אותו מפולט וחתוך ככה, שוחה בנהר . . . אז זה משעשע.
      • כן, אז מעניין אם הם באמת, כאילו, עושים פה את הפיזיקה . . . . מעניין איך הם עושים את זה.
      • (אלון) כן, אז ראיתי לזה כמה דוגמאות נחמדות, אני יכול לצרף [הנה], שזה נראה די יפה
        • אבל שוב - המודלים האלה, עד שלא משחקים איתם, קשה לדעת.
        • כי גם Sora היה נראה מאוד מרשים ב-Demo-ים הראשונים - ואחרי זה, כשמתחילים לשחק איתו, אז “קצת פחות”, בוא נגיד זה ככה, בזהירות.
        • נוסיף פה לינק יפה, היה פה איזה הסבר יפה, שמישהו שם דוגמא מ”הטוויטריה" (Twitter), אז ניתן לכם.
        • ואז אם אתם רואים, הנה - אני אקריא לכם, פיקסל-פיקסל, שתדעו . . . אז זהו.
        • (דותן) תעשה זה ב-RGB רק . . . 
        • (אלון) ב-RGB יהיה להם יותר נוח? טוב: 7 - 2 - . . . . בסדר.
      • טוב, בטח נשמע על זה עוד כמה דברים - או שזה יבוא עם מלא חיקויים וזה יצליח, או שיקטלו את זה ויגידו שזה קקה, אבל אני עוד לא יודע . . . .
        • אבל תסתכלו.
      • (רן) אוקיי, Nice - האייטם הבא.

    • (אלון) הדבר הבא - הוא לא קשור ל-AI, אבל הוא די מגניב. היה את ה-AWS, איך שזה נקרא - re:invent -  והדברים, אז הרבה Buzzwords וזה.
      • אבל משהו אחד שכן תפס לי את העין - כאילו, כבר אני לא יודע, בשנים האחרונות לא יותר מדי התרגשתי  מהשינויים, אני חייב להודות.
      • מה שכן תפס לי זה ה-Aurora DSQL - הוא כרגע אמנם ב-Preview, אבל ה-Aurora זה Database Proprietary של AWS, שמבוסס Postgres
      • והדבר המעניין ב-DSQL זה שהוא בעצם Distributed Endless Postgres  - שזה בתיאוריה ה-Database האולטימטיבי, אני חייב להודות . . . .
        • כי כולנו תמיד אומרים “אין על Postgres!”, אבל מה לעשות - בקצבים מאוד גדולים או גבוהים, או בכמויות גדולות של Data, אין ברירה אלא לעבור למשהו אחר.
        • ובתיאוריה, הדבר הזה פותר את הבעיה - ואז אפשר לקחת “Postgres Forever” . . .  שזה נשמע סופר-מבטיח . . . 
      • לא יודע עד כמה זה עובד, זה עוד ב-Preview - אבל  זה נשמע כאילו זה כל מה שרצינו כל החיים, לא?
      • (דותן) מאיפה אני מביא הרבה Data? 
      • (אלון) אני אביא לך, יש לי קצת . . .. יש לי פה, בכיס.
        • ואפשר להעביר תרומות! הקשרו לתרומות Data - 1-800 - Reversim . . . .
        • (דותן) בוא נפתח תרומות ל-Podcast של Data . . . 
      • (רן) כמה שאלות מעניינות, אם אפשר, קודם באזור הרציני . . . אחד - Postgres, יש לו כל מיני Plug-In-ים, אז השאלה אם ה-Plug-In-ים יעבדו גם פה . . . 
        • ושאלה שנייה זה מה בנוגע לטרנזקציות ולקונסיסטנטיות (Transactions, Consistency), כי זה באמת החלק הקשה בדברים שהם מבוזרים . . . בדקת?
      • (אלון) כן, בדקתי - עשיתי את המחקר בשבילך, כדי שאתה לא תצטרך לבדוק!
        • אז אני קראתי את השקרים של AWS . . . סתם, לא.
        • זה בדיוק כמו Spanner . . . .
        • (רן) לא מכיר אותו! לא יודע מי זה שמדבר פה . . . 
      • (אלון) לא לא . . . . הקיצר, זה בדיוק כמו Spanner, הקונספט. 
        • ב-Spanner הרי עשו שעונים אטומיים, ו”ניצחו את ה-CAP Theorem” - אז זה אותו דבר  . . . 
        • רק ההבדל בין זה ל-Spanner זה שSpanner הוא לא מבוסס Postgres - כאילו, אין לו שום Plug-In, אין לו שום יכולת של Postgres, הוא Flavor של SQL משלו.
        • וזה - הוא כן Postgres “אמיתי”.
      • וגם, על פניו, המחיר שלו אמור להיות הגיוני, בניגוד ל-Spanner.
        • הבעיה ב-Spanner, שלא יודע אם מישהו ניסה לעבוד אותו - הוא פשוט . . .  הוא לא הגיוני, המחיר שלו. הוא “יקר פיצוצים” . . . .
      • (רן) בוא נזכיר - זה Bigtable, אם אני זוכר נכון, על על גבי Google Cloud . . . 
        • (אלון) לא - זה SQL . . . זה SQL.
        • (רן) אה, זה כן SQL, אוקיי.
      • (אלון) איזה SQL, שהוא ברמה של “Endless-SQL”, הוא אותו רעיון כמו ה-DSQL הזה, ה-Aurora DSQL.
        • אבל הוא Flavor אחר של SQL שהם עשו, עם יכולות טיפה “מנוונות יותר”.
      • ובגדול, גם עם אנשים שדיברתי ב-Google רצו שזה יהיה ה-Database  העתידי, שיחליף את כל ה-Bigtable-ים, אבל הוא פשוט יצא להם “יקר אינסוף”, ולא משתמשים בו כל כך, גם בתוך Google, לפחות לפני שנה, כשאני דיברתי שם עם מישהו שהיה “בסוד העניינים", מה שנקרא.
        • והיתה שם תמיד מלחמה של “בואו נתחיל להשתמש בזה יותר, ואז נוכל להוריד את המחיר כי נשקיע בפיתוח” . . . .
        • אני לא יודע אם זה מתקדם או לא, אבל זה הסיפור שם.
      • אז זה “האח המקביל שלו מ-AWS”, תכל’ס.
      • אבל על פניו, ה-Aurora זה Database מעולה, ואם באמת הם רק הפכו אותו לאיכשהו Distributed, אז זה מדהים . . . זה יכול להיות באמת מדהים.
      • (רן) ונזכיר שיש להם גם גרסת Aurora ל-MySQL, אבל - כרגע לפחות  - לא Distributed.
        • אולי זה יהיה הדבר הבא . . . 
        • ואז חברות שעושות Distributed MySQL יצטרכו “להתעורר על עצמם” . . . שמעת, שלומי?
      • (אלון) כן, זה נשמע שמה שהם עושים פה זה די מטורף - ובתיאוריה, אני לא בדקתי, אבל זה אמור לעבוד עם ה-Plug-In-ים  של Postgres.
        • כי זה ממש Postgres Compatible . . .
        • יכול להיות שיש איזה פינות שלא בדקתי - אבל לפי ההבטחה שלהם, זה אמור לעבוד.

    44:51 סיום
    (רן) אוקיי - אז נראה לי שזה הכל היום, נכון?אז תודה רבה!(אלון) כן - אין לנו מצחיקולים! לא יצא לנו מצחיקולים הפעם . . . .(רן) לא יודע, נגמר לנו ההומור הפעם . . . .
    טוב - אז תודה רבה! אנחנו היינו אנחנו, אלה היו באמפרים - ונתראה בפרק הבא.
    [קישור לקובץ mp3] האזנה נעימה ותודה רבה לעופר פורר על התמלול!
    46 min
  • 486 SaaS product alongside an on premises with Omer from Pentera
    [קישור לקובץ mp3]
    פרק מספר 486 [פנטיום?] של רברס עם פלטפורמה, שהוקלט ב-10 בדצמבר 2024. אורי ורן מארחים באולפן בכרכור את עומר מחברת Pentera כדי לדבר על מוצר שחי On-Prem - ומעבירים אותו לענן [ספוילר - זה לא פשוט כמו שזה נשמע, במיוחד בענייני Security). 🎗️
    00:45 על עומר ו-Pentera
    (רן)  אז עומר, קצת על עצמך וקצת על Pentera?
    • (עומר) אז נעים מאוד - עומר. הצטרפתי ל-Pentera - השם הקודם היה בכלל Pcysys, אבל אנחנו מנסים לשכוח את זה . . .  - בתחילת 2018.
      • כחלק מה-Batch הראשון של המפתחים שהצטרפו לחברה.
        • החברה קמה כבר ב-2015.
      • התחלתי כמפתח, עשיתי מגוון תפקדים - והיום אני VP Engineering בחברה.
    • ו-Pentera היא בעצם חברת-מוצר, שמפתחת פלטפורמה לביצוע מבדקי-חדירות אוטומטיים.
      • מה שנקרא Automated Pen-Testing.
    • כדי להבין את הבעיה ש-Pentera פותרת, אני חושב שצריך לחזור רגע לאיזושהי הנחת-יסוד - שבעולמות ה-IT, ה-Best Practice הוא בעצם לבצע Pen-Testing כדי לבדוק את הרשת הארגונית.
      • תחת ההנחה שאתה לא יודע איפה אתה פגיע עד שלא בדקת.
      • רק שיש איזושהי בעיה קטנה עם כל העולם הזה - שהוא ידני . . .
        • והקצב שבו הרשת משתנה, שהוא שעתי, לא מאפשר לתהליך כזה להיות ידני.
        • [למיטבי-שמע - 422 Pentesting with Erez Metula]
    • אז בעצם, הפלטפורמה שאנחנו מפתחים עושה את המבדקי-חדירות - ממש “שמה לך את התוקף בכף- היד”, שאתה יכול, On-Demand, להריץ אותו.
      • למה זה טוב, בנוסף? כי אתה רוצה לבדוק את עצמך לא בשעות-העבודה, לא על ידי בנאדם שצריך לאכול,  להפסיק, ללכת לישון . . . 
      • ואתה רוצה לבדוק את עצמך גם במקרי-קצה.
    • מה גם שניקח רגע את התהליך הידני וננסה לדמיין אותו - נגיד שהגיעו בודקים, עשו את מה שעשו, עבדו שבועיים  בארגון . . . 
      • נגיד שהמבדק היה מעולה - ואחרי זה הם נותנים לך איזשהו דוח.
      • הלכת ותיקנת, אוקיי, מה עכשיו? נחכה עכשיו עוד שנה כדי לראות שמה שתיקנתי בכלל עבד, או איזה אפקטי-פרפר הוא עשה?
      • הרעיון פה הוא להריץ עוד פעם בדיקה On-Demand - וככה אתה יכול לוולדץ (To Validate) את זה שעשית עבודה טובה.
    (אורי) זה בעצם לקחת את הרעיון של Automatic Testing  - ה-Unit Tests, System Tests, שאנחנו מכירים  מאיכות של תוכנה - “ולהלביש אותו" על Penetration Testing?
    • (עומר) עם אפילו עוד קצת יותר אבסטרקציה, אפשר לאטמט (Automate) הכל.
    • אז גם פה, במקום לעשות בדיקה ידנית ל-Feature שעשית - אז כן, זה בדיוק אותו קונספט.
    (רן) בוא ניתן לזה קצת צבע . . . ודרך אגב, לא הרבה יודעים - תמיד רציתי להגיד את זה - “לא הרבה יודעים”, אבל אני  התחלתי את הקריירה שלי בתור Pen-Tester. אז פעם, דברים שהייתי עושה לפני די הרבה זמן, זה סריקות Port-ים, סריקה של כל מיני Resource-ים עם ACL-ים לא נכונים, ניסיון להריץ כל מיני “סקריפטולוגיה” (Script) של דברים שמוכרים, שיודעים שיכולים לפרוץ, כמו SQL-Injection ומיליון דברים אחרים, שאני בטוח שמאז נולדו הרבה כאלה. [שאל את יוסף - The Dark Side of AI: The Hidden Risks in Open-Source AI Models / Jossef Harush Kadouri]זאת אומרת, זה סוג ה-Pen-Testing שאנחנו מדברים עליו?
    • (עומר) ממש כך.
    • מה שהמערכת עושה - היא מחקה את פעולות-התקיפה שתוקף אמיתי היה עושה, ולא נותנת לסימולציה או ל-Playbook-ים להיכנס.
      • כלומר, אפשר לדמין איזושהי מכונת-מצבים סופר-מורכבת, עם איזשהו Exponent של מצבים
      • שכל פעם, המכונה צריכה לקבל את ההחלטה הטובה ביותר, כדי לחלחל את ההתקפה ולהתפרץ לארגון - 
        • עד שמגיעה ל-Crown-Jewel בתוך הארגון.
      • אז בעצם, זה מידול של תהליך התקיפה.
    (רן) שאלה תם - איך אתה יודע שאתה לא מזיק בזמן שאתה בודק?
    • (עומר) אנחנו נורא אוהבים את השאלה הזו . . . יש המון אנרגיה והשקעה במחקר.
    • יש לנו, אני חושב, באחוזים, את קבוצת המחקר מהגדולות שיש בחברות מהסוג שלנו.
    • כל ה-Payload-ים וכל ה-Cyber וכל התקיפות וכל המנגנון שמשנע את התקיפה - מפותח על ידינו.
      • אנחנו חיים במרחבים שהם בטוחים - אנחנו לעולם לא נעשה משהו שמתעסק עם Kernel-ים או התקפות מסוג Denial of Service וכדומה.
      • ואנחנו ממש חרטנו את זה על דגלנו - ש-Safety by Design.
    • אנחנו יודעים לזהות את הצורה שבה המערכת נמצאת כרגע - ואנחנו יודעים לעדכן מה קרה במקרה שמשהו  השתבש.
      • וכשאני אומר “משהו השתבש” - זה פיזיקה, שלא הצליחה לקרות.
        • אז אפשר לדווח על זה.
      • ויש כל מיני Safe-Guard-ים כאלה.
    (רן) אוקיי, מה גודל החברה? פחות או יותר ש...
    • (עומר) גודל החברה? אנחנו היום כמעט 350 עובדים בכל העולם.
    (רן) ופיתוח?
    • (עומר) HQ ופיתוח בארץ; הפיתוח - סדר-גודל של פלוס/מינוס 50 מפתחים.
    (רן) אוקיי.(אורי) תגיד, יכול להיות שבאחת השנים האחרונות, חברה מאוד בולטת בתחום שלכם נפרצה בעצמה - ואז חלק מהמתודולוגיות שלה זלגו לעולם ההאקרים, ל-Dark Net? יכול להיות שהיה דבר כזה?
    • (עומר) אם יכול להיות?
    (אורי) לא, כאילו אני חושב זה פורסם . . . [הכוונה לכיף הזה - The Leaked NSA Spy Tool That Hacked the World או אולי לקרקס בין Cellebrite ל-Signal?]
    • (עומר) אני לא מצליח לשלוף . . . . אבל אני חושב שבאופן כללי, זה יהיה יחסית קשה לפרק, לעשות Reverse לדבר הזה.
    • כלומר, אתם מדבר על המתודולוגיות של איך מנהלים תקיפה בצורה אוטומטית, לאו דווקא על המידע שיש בו . . . 
    (אורי) לא, גם כאילו - ברגע שיודעים איזה תקיפות חקרתם, או איזה תקיפות אתם מסמלצים (Simulate), אז כאילו,פתאום יש המון מידע על איך לתקוף.(רן) זה כמו שלמי שמפתח וירוס, יותר קל לו אם יש לו את ה-Antivirus, אז זה יודע . . . 
    • (עומר) אז נכון. אנחנו לא מסמלצים תקיפות - אנחנו תוקפים, הלכה למעשה.
    • אבל התשובה היא “כן” - אם הקוד שלנו לנו יגיע לידיים לא נכונות, יהיה נורא ברור איך אנחנו יכולים ועושים את מה שאנחנו עושים.

    07:06 מי תוקף ואיך לחשוב SaaS-ית
    (רן) אוקיי, אז הבנו בגדול מה החברה עושה. עכשיו בואו נדבר על המורכבות.אז למעשה, המוצר שלכם התחיל בתור מוצר On-premises, נכון? זאת אומרת, אנחנו נותנים ללקוח, הוא מריץ, או אולי אנשים מטעמכם מריצים, אבל על חומרה שלו, בתוך Data Center שלו. והנה הגיע הענן . . .
    • (עומר) נכון.
    (רן) והחלטתם  אתם שגם אתם רוצים לעננים . . . 
    • (עומר) נכון. אז אני אנסה לעשות סדר, בצורה יחסית תכליתית.
      • קודם כל - יש מגוון מרחבי-תקיפה.
      • כשהחברה קמה, החלטה אסטרטגית - לתקוף מתוך הארגון, Pen-Test ל-Infrastructure.
      • יש המון מרחבים - יש מרחב מחוץ לארגון, בתוך הארגון, יש Cloud, יש IoT, יש OT, יש המון עולמות . . . [הרבה על זה כאן - גיקונומי פרק #881 – יבגני דיברוב וארמיס].
    • תחת ההנחה של Assume Breach - תניח שהתוקף בתוך הארגון שלך - אמרנו, המוצר שלנו צריך להיות מוצר On-premises.
      • יש יתרונות, יש חסרונות - לא כל כך משנה עכשיו.
      • אז זה המוצר הראשי שלנו.
    • כשהחברה עברה את סבב-הגיוס השני שלה - באזור 2021 - החלטנו להרחיב את סט-היכולות, כדי להגדיל את ה-Business, לעשות Cross-Selling, Up-Selling וכו’.
      • והחלטנו להנגיש את היכולות שלנו - פשוט מבחוץ.
      • כלומר, ה-Use Case השתנה: במקום תקיפה מתוך הארגון, תקיפה מחוץ לארגון.
        • כלומר, התוקף יושב בחוץ - ומנסה להתפרץ פנימה.
    (רן) ואלו אותן תקיפות, בגדול?
    • (עומר) אז יש חפיפה גדולה מאוד בין התקיפות - אבל חלק מהעסק היה להמציא יכולות Cyber שלא קיימות, אני אוכל לתת קצת דוגמאות . . . 
      • למשל, כשאתה בתוך הארגון - אז אתה כבר בתוך הארגון. כל מה שאתה צריך זה Port בקיר.
      • יש לך כתובת IP, נגיד, אתה עושה איזושהי שאילת את Broadcast, עונות לך מלא מכונות - ואתה אומר “אוקיי, זה ה-Context שלי”.
        • זה שלב ראשון בתקיפה - אני רוצה להבין מי במשחק.
      • מבחוץ, בואו ננסה לחשוב על זה - אני לא יכול לעשות Broadcast ל-0.0.0.0.0.0, אני אקבל את כל העולם . . . .
        • אני צריך מודל אחר של להבין מה ה-Context שלי.
      • אז פה, אני מחשיב את זה תקיפה, נכון? כי זה חלק מ”מעגל התקיפה”. היינו צריכים לבנות בכלל מודל Cyber חדש, של לנסות להבין, “אוקיי, מה ה-Asset-ים של הארגון?”
        • אנחנו עובדים ב-Mode של Black Box, וכל מה שאני רוצה לדעת עליך כארגון זה את ה-Domain שלך, שזה Reversim.io [נגיד… reversim.com].
        • מכאן אני מתחיל לשאול שאלות - מי כתב את ה-Domain? על שמי הוא רשום?  . . . 
      • (אורי) יש לנו את Reversim.io?
      • (רן) אולי כדאי שיהיה לנו . . . 
      • (עומר) אז יש גם Use Case כזה . . . 
      • (רן) אנחנו עוד מבועת ה-Dotcom - אבל שלא יגנבו לנו ויכניסו לנו סוס טרויאני, אולי כדאי . . . 
    • (עומר) אז זה רגע השוני - ויש גם הרבה חפיפה.
      • בסוף אם ננסה לתת פה איזשהו דימוי - “קליע Cyber”, כלומר Payload או איזושהי יכולת - לא משנה לה כל כך מי יורה אותה, אוקיי? העיקר שהיא פוגשת את המטרה שלה.
      • אממה? כל “מכונת-הירייה” הזאת צריכה רגע להשתנות.
    • אז (1) - שהחלטנו, עסקית, להציע עוד מוצר לתקיפה מבחוץ - זה מיד גוזר SaaS . . . 
      • אין דבר כזה - “תקיפה מבחוץ, ב-On-premises”.
      • אז ההחלטה הייתה להקים מוצר Pentera - שה-Use Case הוא תקיפה מבחוץ.
    (רן) אתה עדיין יכול להריץ את זה על איזושהי חומרה שלך. זה לא בהכרח חייב לרוץ בענן, אבל אני מסכים - זה יותר הגיוני, זה יותר קל . . . (אורי) לא משנה, SaaS זה SaaS . . . 
    • (עומר) אנחנו סטארטאפ, כאילו זה...
    (רן) לא, ברור - פרקטית, זה יותר קל.
    • (עומר) בדיוק. אוקיי, אז עכשיו, יש שני אתגרים גדולים שקורים בחברה.
      • 1 - פוקוס. בסדר? כלומר, הדבר הכי חשוב ל...
    (אורי) מה שקורה תמיד, שאתה נהיה Multi-Product, נכון?
        • (עומר) בול. וזה גוזר עוד המון דברים. אפשר, אם יהיה זמן, להגיע אליהם - מבנה ארגוני, איך ה-Sales מקבלים את זה? מה האסטרטגיית Go-to-Market? עולם ומלואו.
        • אבל בואו נסתכל ונתמקד רגע ב-R&D - אז פוקוס של ה-R&D.
      • והדבר השני - שיש פה גישה בכלל חדשה - “לחשוב saaS-ית”.
        • וננסה רגע לפרק את זה.
    • אז הקמנו צוות - ממש קרענו את ה . . . בין שניים לשלושה מפתחים, בין שניים לשלושה חוקרים - ולי הייתה את  הזכות להוביל את זה.
      • ואמרנו יעד, תאריך - ושם המוצר עולה ל-Production,
        • ומכאן התחיל המסע.
    (רן) אז אנחנו מדברים על צוות של חמישה?
    • (עומר) בסדר גודל . . . תוך כדי הצטרפו אחד-שניים, 
      • היינו אפילו בלי DevOps, QA . . .
    (רן) מה הקבועי-זמן, פחות או יותר?
    • (עומר) היעד היה כשלושה רבעונים - ולרוץ.

    11:42 נצלול לטכנולוגיה - עולם אחר
    (רן) והבנתם איזה מוצר אתם רוצים לבנות? איזה Sub-Set של המוצר?
    • (עומר) לגמרי כן, לגמרי כן.
    • ועכשיו, בואו נצלול רגע לטכנולוגיה.
    (אורי) אז זה גם עולם . . . זה כאילו מוצר חדש - שפותר עולם בעיה חדש. זה לא, כאילו, תקיפה מבחוץ, זה שונה לגמרי מתקיפה מבפנים.(רן) כן, אבל רגע, אני חושב ששווה להדגיש כמה דברים לפני שאתה ממשיך. אחד, בעולם ה-Security, יכול להיות שיש אילוצים קצת שונים, כשאתה מפתח איזה שהוא SaaS. זאת אומרת, אתה לא רוצה “לתת לדרקון להשתולל בחוץ“, באינטרנט, בזמן שאולי On-premises זה קצת יותר קל להגביל אותו בחוץ. אז אתה צריך קצת יותר שליטה על זה.ושתיים, יכול להיות שיש טכנולוגיות, או יש Stack טכנולוגי, שפיתחתם - שעבד מעולה On-premises. לצורך העניין, לא יודע - Database-ים קטנים כאלה, שעכשיו פתאום צריך לשבור את הראש איך עושים לזה Scale רוחבי או whatever. כלומר, בונים איזה משהו “SaaS-י”.זה היה גם Scale אחר לגמרי של הבעיה?
    • (עומר) עולם אחר. עולם אחר . . . ב-On-premises, אמנם אתה “בתוך קופסא”, אבל ה-Scale שלך הוא ה-N לקוחות שיש לך. אז יש N קופסאות, N לקוחות . . . .
    (רן) זאת אומרת, בתוך הארגון - יש לך אלף Node-ים אז יש לך אלף Node-ים, זה העולם שלך. באינטרנט . . . 
    • (עומר) יש עולם של Scale בתוך הארגון . . . אנחנו ממש עכשיו בתהליכים מאוד יפים.
      • זה גם קורה - אבל זה שונה.
      • למה? אם אנחנו מסתכלים רגע על המערכת שלנו, אז בואו נחלק, שבור אותה לשני Domain-ים מרכזיים.
      • אחד - ה-Domain של מערכת-התקיפה - “מכונות הירייה”, כמו שקראתי להן, מה שמשנע את ה-Cyber.
        • שזה קצת פחות אינטואיטיבי למי שלא בתוך החברה.
      • והחלק היותר אינטואיטיבי, שזה ה-Domain השני - זה בעצם האפליקציה: המסך Login, ה-Inventory, ה-Report-ים, הנוטיפיקציות (Notifications), איך אני מנהל . . . 
        • בעצם, “מה שהלקוח נוגע בו”.
    (רן) אתה בעצם הופך מ-Single - ל-Multi-Tenant.
    • (עומר) בול. וזה אחד האתגרים הראשונים.
    • עכשיו, בואו ננסה לעשות חיבור בין סטארטאפ צעיר, שרץ מהר ו-On-premises - מה הסיכוי שהקוד שכתוב שם, יצליח...
    (אורי) יהיה רלוונטי בכלל . . . 
    • (עומר) ופה התחילו...
    (רן) זה מריח כמו Refactor גדול . . . 
    • (עומר) נכון, אז אוקיי . . . 
    (אורי) או... לא יודע - זה נשמע לי כמו פשוט בנייה מחדש, כי זה עולם בעיה אחר.(רן) יפה, זה עוד דילמה, נכון? זה עוד דילמה - אם לבנות מחדש או להשתמש במה שקיים?
    • (עומר) מדויק.
    • אז בכוונה עשיתי את החלוקה הזאת לשני האזורים - כי אני אעבור ביניהם, וננסה להבין מה היה קצת יותר קל לעשות לו Adjustments, ומה היה הרבה יותר מאתגר.
    • אז אם רגע נלך למרחב האפליקטיבי (Applicative), אז דברים כמו - רן, שאתה ציינת
      • נגיד Single-Tenant לעומת Multi-Tenant: מעולם לא נכתב קוד שאמור לטפל ב-Multi-Tenancy של User-ים . . . 
        • זה נשמע כאילו פשוט, אבל רגע - לא. צריך לכתוב את זה From Scratch.
    (רן) זה משהו שקל לטעות בו, מניסיון . . .  אתה כותב, אתה מניח שרק אתה בחי ב-Database - ופתאום יש לך עוד לקוחות בתוך אותו Database, ואתה מתחיל לאבד רשומות . . . 
    • (עומר) נכון, אז זה משהו שהיינו ערים אליו, ועשינו מ-Day One.
    • הדבר הבא זה שאתה צריך להחליף את כל ה-Infrastructure . . . 
      • עכשיו יש לך Ansible, שעושה לך Deployment למוצר On-premises . . . 
    (אורי) אגב, זה לא מחויב המציאות שיהיה לך Multi-Tenancy. מה זה משנה אם אתה SaaS או לא SaaS? בסוף יש לקוח. כאילו, יש לפעמים שיטת Scaling שאומרת “בואו, לכל לקוח אני בונה Swimlane, אף אחד לא מפריע לאף אחד, ושוחים בנפרד”. זה לא בהכרח . . .  כאילו, לא מחייב להיות Multi-Tenant על כמה לקוחות, או על...
    • (עומר) נכון, אז אני חושב ש...
    (אורי) זה לפעמים יותר יעיל במשאבים, אבל זה לא מחייב.
    • (עומר) נכון, אני מסכים. זה ה-Mode פעולה שבחרנו פה, הוא עשה לנו שכל.
    • ומעבר לאתגר הזה, היה לנו את האתגר של לשמור על “הלינגו” של המוצר.
      • כלומר, בואו נחשוב על דברים מאוד טריוויאליים ללקוח - הממשק, איך נראים ה-Logo-ים, הצבעים, מפת התקיפה, הטבלאות . . . 
        • כל הדברים שלקוחות שלנו כבר ציפו לראות אותו דבר.
    • אז מה עושים? שכפלים את הקוד? ברור שלא, נכון? אנחנו החלטנו ש...
    • הייתה פה הזדמנות טובה לקחת איזשהו Monolith, שחי ב-On-premises - החלטנו לא לגעת בו, ופשוט לכתוב אותו מחדש.
    (רן) כן, כמו שאומרים אנשי המכירות ואנשי המוצר - “מה הבעיה? את הדבר הזה - פשוט תעשה שם”.
    • (עומר) אני מת על זה, כן . . . 
    (רן) . . .  “ זה כבר עובד! אז רק נשאר לך לפרוש את זה שם, וזהו”. [Tony Stark Was Able To Build This! In A Cave! With A Box Of Scraps…]  
    • (עומר) “מה הבעיה? תגיעו לירח, ואז . . .”. כן.
    • אז גם היינו צריכים לשמור על רכיבים גרפיים, על קומפוננטות (Components), על כל מיני דברים לוגיים שהיינו חייבים לשמור עליהם לטובת הלקוחות.
    • אז פה יצאנו לאיזשהו מסע של Shared Components.
      • החל מכמו שאמרתי, רכיבים גרפיים ועד ספריות בקוד.
        • כלומר, איזושהי לוגיקה שצריכה לחיות גם ב-On-prem וגם פה.
      • אוקיי, צריך להתחיל לעשות אבסטרקציה, ו”להוציא דברים למעלה”.

    16:55 ה-Stack הטכנולוגי
    (רן) איך נראה ה-Stack שלכם? הזכרת קצת Ansible - מה עוד קיים אצלכם?
    • (עומר) כן, אז Ansible, אני רק אגיד, כבודו במקומו מונח.
      • אנחנו בדיוק בתהליכים - בגלל ה-Scale שלנו, המערכת היא כבר גדולה - אנחנו עושים פרויקט מדהים של לשכתב הכל מחדש, ולכתוב ולהיפטר מ-Ansible, עוברים ל-Python.
      • אז יש Python, יש Java, יש DocumentDB.
      • יש לנו המון שפות Low Level שקשורות ל-Cyber, ו-Stack-ניטור . . . כל מיני דברים נחמדים כאלו.
    (רן) וב-Front עצמו - React?
    • (עומר) אז React, כן.
    • אחלה, אז עכשיו - אנחנו לא יכולנו לקחת את כל האופן שבו דיפלטנו (Deployed) את המערכת ב-On-Premises.
      • יש פה עכשיו Infrastructure-as-Code From Scratch - עוד איזשהו אתגר.
      • אני חושב ששם, הדבר שראינו זה שהיה לנו נכון לדפלט (Deploy) את כל ה-Service-ים החדשים שבנינו כמה שיותר מהר.
        • במקום להתחיל לעשות איזושהי Over-הנדסה, ואז לראות איפה צווארי-הבקבוק.
    • מדברים על זה הרבה, אני חושב שידענו להפריד מה מראש צריך Scale - כמו נגיד Stack-ים של תקיפה,  שצריכים לקום פר-דרישה של לקוח (On-demand), או חישובים כבדים, כמו Reports וחישובי Inventory למיניהם.
      • אז אלה הדברים שידענו מראש שאנחנו רוצים להתחיל מההתחלה כסוג של Service-ים בפני עצמם.
    • אבל רצנו מהר קדימה עם איזשהו Monolith
      • מתוך ידיעה שאנחנו נשקיע מאוד באיך שה-Monolith בנוי - DAL-ים, DAO Services, DTOs . . . 
        • ממש הכל מאוד מאוד Decoupled בקוד.
    • זה היה מאוד מאתגר, אבל נכנסנו לזה בידיעה - כדי שכשיגיע היום, יהיה לנו ונוכל לבנות ולדפלט (Deploy) מחדש את ה-Service-ים כמו שצריך, ו . . . 
    (אורי) “ונשבור את ה-Monolith!”
    • (עומר) בדיוק. אנחנו שלוש שנים לתוך התהליך הזה, ואני יכול להגיד - לא נשברו הרבה Service-ים.
      • זה לא מפתיע אותי, אבל יש שניים-שלושה Service-ים שהוצאנו מה-Monolith.
    • אז אנחנו מתנהלים ב-Mono-Repo החדש הזה, שהחלטנו ללכת עליו . . . 
    (אורי) מה גודל הצוות היום, שעובד?
    • (עומר) כמעט שישה מפתחים . . .
    (אורי) אני חייב להגיד לך משהו - לפעמים, השבירה ל-Service-ים היא פונקציה של גודל הצוות, ולא של גודל העומס או דברים כאלה. אתה במקום סביר לגמרי . . . 
    • (עומר) כן, שמח לשמוע.
    • כן, היה חשוב לנו מאוד לא לבוא עם איזשהו פתרון - ואז להתחיל לחפש לו בעיה
      • אלא ממש רגע להתקל בבעיה, ו . . . 
    • יש אתגר אחר, שאומר “אוקיי, אתה אמנם רוצה לצאת עם MVP - אבל . . .”
      • זו בעיה שוב מעולם ה-Business של “האם הארגון יכול לקבל MVP בכלל?”
      • כי הארגון באיזשהו מקום אחר: יש איזשהו מוצר ראשי, קדימה - מצפים ממך להרבה
        • אבל זה לא כזה משנה, אתה יכול לסמלץ (Simulate) - עליתי לProduction, יש לקוחות, עכשיו אני מתחיל ללכת על זה.
    (רן) כלומר, יש לך מוצר קיים, אתה רוצה לעשות ללקוח Up-Sell ל-Feature נוסף - הוא יצפה לאותה איכות. אתה לא יכול לתת לו משהו . . . 
    • (עומר) בדיוק. הוא לא סלחן, זה לא מעניין אותו שיש קונספטים של פיתוח שקוראים להם “MVP” . . . 
    (אורי) אבל מן הסתם התחלתם עם סט פיצ'רים מסוים, ואחר כך היו הרבה פיצ'רים שאמרתם “את זה נשאיר לאחר כך”, נכון? לאחרי העלייה.
    • (עומר) חד משמעית, חד משמעית. את הדברים הממש . . .  ה-Flow-ים “הרגילים”, של User Login וניהול של ה-Inventory, ו-Dashboard-ים, ו-Report-ים.
      • עכשיו אנחנו כל פעם מוסיפים קצת, חותכים מה שצריך.
      • אבל כן, זה הסיפור.

    20:42 אספקטים של Pen-Testing במעבר לענן  / “ברוך הבא לעולם ה-SaaS”
    (רן) בהקשר הזה - של לייצר פיצ'רים חדשים, אבל גם להיות רזה - אז אולי שווה להזכיר מתודולוגיה, שאני חושב שקיימת  ב-AWS, יתקנו אותי אנשים שמכירים, של אחד, קודם כל, מוציאים PR או כותבים את ה-PR בסוג של PRD. כלומר,  אנחנו יודעים מה אנחנו רוצים לשחרר, ואז דואגים לשני פיצ'רים חשובים: אחד - Security ושתיים - Scale. כל השאר יבוא אחר כך.זאת אומרת, מבחינת פיצ'רים מוצריים, מתחילים בחסר, אוקיי? זה ברור. ישנם דברים שכן צריך לדאוג להם - שזה יכולת לעשות Scaling ויכולת לעשות שהדברים האלה יהיו Secure.ובהקשר הזה, רציתי לשאול, זאת אומרת - יש לא מעט אתגרים, בעולם תוכנה גנרי, של לעבור מ-On-premises לענן.אבל איזה אתגרים מיוחדים מצאתם בעולם של ה-Cyber Security, וספציפית בעולם של Pen-Testing? כלומר, מדובר פה על אחריות כבדה, אוקיי? אתם נותנים “מכונות ירייה” לאנשים, אתם רוצים לדעת שאתם נותנים את זה לאנשים הנכונים, ושהם עושים בהם שימוש נכון. שאם הם פוגעים במישהו, אז הם יפגעו בעצמם, שהם לא יפגעו באחרים. לצורך העניין, מה מונע מחברה מסוימת לבוא ולתקוף - אפילו בטעות - אבל לבוא ולתקוף חברה אחרת?וזהו, איזה אספקטים מעניינים מבחינת Pen-Testing, גיליתם במעבר לענן?
    • (עומר) מעניין מאוד . . . אני חושב שקודם כל, זה מדויק מה שאמרת - ברגע שאתה נותן כלי תקיפה, ושם אותו בידיים לא נכונות, זה פשוט לא לוקח.
    • המגבלות בענן הן קצת . . .  By-Design, האינטרנט הוא קצת יותר מגביל במה שאתה יכול לעשות.
      • לדוגמה, אין לך גישת Layer-2, בסדר? אז זו שכבה שתוקפים “אוהבים לשרוץ בה”, אז צריך לוותר על זה.
      • אז עכשיו אתה נגיד צריך לעבוד בשכבת ה-TCP - ה-Cloud Vendors לא מאפשרים לך לעשות את דברים שהם לא שם.
      • זה אתגר ראשון. כלומר, אתה צריך לוותר על הרבה מהתקיפות שלך.
    • אתגר שני, שלטעמי היה המשמעותי ביותר, זה איך לבנות את המודל שאותו אתה תוקף.
      • כשאני אומר “מודל”, זה בעצם “את הלקוח”.
        • אמרנו, אם זו רשת ארגונית - אתה רק פותח עיניים: “אוקיי, אני מתוך הרשת, הכל במשחק”.
      • פה אני בחוץ - ועכשיו אני צריך להבין מה שייך ללקוח שלי.
      • הלקוח לא יכול לכוון את הכלי לאן שהוא רוצה - הוא לא יכול להגיד “רוץ לכתובת IP כזו” או “רוץ לכתובת  או ל-Domain ספציפי”.
      • היינו צריכים לבנות איזשהו אלגוריתם שבונה את המודל.
    (רן) “הוא לא יכול” - כי זה לא נכון לכם מוצרית, או כי אתם רוצים בכוונה להגיד . . . ?
    • (עומר) הוא לא יכול כי אין לו שליטה, אין לו שליטה על זה.
    • המודל נבנה בצורה אוטומטית על ידינו, סוג של איטרציות (Iterations) של שאלות כאלה.
    (רן) אז אמרת נגיד קודם - הולכים נגיד ל-DNS, בודקים על שם מי זה רשום, מחפשים עוד כאלה . . . 
    • (עומר) נכון, אז בואו נפתח את זה קצת - אז נגיד על שם מי זה רשום? אולי הוא רשם עוד Domain-ים? מצוין.
      • עכשיו, נתחיל לעשות אינומרציות (Enumerations )של ה-Sub-Domains - אני אגלה שיש לך את App [.app] נקודה, את Dev נקודה, את Staging נקודה, את Prod נקודה, whatever . . .  מעולה.
        • אז עכשיו העשרתי את ה-Database שלי.
      • אחרי שיש לי Sub-Domains, השלב הבא - אני מתקדם לריזלוב (Resolve) של כתובות IP.
        • יפה, אז עכשיו יש לי כתובות IP, מעולה.
    (רן) אז אתה מחפש מה הבלוקים . . . 
      • (עומר) ועכשיו רואה אם הוא רשם את זה - ועכשיו אני יכול להצליב את השם שלך, ואת הכתובות IP של ה-Sub-Domain-ים שלך.
        • אני יכול רגע לראות איזה Network Blocks  רשמת - ועכשיו אני יכול לסרוק את ה-Network Blocks.
      • אז עכשיו, על כל כתובת IP, אני יכול גם לעשות סריקת Service-ים - איזה VPN-ים רצים, איזה Website-ים יש לך . . . מעולה.
    • יש עוד מימד שלם של Identities - אנחנו יודעים גם, בחלק מהמודולים שאנחנו מציעים, זה להבין האם הייתה לך איזושהי דליפה בארגון.
      • ואנחנו יודעים להביא אולי סיסמאות או מידע רגיש שהגיע.
    • מה שעשיתי עכשיו - יריתי פה המון Atrifact-ים, המון Asset-ים שיש בארגון.
      • אבל עכשיו צריך להבין . . .  אוקיי, אז רזלבתי (Resolve) כתובת IP - אבל אולי היא של AWS? מאיפה אני יודע אם זה Owned by You או לא?
    • אז פה נכנס כל האלגוריתם של להבין מה שייך לך ומה לא.
      • קראנו לזה Confidence - אני נותן ציון לכל Asset, ולפי איזשהו Threshold מסוים אני יודע להגיד האם הוא שייך לך או לא.
      • כלומר, אוי ואבוי אם אני אתקוף כתובת IP, שהיא לא שייכת לך . . . . או ה-Website שהוא לא שייך לך.
    • אגב, ה-Cloud Providers מגבילים אותך
      • אתה יכול לעשות Pen-Testing - אבל בהסכמה, וב-TCP, בסדר?
      • כלומר, מאוד קל לעשות שטויות . . . 
      • איפה שהמנגנון לא בטוח . . . 
    (רן)  דרך אגב, מה הם נותנים לך? לתקוף את מי שהם מארחים ב-TCP? או שכשאתה כשאתה נמצא אצלהם, מותר לך לתקוף אחרים, רק ב-TCP?
    • (עומר) אופציה ראשונה . . . 
    (רן) אוקיי.
    • (עומר) אתה יכול לתקוף את עצמך.
    (רן) כלומר, לצורך העניין, הלקוח יכול להיות בכל מקום - על ענן כלשהו או לא. אבל אתה כנראה Deployed, נניח  ב-AWS, אז זה כבר שם עליך איזה שהם מגבלות.
    • (עומר) נכון.
    (אורי) רגע, הרמת לי ל... (רן) אורי אוהב את זה . . . (אורי) לא, לא, לא . . . מן הסתם, ה-Cloud Providers - אחד הדברים שהם לא אוהבים זה שתוקפים משתמשים בתשתית שלהם כדי לתקוף. זה לא אתי, זה לא טוב, לא יפה וכו’. אבל אתה מתחזה לתוקף . . . 
    • (עומר) נכון, אני תוקף. זה ה-Business שלי. אני...
    (אורי) לא, אבל השאלה היא האם הייתם צריכים לדבר - אני לא יודע על איזה ענן אתם מתארחים, So-called *AWS  - לדבר איתם ישירות, ולהגיד “זה ה-Business שלנו, שתדעו. זה מה שאנחנו עושים”.
    • (עומר) נכון, אז זו בדיוק הנקודה. יש Pen-Testing Policy לכל אחד מה-Vendor-ים האלה, ואתה חייב לעשות את זה בשיתוף פעולה. זה לגיטימי.
      • תחשוב, עזוב - בוא נוציא אותי מהמשוואה ואת הסיפור פה מהמשוואה. תחשוב . . . 
    (אורי) אתה כנראה לא ה-Pen-Tester היחיד . . . 
    • (עומר) בדיוק. אתה רוצה לעשות Pen-Test לעצמך - פשוט תפעל לפי ה-Policy.
      • זה האירוע הפחות מאתגר, בסדר?
    • האירוע יותר מאתגר זה איך אתה לא מבדר את התקיפה לאזורים שהם לא של הלקוח.
      • אז גם פה, עכשיו, היינו צריכים לקחת את כל הרכיבים האלה - ולא הגיוני להגיד ללקוח “חכה, מתישהו המערכת תגיע לשם”.
      • היא לא נכתבה ככה בכלל, היא ל-On-prem - זה שלך, תשתמש בזה כמה שאתה רוצה ב-On-premises.
    • פה, עכשיו, אנחנו צריכים לחשוב על Scale-up.
    (אורי) לא, אבל זה לא אותו מוצר בכלל . . . 
    • (עומר) אז אני חוזר לשני ה-Domain-ים - כל מערכת התקיפה היא בדיוק אותה מוצר.
      • לא משנה לה איזה לוגיקה היא מריצה בפנים - אבל היא צריכה עכשיו לדעת לעשות Scale.
    • ופה, זה היה החלק שהיה יותר קל לנו - לקחת Container-ים, לארוז אותם לסוג של Cluster כזה.
      • ולפי דרישת הלקוח - סוג התקיפה שהוא רוצה, יש מגוון סוגים של תקיפות שאנחנו מציעים - אנחנו יודעים להעלות לו את ה-Cluster הרלוונטי, לשם תכלית ספציפית.
      • מתבצעת עבודה, יורד - הולך הביתה. בסדר?
    • כאן בעצם ה-Scale-Out הוא . . . תיאורטית הוא אינסופי.
      • כמובן שאתה נתקל בכל מיני מגבלות, של Service Quota והרבה דברים.
    • זה גם לוקח אותי לנקודה, שבה אני חושב...
    (אורי) . . . סליחה, זה גם Load מאוד מאוד משתנה, נכון?
    • (עומר) Load מאוד משתנה. יש הרבה Compute והרבה Memory בתקיפה, אין ספק. משמעותי מאוד.
    (אורי) לא, אבל זה עולה, זה יורד, אין לזה שעות קבועות, אין לזה זמנים קבועים . . . 
    • (עומר) נכון, ובהגדרה - אני לא יכול להחזיק את כל ה-Stack הזה באוויר כל הזמן.
      • ואז זה לימד אותנו עוד מימד, שאני ממליץ לכל מי שעושה את המעבר הזה, שרגע צריך לחשוב על זה - עלויות.
      • זה נשמע גם טריוויאלי, אבל אתה צריך איזשהו Cost Strategy, שאין לך ב-On-prem - כי אתה לא משלם על “הברזלים”.
      • פה זה כבר אירוע אחר.
    (אורי) ב-On-prem של הלקוח, הלקוח משלם על ה...
    • (עומר) חשמל, Memory, CPU . . . . פה זה עלויות שלך.
      • זה משהו גדול, בסדר?
    (אורי) ספר לנו על זה . . . 
    • (עומר) כן, אז אני אומר אתם מודעים לזה. מהחוויה של רגע לחשוב על הדבר הזה . . . .
    (רן) כן, בחברה שבה אף אחד לא הבין Cost, פתאום יש חמישה מפתחים שכבר צריכים להבין Cost - ומחרתיים זהו עשרים מפתחים שצריכים להבין Cost . . . 
    • (עומר) זה המקרה הטוב . . . 
    • המקרה הרע הזה שיש לך טעות Cost, שיש “תאונת Cost” - וזה משהו שהוא קריטי בסטארטאפ צעיר, שלא יכול להרשות לעצמו תאונה כזו.
      • אז בעולם שאין בו מגבלות תקציביות וכסף, פתאום זה משהו לחשוב עליו.
    • עולם נוסף שנפתח כשאתה עושה את המעבר הזה, זה כל העולם של Monitoring ו-Security באופן כללי.
      • פתאום אתה רואה, זה נהדר - אתה יכול לראות את ה-Service-ים שלך, אתה יכול לנטר אותם.
      • זה כמובן משפיע מאוד על הפיתוח.
    • עכשיו אוקיי ברור - זה היתרונות של SaaS - אבל זה עוד Effort שצריך לשים, כחלק מהזמן.
      • אתה לא יכול להיות “עיוור” - אתה יודע, אתה מעלה איזושהי מערכת ו”טוב, מה קורה איתה?”.
        • זה לא עובד.
    (רן) כן, אז זאת אומרת, מה - ב-On-premises לא הייתה לכם גישה?
    • (עומר) אין גישה, נכון, אין גישה . . . 
    (אורי) זה פשוט אצל הלקוח . . . (רן) כן, אני מבין - אבל עדיין, אין לך “כניסת שירות”? זאת אומרת . . .
    • (עומר) אז תראה, יש דברים מאוד, שהם תחת Legal מאוד נוקשה . . . 
      • ואין לך Log  . . . אין לך Log-ים נגישים - אתה לא יכול לזהות אנומליות, אתה לא רואה, אין לך ניטורים . . . 
      • אין לך EPM על המערכת.
    • והדבר הכי טוב שאתה יכול לעשות זה לסמלץ (Simulate) אצלך את הלקוח.
      • אבל זה לא באמת מספיק, כי כמות הסביבות שאתה נפגש בהן ב-On-prem, היא אינסופית, ממש אין סופית . . .
    (רן) “זה עבד אצלי על המחשב” . .. 
    • (עומר) בדיוק.
    (רן) כן, זאת אומרת - זה למעשה גם נותן לכם הזדמנויות, של ניטור לצורך העניין, ויכולת לעשות, אולי, Cost Saving - כשלפני זה אולי לא היה Cost, אבל פה אתם פתאום צריכים לחשוב על זה.אז באמת, ה-Traffic שלכם הוא כזה Spikey? זאת אומרת, נגיד, פעם 12 בלילה - עולים אלף, עושים את העבודה  שלהם ויורדים?
    • (עומר) כן. זה ממש ככה.
    (רן) אז זה דורש לבנות אורקסטרציה (Orchestration).(אורי) ויותר מזה - יכול להיות שגם הרבה מזה הוא לא חזוי מראש, נכון?
    • (עומר) נכון. אז כמו כל דבר שכותבים - צריך איזושהי מגבלה, אתה לא יכול לתת למשהו להיות לא מוגבל.
    • לשמחתנו, אנחנו - כמובן שהתחככנו במגבלות, אבל אלו היו מגבלות “מטופשות”, של דברים שאתה לא חושב עליהם.
      • כי גם אחת החוויות שאני באופן אישי ממש שמחתי עליה, זו איזושהי חווייה של שחרור צווארי-בקבוק.
      • אתה פתאום עולה לעולם, כשאתה לא בתוך קופסא - אתה פשוט משחרר פה איזה מערכת.
    • עכשיו, זה מדהים לראות באיזה צווארי-בקבוק אתה נתקל.
      • אתה אומר “טוב, מה אחד? מאה!” . . . אין לי בעיה שלם על זה.
      • אבל זה לא כזה פשוט - כי אז אתה רואה שיש לך איזו פונקציה, שהיא פשוט לא כתובה לזה.
        • ואז אתה חייב לעשות Profiling, ולנסות לזהות את צווארי-הבקבוק.
        • ואתה מגיע למגבלות שהן לא פיזיות בכלל - הן פשוט שהקוד כתוב בצורה, שמעולם לא “התחכחה עם Scale כזה”.
    (אורי) זה פשוט “ברוך הבא לעולם ה-SaaS”   . . .  .
    • (עומר) ממש ככה, זה... אני אומר - זו חוויה מאוד מאוד נעימה וטובה.
      •  וצריך לקחת את הדברים האלה בחשבון - כי זה לוקח זמן.
    • פתאום יש לך איזשהו תהליך מרכזי, בתוך המערכת, אבל אתה אומר “טוב, עכשיו אני נתקע עליו?”
      • וזה גוזר, מהר מאוד, השפעה על ה-Roadmap קדימה, ואיזה דברים חייבים להתעסק בהם.
    (רן) כן. כמו שנאמר - “יש במדעי-המחשב רק שלושה גדלים: אפס, אחת, והמון”. [חשבתם לגייס  Gully Dwarves ?]
    • (עומר) בדיוק.

    32:15 יש עוד מימדים
    (רן) כן, אז אנחנו ככה ממש לקראת הסוף. אנחנו נגענו בכמה נושאים, אנחנו לא נגענו בהכל. אבל אנחנו דיברנו  בעיקר על איך לוקחים מוצר שהוא On-premises בתחום של Pen-Testing - והופכים אותו, או חלקו, או אולי בונים מוצר דומה, במעבר לענן.חלק מהדברים שתיארת הם גנריים, במעבר לענן - או דרך, אגב, גם מעבר הפוך, גם את זה עושים - והלקחים הם רלוונטיים: אם זה שיתוף קוד, אם זה לקחת צוות ואמרת “לקרוע” אותו, לשלוף משם אנשים באמצע ולבנות צוותים חדשים. אבל חלק כן רלוונטיים גם ספציפית בתחום של Pen-Test. אבל . . .(אורי) אני - רק לרפרר (Reference) לפרק אחר שעשינו עם נתי, על “ה-Trillion Dollar Paradox” [זה - 421 The Cost of Cloud, a Trillion Dollar Paradox with Martin Casado], שגם מדבר - המאמר הזה מדבר על המעבר של חברות מ-On-premises אצל הלקוח ל-SaaS: מה זה אומר בכלל על זה, אבל גם מה זה אומר על עולם  העלויות, שנגעת בו.
    • (עומר) כן, אני חושב שיש עוד מימדים באמת מאוד מורכבים, כמו שנגענו בהם - מה זה אומר על החברה? מה זה אומר על מבנה ארגוני בכלל? האם המבנה ארגוני הוא תוצר של הארכיטקטורה, או להפך? . . . 
      • אז אני אומר . . . 
    (אורי) אה, זה תמיד יקרה ככה . . . תמיד תיהיה הלימה - זה חוק Conway.
    • (עומר) אז אנחנו היינו מודעים לחוק Conway.
      • אז קודם כל אמרנו “טוב, צוותים פר-מוצר”, אבל אז אמרנו “טוב, זה צריך להיות צוותים פר-Domain” . . .
      • מכונת התקיפה יכולה לרוץ או ב-On-premises, או ב-SaaS - זה לא משנה לה.
      • אז כן, אז זה. 
    • עלויות - דיברנו. על פיתוח . . . 
    (רן) אז כיום צוות הוא או Cloud או On-prem? או שיש גם צוותים שמעורבים?
    • (עומר) לא, אז כיום כולם משויכים למערכת שלהם.
    • המערכת יכולה להיות או ב-On-premises, או ב-SaaS - ואז זה גם, תחשבו על ה...
    (רן) ובתוך הצוות יש בנאדם של On-prem ובנאדם של SaaS, או גם וגם?
    • (עומר) לא - גם וגם. 
      • כולם יודעים הכל, וזה גם מאוד מפתח אנשים לחשוב בצורות חשיבה שונות.

    34:25 הסוף / אני לא מאמין שאני גר בפתח-תקווה
    (רן) אוקיי. בסדר. אז כמו שרפררנו (Reference), אנחנו לקראת הסוף. עוד כמה מילים אולי על החברה - אמרת שאתם שאתם סדר-גודל של כ-50 מפתחים?
    • (עומר) יש כ-50 מפתחים - מפתחים, מפתחות, DevOps, QA . . .
      • אנחנו כמובן מגייסים . . . 
    (רן) איפה אתם?
    • (עומר) יושבים בפתח תקווה, מעל תחנת רכבת קלה.
      • בתור תל אביבי, אני אגיד שזה לא כזה נורא . . .
    • אז בהחלט החברה גדלה, האתגרים...
    (אורי) זה לא נורא להיות תל אביבי, או לא נורא ל...(רן) לא לא - זה אחלה לוגו . . .
    • (עומר) נשאיר את זה כסימן שאלה - שכל אחד ייקח את זה למקום שיעבוד לו . . . 
    (רן) אני חשבתי על סלוגן לפתח-תקווה - “פתח-תקווה:  זה לא כל כך נורא” . . .  סליחה.
    • (עומר) יצאו דברים יפים מפתח תקווה, נגיד את זה רגע לדיסקליימר. [חוץ מבר-זיק?]
    • אז כן - החברה מגייסת לצוותי פיתוח: Backend, Frontend, DevOps, QA.
      • יש גם תפקידים אחרים, כמובן.
      • וגדלים.
    • המון אתגרים, כי יש יותר משני מוצרים בחברה - ומעל אלף לקוחות כבר.
    (רן) צריך ניסיון כ-Pen-Tester? כאיש Security?
    • (עומר) אז תלוי לאן אתה מגיע - לצוות המחקר, שגם אליו מגייסים, אתה צריך להיות Top-Notch ב-Cyber.
      • כי אנחנו עושים הכל From Scratch.
      • צריך גם לחקור-לאחור, גם לפתח לקדימה.
    • ובעולמות של הפיתוח - אז נתנו פה קצת טעימה: ה-Stack מגוון, עם אתגרי On-prem, אתגרי SaaS, ועוד הרבה דברים טובים לשנה הקרובה, שאמורים להגיע.

    שיהיה המון בהצלחה, עם כל ה-SaaS הזה!בהצלחה. ותודה רבה שבאת.
     האזנה נעימה ותודה רבה לעופר פורר על התמלול!
    37 min
  • 485 Ivrit
    [קישור לקובץ mp3]


    פרק מספר 485 של רברס עם פלטפורמה, שהוקלט ב-27 בנובמבר 2024. אורי ורן מארחים באולפן בכרכור ביום גשום וקר אורח שהגיע עם שורטס וסנדלי-שורש: אולי פרק 500 יהיה כבר כולו מג’ונרט, אבל בינתיים, יאיר ליפשיץ בא לשיחה על (וב) Ivrit.ai. 
    (אורי) תגיד, רן - 485? אנחנו מתקרבים לפרק 500 . . . אולי נעשה עם משהו מיוחד לפרק 500?(רן) אה, יש לי רעיון. שומע? אולי נעשה פרק שכולו מג'ונרט (Generated) ואנחנו לא נדבר, ובעצם יהיו Avatar-ים שידברו בשמנו . . . מה אתה אומר - יעבוד?(אורי) האמת, טוב פרק אחד הפסקה - אבל נראה לך שזה אפשרי, בעברית?(רן) האמת, שמעתי  . . . אתה יודע, יש לא מעט כאלה שעושים את זה באנגלית, נגיד NotebookLM ואחרים, שיודעים לעשות את זה כבר מאוד יפה, באנגלית . . . (אורי) מייתרים אותנו, רן. מייתרים אותנו . . . (רן) אלא - שלנו יש את היתרון של עברית!(אורי) כן . . . (רן) אוקיי וזה היה הרמז - אם לא ניחשתם עד עתה . . .אז אני מניח שללא מעט מכם יצא לכם להכיר מנועי-שפה ולהכיר בכלל תוכן וכלים, שיודעים לעבוד לא רע בשפות זרות  - כנעניות וכו’.אבל בעברית, תמיד היה איזשהו Deficit - סליחה על המושג . . . . ואת המחסור הזה יאיר בא לתקן.
    01:47 יאיר
    (רן) אז יאיר - שוב ברוך הבא, וסליחה על ה-Intro הארוך, אבל היום אנחנו הולכים לדבר על פרויקט קהילתי, שאתה בין המובילים שלו. פרויקט מאוד חשוב ומאוד מאוד מעניין שנקרא Ivrit. פשוט ככה, כמו ששומעים - ככה כותבים. [כמו שאיתמר בן אב”י התכוון לכתוב עברית]הפרויקט הזה שם למטרה שלו לאסוף חומר בעברי , על מנת שהאלגוריתמים יוכלו להתאמן עליו - ועל זה תספר לנו בהמשך.אז ספר לנו קצת עליך, ואז נתחיל לדבר על Ivrit . . .
    • (יאיר) מעולה. קודם כל - הכל נכון. אני חושב שברור מאליו ששום דבר ממה שעשינו לא עובד.
      • נספר על זה עוד מעט . . .
    • לגבי - עבדתי הרבה שנים באינטל, בהתחלה בתור מפתח, אחר כך בתור ראש-צוות.
      • ב-2015 עברתי לסטארטאפ שנמצא כאן, בקיסריה.
        • מתעסק בצ'יפים (Chips) - Leaba Semiconductor, עושים Chip-ים לרשתות.
        • הגעתי שם לנהל את אחד מצוותי התוכנה.
        • עבדתי שם חמש שנים וקצת, כלומר - הגעתי בתור אחד החבר’ה הראשונים, לעשות ארכיטקטורה של הצד של התוכנה [תזמון קוסמי לפרק הקודם - 484 Architect WTF with Shai Yallin and Ron Klein]
          • תוכנה-לחומרה זה תמיד סוג קצת שונה ויש לו את את האתגרים שלו.
        • כשעזבתי שם, כבר ניהלתי חלק די גדול מהארגון הזה - 40 ומשהו איש, ועוד חבר’ה בחו”ל.
    • וזהו, בתחילת 2020 הייתה הקורונה - אשתי הייתה עוד בלימודים שלה, היה זמן מעולה להפסיק לעבוד בכלל . . . 
      • ישבתי עם הילדות בבית, וכל פעם ששמעתי אנשים מתלוננים על זה ש”היום מישהו צריך להישאר עם הילדים”, אמרתי “הכל טוב, אני גם ככה בבית, לא אכפת לי מכלום” . . . .
    • וזהו - ומאז אני עושה בעיקר פרויקטים שלא למטרות רווח.
      • כן עושה הנדסה, כן עובד בתור יועץ - אבל חלק די גדול מהזמן שלי הולך לכל מיני סוגים של Non-Profit.
      • חלק מהם לא טכנולוגיים - Ivrit.ai זה כן פרויקט טכנולוגי, שאנחנו עובדים עליו מ . . . חושב שאמצע 2023, משהו כזה, שנה-וקצת.

    03:55 על Ivrit.ai 
    (רן) אוקיי, אז Ivrit.ai - גגלו את זה, חפשו את זה או שפשוט תקלידו - אז מה זה Ivrit? מה עושים שם?
    • (יאיר) כשהתחלנו . . . 
    (אורי) עברית זו שפה, לא שפת-תכנות . . . שמית.(רן) . . . יש הטוענים כך . . .
    • (יאיר) כשהתחלנו - לפני שנה וקצת, נגיד סוף מאי 2023 - ChatGPT התחיל לתפוס תאוצה.
      • שיחקתי איתו, אמרתי “וואו, זה עובד מדהים!”
      • יש להם מנוע שנקרא Whisper, שעושה בעצם Speech-to-Text, גם עובד מדהים.
        • [וגם מייצר את התמלול הראשוני לפרקים האלה, בערך מאז…]
    • אשתי רופאה, אז אמרתי “טוב, איך נחבר את זה אליה?”
      • שבעצם, ה-AI כבר ייתן המלצות, שהוא יעשה חלק מהעבודה . . . 
    • ודי מהר התברר שהפער הכי גדול הוא שהכל עובד אחלה - עד שאתה מגיע לעברית . . . 
      • זאת אומרת, גם לפני שנה וחצי, להגיד ל-GPT4 “אדוני, הנה Audio - תבין מה . . . “
        • ל-Whisper - “תבין מה אמרו”, ואחר כך - ל-GPT4 - “בוא, תן המלצות”
        • “תן המלצות לאיך לטפל בבן אדם הזה, תסכם את המבחן שהכל . . .”
        • והוא עושה, הוא יודע לעשות את העבודה - עם קצת הנחיות, עושה עבודה מעולה.
    • אבל ברגע שאתה רוצה - “רגע,  אני רוצה להפעיל את זה בארץ!”
      • ויש לנו אינטרס-מובנה שדברים יעבדו כמו שצריך
      • אז הדברים עובדים פחות טוב . . . 
    • לפני שנה וחצי, התחושה שלנו הייתה-שמודלי שפה כמו ChatGPT יצליחו לסגור את הפער בעברית לבד.
    • לעומת זאת, תמלול - כל הקטע של גם דיבור אל המודל וגם זה שהמודל ידבר אליך בחזרה
      • גם ג’ינרוט (Generation )של קול וגם תמלול
      • זו בעיה שהיא מאוד שונה . . . 
      • צריך דוברי-עברית כדי לעבוד עליה - אי אפשר לקחת עכשיו מהנדס באיזושהי גיאוגרפיה אחרת ולהגיד לו “טוב, בוא תעשה Scraping לכל האתרים בעברית” ולעבוד עליה.
      • אם אתה לא דובר את השפה - לא תוכל לתייג עכשיו . . . לא תוכל לקחת, לדוגמא, את הפודקאסט שלנו ולתמלל אותו [שלום…]
    (רן) כלומר, רגע למה צריך תמלול? [רגע, מה? . . . ] - זאת אומרת, למה לא פשוט את האודיו?
    • (יאיר) האודיו זה בעצם ערוץ שמעביר הרבה מידע בזמן קצר [ד”ש למאזינינו ב x2.5].
      • רוב האנשים מדברים הרבה יותר מהר ממה שהם מתקתקים.
      • אז זה הרבה יותר יעיל - ויש המון אנשים שלא ישבו לתקתק במחשב . . .  
      • אפילו אני היום, כשאני עובד עם ChatGPT . . . 
    (רן)  לא, לא, סליחה. השאלה שלי טכנית - למה אתה צריך את האודיו  וגם את התמלול שלו? למה לא מספיק את האודיו, לצורך למידת-מכונה?
    • (יאיר) אז יש סוגים, ש דרכים שונות ללמוד איך לעשות Speech-To-Text.
      • אחת הדרכים האלה נקראת Unsupervised Learning - זאת אומרת, אני לוקח אודיו, בלי טקסט שמצורף אליו, ומנסה לבנות מעל זה מודל שיתמלל, או שיעשה רוב עבודת-התמלול.
      • לדוגמא, אתה יכול - המנוע יכול - בצורה כזו לזהות סוגי-דיבור דומים, לעשות Clustering למילים . . .
      • ובסוף, אתה לוקח עוד קצת תוכן - ואותו אתה מתמלל ידנית.
    • אז בעצם אתה עובד בכמה שלבים
      • יש לדוגמה מנוע של Facebook, של Meta, שנקרא Wav2vec - שזה מה שהוא עושה.
    • המוצר שאנחנו מכירים - או המנוע שאנחנו מכירים שעובד הכי טוב - נקרא Whisper
      • מנוע של OpenAI - באנגלית, עושה עבודה מדהימה.
        • כשאני מדבר איתו, אני אפילו לא בודק האם הוא תמלל אותי נכון או לא - אני פשוט אומר לו “שלח את השאלה”, עובד מעולה.
      •  והוא עובד בצורה שנקראית Weakly Supervised.
      • הם אומרים “תן לנו Data מתומלל” - כלומר, גם את האודיו וגם את התמלול - “אנחנו יודעים שחלק ממנו יהיה זבל - וזה בסדר” . . .
        • נעשה מיצוע על מספיק Content, זה יהיה בסדר.
    • אז אנחנו בעצם רצינו לייצר . . . אמרנו, אנחנו רוצים לפתור חלק אחד ספציפי - נייצר Data-set כזה, מתוך הבנה שלהרבה חברות אין מוטיבציה גדולה ללכת לטפל עכשיו בעברית.
      • אבל אם “תדחף להם את ה-Data” - עם רישיון מתאים ובחינם - הם ייקחו אותו, לא אכפת להם . . .
      • הם פשוט לא רוצים לבזבז על זה זמן או כסף בעצמם.
    (רן) אז ההבדל בין, נגיד, מנועי-שפה לבין מנוע-תמלול כזה, זה שמנועי-שפה יכולים להתאמן בשיטה שהיא Self-Supervised - כלומר, להסתכל על הררים של טקסט ומדי פעם להחביא מילה ולנחש את המילה הבאה וכל זה, והם לא צריכים הרבה Data מתויג - הם צריכים Data “בסדר”. הם צריכים Data נקי, יחסית. זאת אומרת, אם תזרוק לוג'יבריש אז זה לא יעזור לו, אבל כל עוד ה-Data הוא באנגלית - וויקיפידיה וכאלה - הם סבבה עם זה. אבל במנועי-תמלול, אתה אומר שצריך את ה... זאת אומרת, לפחות בשיטה שהזכרת, צריך את המיפוי הזה - ביןה-Audio-stream לבין התמלול שלו - וככה אתה יכול לייצר בעצם למידה ברמה הכי גבוהה.(אורי) תגיד, גרמנית וצרפתית וספרדית - עובדות טוב?
    • (יאיר) עובדות טוב, כן.
    • זאת אומרת, אני לא רוצה להגיד שהן עובדות ברמה של האנגלית . . . 
      • רק כדי לתת איזושהי תחושה למספרים - Whisper עצמו, כש-OpenAI שחררו אותו, הם שחררו גם מאמר ליד.
      • והוא פתוח לגמרי, ה-License שלו פתוח לגמרי - אתה יכול לעשות לו מה שאתה רוצה.
    • אז כש-OpenAI שחררו אותו, שחררו גם מאמר איתו - ויש שם טבלה, שאומרת כמה שעות-תוכן הכניסו מכל שפה.
      • מאנגלית, אם אני זוכר נכון, הכניסו בערך 200 אלף שעות.
      • אני חושב שגרמנית, ספרדית - היו באזור העשרת-אלפים, אולי קצת יותר או קצת פחותץ
      • עברית - היו 680 . . . שאף אחד לא יודע מאיפה הן הגיעו.
      • אז זה ה-Scope.
    • בהתאם לזה, אנגלית עובדת מדהים ב-Whisper . . . אני חושב שהשפות האחרות, הנפוצות - גרמנית, ספרדית  - עובדות טוב.
      • לא מושלם, אבל עובדות טוב מאוד.
    • ועברית . . . איך אומרים? Your mileage may vary - אז זה זה . . . 
    (אורי) אבל זה רק עניין של” חסר תוכן” . . .
    • (יאיר) תלוי את מי אתה שואל . . . יש אנשים שאומרים “עברית היא שונה מכל מה שאנחנו ראינו בינתיים”.
      • אבל התשובה היא שבעיקר חסר תוכן.
    (אורי) אוקיי, זאת אומרת שאם אנחנו נגיע לעשרת-אלפים שעות . . .
    • (יאיר) מתויגות היטב - אז כן.
    (אורי) נהיה טובים “כמו הגרמנים”.
    • (יאיר) יותר יפים - אבל כן.
    (אורי) שזופים . . .
    09:58 מנועים אחרים ומשמעות הפרויקט
    (רן) דרך אגב, הזכרת הרבה את Whisper, אבל לפני אולי שנה, אולי קצת יותר, עשיתי כמה בדיקות - גם הייתי צריך לתמלל מסה של אודיו בעברית. הייתי צריך לתמלל את זה, ובדקתי את Whisper לעומת “החבר של גוגל”, שכחתי איך קוראים לו [?Gemini] . . . ודווקא ההוא - של גוגל - נתן תוצאות קצת יותר טובות.יחד עם זאת, הרבה-הרבה מתחת לתוצאות באנגלית . . . זאת אומרת, באופן ברור. אני חושב שאולי גג הצלחתי להגיע לדיוק של 80% בעברית, בזמן שבאנגלית זה “נושק ל-90 הגבוהים”.
    • (יאיר) ל-Whisper יש יתרונות אחרים - לדוגמא, הוא מפסק, שזה דבר נפלא. פסיקים, נקודות . . . 
    • אבל אני חושב שזה נכון. אנחנו, עד לפני כמה חודשים, ל-AWS יש את Amazon Transcribe, שעד לפני כמה חודשים הם נתנו לנו בראש.
      • עדיין את Whisper הם אוכלים בלי מלח.
      • ואותנו . . . .
      • (רן) בעברית?
      • (יאיר)  . . . הם עשו עבודה משמעותית יותר טובה ממה שאנחנו עושים בעברית - אבל זה כבר לא המצב.
        • אבל כן.
    (רן) אז משמעות הפרויקט זה למעשה לאסוף תוכן-אודיו בעברית - את המיפוי שלו לטקסט בעברית - וגם לאמן את המנוע Transcription?
    • (יאיר) כן. התחלנו מלאסוף את התוכן.
      • הלך יותר מהר ממה שחשבנו, וכן - “עם האוכל, בא התאבון”.
    • ראינו שזה עובד טוב, ואמרנו שגם לא נחכה - וגם לא ברור שיש מישהו לחכות לו . . .
    • עכשיו אנחנו כבר בגרסא השלישית ששחררנו - שעליה כבר יש תוצאות יפות.
      • זאת אומרת, היא On-par עם Amazon לגמרי - כשהיא בחינם.
      • ואני משער שהגרסא הבאה תיהיה יותר טובה . . . 
    (אורי) סתם, מעניין אותי - יש קובץ קול ויש טקסט, יש תמלול וכו’. מי עושה את ה-Syncing? או שהוא יודע להבין את זה לבד?
    • (יאיר) כשאתה אומר...
    (אורי) יש אנשים שמדברים לאט, כמוני, על הפנים - ויש אנשים שמדברים יותר מהר. איך הוא מבין, כאילו, איפה אתה בטקסט?
    • (יאיר) אז אתה שואל מבחינת השלב של ה-Inference או של האימון?
    (אורי) של האימון, לצורך העניין.
    • (יאיר) אז האימון ב-Whisper . . . עכשיו, חשוב להגיד - אני לא מהנדס AI.
      • אני חושב שברוב הדברים אנחנו יכולים לעשות עבודה טובה עם ידע בינוני.
        • הרי ככה, ברוב ההנדסה, אתה לוקח Component שאתה מבין חלק ממנו . . .
    • פרקטית, Whisper עובד במקטעים של 30 שניות
      • אתה אומר לו “אדוני, הנה קטע של עד 30 שניות - הנה הטקסט שלו.
      • הוא לא שואל אותך מה תזמון בפנים.
    (אורי) כן . . . זאת אומרת, זה לא שיכולים להיפתח פערים מאוד גדולים, עם קצבי-דיבור שונים.
    • (יאיר) נכון.
    • זה כן מייצר לך . . . זה כן מעניין, כשאתה מסתכל על איך נראה Inference, על חלונות של מעל 30 שניות ואיך שהם עושים את זה.
      • ויש להם כל מיני אלגוריתמים רגילים, שעושים Stitching
      • זאת אומרת, נריץ 30 שניות - אבל אז נזיז את החלון נגיד ב-15 שניות קדימה וננסה שוב.
      • פרקטית, הוא עובד על 30 שניות.

    13:08 מי עוד שם?
    (רן) אני רוצה עוד מעט להיכנס לפרטים הטכניים, אבל בוא רגע נסיים את ה-Overview על פרויקט.אז אתה אומר מדי פעם “אנחנו” - אז פגשנו את יאיר. מי עוד שם?
    • (יאיר) כן. אז אנחנו התחלנו שלושה חבר'ה - אני; יניר מרמור - שהוא מסטרנט (M.Sc.) במכון ויצמן, במדעי המחשב; [ד”ר] כנרת משגב - שהיא מנהלת יחידה של חקר נתונים בהדסה, בבית החולים.
      • ולפני כמה חודשים, הצטרף אלינו יועד סנפיר, שהוא גם מהנדס עם אינסוף ניסיון.
    • ובין כולנו אנחנו מתכללים
      • א' - הבאה של ה-Dataץ
      • ב’ - כל מיני צדדים של Legal - יש עורך דין, זה עורך הדין אלי גריבאום,.
        • שבגדול מתעסק ב-IP, ושעוזר לנו מאוד.
        • למשל, עזר לנו מראש לבנות את ה-License שלנו, ככה שכל מי שתורם לנו Data - הוא חותם מראש על License מתאים וכו’, שנוכל לשחרר הכל.
      • אבל זה בגדול “אנחנו”.
    (רן) וכולכם בהתנדבות?
    • (יאיר) נכון.
    (רן) וחוץ מכם - יש עוד אנשים שנותנים פה ושם שעות ועוזרים?
    • (יאיר) קודם כל, תמללנו עד היום, בכל מיני צורות כאלו של תמלול-המונים, מעל 300 שעות.
      • בתור Reference, ה-Data-set הכי גדול שהיה לפנינו בעברית, היה של 20-30 שעות.
      • הרבה מזה זה Data-sets של כל מיני אנשים שמקריאים - מקריאים את הברית החדשה או דברים כאלו . . .
    • אז כאן, מאחורי זה, יש כמה מאות מתנדבים שישבו ותמללו משפט-משפט - אז זה המון-המון עבודה.
    (רן) כן. אז קודם כל אני חושב שעפר [הי!], שעושה לנו הרבה מאוד עבודת תמלול, וגם חיבר בינינו למעשה, ישמח לשמוע את זה [אכן], ויכול להיות שגם תוכל להשתמש בתוכן שלנו, אז נשמח אם תעשה את זה.(אורי) על 485 פרקים . . . יש לך שעות.(רן) כן, ומאותו רגע אתה יכול להפיק בעצמך פודקסטים, להשתמש בקול שלי ושל אורי - וזהו . . . כן, באמת -  יש פה את גם האספקט הזה’ או שזה רק תמלול? כלומר, יש פה גם אספקט של Generation, בהמשך?
    • (יאיר) יש . . . היו לנו כמה שיחות מעניינות על זה.
    • יש גופים בארץ, שזה מעניין אותם לא רק לייצר את זה - כאילו, לא רק לעשות Text-to-Speech, אלא גם לעשות Text-to-Speech שיהיה “תקני”.
      • זאת אומרת, שיעמוד באמת בכללים של השפה.
      • זה משהו שרק עכשיו התחלנו להסתכל עליו יותר.
    (אורי) יש לי הרגשה ש...(רן) מאזיננו אבשלום . . . (אורי) כן, זה יקרה “פרויקט אבשלום”.
    • (יאיר) בלי שאני מגיב על זה ישירות, זה . . . אני חושב שזה דברים נפלאים.
      • כי המטרה - מבחינתנו, אחת המטרות הגדולות שלנו מראש, הייתה להגיד “אף אחד לא יעשה את העבודה”.
        • כאילו, לא יעשה את העבודה הזו בתשלום, כי הקהל הוא לא מספיק גדול.
    • אבל אם עושים את זה טוב - גם Speech-to-Text וגם Text-To-Speech - אנחנו “נשפיע על התל”ג”.
      • כי בסוף היום, אם אמא שלי צריכה להתקשר כדי להתנתק מ-HOT, למשל - [היפותטי לחלוטין, למה שמישהו ירצה לעשות דבר כזה?], אם היא הייתה מחוברת אליהם עדיין.
    • והיית רוצה שכשהיא מתקשרת, מיד יענה מישהו בצד השני - גם אם הוא מחשב שכנראה ינתק אותה יותר מהר, אני מקווה - ובשביל זה, אתה צריך גם להבין מה היא אומרת, וגם לענות לה.
      • ושני הכלים האלו, כמו המון פעמים בתוכנה - יש המון דברים שאם תקבל בחינם, אתה תשתמש מיד, ואם לא תקבל בחינם, אתה לא תשתמש בכלל.
      • אז אנחנו...
    (רן) כן, אני חשבתי שתיקח את זה בכיוון אחר: אמא שלך צריכה להתנתק, המשימה נופלת עליך - ולך אין כוח לעשות את זה, אז אתה תפעיל את הרובוט. . . 
    • (יאיר) אותי הם אוהבים יותר  - כשאני מתקשר, מנתקים מיד.

    16:47 אספקטים של חוקיות, סקלרט והתבורי’ס
    (רן) אוקיי, אז דיברת קצת על אספקט של חוקיות וכל זה - אז לצורך העניין, אם אני תורם את הקול שלי, האם אחר כך גם תוכל להשתמש בקול שלי כדי “לייצר רובוט”, נקרא לזה? [ד”ש לפרוייקט רובו-שאול]
    • (יאיר) אז כשניסחנו את הרישיון, היה חשוב לנו להגן, בעצם, על כל הצדדים, שזה אומר - א’ . . .
    (אורי) רן, הקול שלך זה נחשב תרומת-איברים . . . (רן) ברבים, כן.
    • (יאיר) בעצם רצינו לוודא
      • א' - שמי שלוקח את התוכן - והרבה פעמים הוא חברה לא-ישראלית וכל הדברים האלו לא מעניינים אותה - הוא צריך להרגיש מוגן לגמרי.
        • ולכן מה שכתוב, זה היה צד אחד.
      • הצד השני היה שבאמת מי שתורם את זה, לא ידאג שמחר אנחנו נעשה “פעלולים”.
    • מה שקרה אפקטיבית כתוצאה מזה, זה שניסחנו רישיון שכתוב בו
      • א' - מותר, עם ה-Data שאנחנו מנגישים, לאמן מודלי AI בצורה גורפת.
      • מותר להשתמש בהם לכל שימוש חוקי.
        • זאת אומרת, אם לקחת את ה-Data הזה, בנית מודל ועכשיו אתה רוצה למכור אותו - אם אני עשיתי את זה, אתה לא יכול לבוא ולהגיד לי “אבל זה היה ה-Data שלי!”.
        • אלה החיים . . . ברור שם בוודאות שאתה לא תקבל שום פיצוי על זה.
      • זה מצד אחד . . .
    (אורי) בוא נדבר אחר כך על הזכויות של הקול של רן . . .
    • (יאיר) הצד השני הוא שיש שם סעיף אחד שמוחרג, וזה כתוב: “Deep-Fake-ים אסור לעשות”.
      • אנחנו לא רוצים מצב שמישהו יתרום, ובסוף יידפק מזה איכשהו.
    • אז אפשר לעשות את זה - מי שרוצה בכל מקרה לעשות את זה בצורה לא-חוקית, לא היה צריך את הרישיון שלנו.
      • אבל מי שעובר דרך הרישיון, אז זה מוחרג שם.
    (רן) כן. היה סיפור די מפורסם בהוליווד, לפני כשנה, עם שחקנית - שכחתי את שמה - אבל שחקנית מפורסמת, שרצו להשתמש בקול שלה לצורך . . . 
    • (יאיר) Scarlett Johansson עם OpenAI  . . .
    (רן) . . .  Scarlett Johansson, כן - שלצורך אני חושב פרסומת או איזשהו משהו .  . . והיא לא הסכימה. ולמרות זאת הם עשו את זה, אם אני זוכר נכון - והיא תבעה אותם.אז אני מקווה שאני זוכר את הסיפור יפה, אבל זה עניין, אוקיי? זה עניין. זאת אומרת, יש לה קול שמזוהה היטב איתה, ואם מישהו שומע את הקול שלה, זה מייצר איזשהו Creditability, והיא לא תיתן את זה בחינם, ובטח שלא למען  מטרות שהיא לא מאמינה בהן.אז כן, אז יש פה עניין עם Fake-ים - קראת לזה “Deep-Fake”, אבל שימוש של קול באופן עקרוני. אפשר לחשוב גם על יוצרי-פודקאסטים [מישהם ספציפיים?], ש”אוקיי, אז עכשיו כל מה שאני צריך זה לייצר איזשהו טקסט, ולתת לצורך העניין לאמסטרדמסקי או לתבורי להקריא את זה בשבילי!” - ואני לא צריך ממנו “טובות”, כי יש לי כבר את הקול שלו . . . אז יש פה איזשהו עניין.(אורי) לאיזה תבורי אתה מתכוון?(רן) אני לא אפרט . . . יש לפחות שלוש בחירות טובות.אז אז כן, יש פה איזשהו עניין. ברמה הטכנולוגית זה מאוד מעניין, ברמה המשפטית זה כנראה מעניין לא פחות.
    19:45 סקירת מצב עם סימני פיסוק
    (רן) אוקיי, אז דיברת על איזשהו אוסף של שעות שאליהן הגעתם, אז תן לנו רגע איזושהי סקירת מצב: איפה אתם היום ומה המטרה שלכם?
    • (יאיר) אז ככה: יש לנו כמה חזיתות.
    • דבר אחד - אנחנו מאוד מתאמצים ליצור Benchmark ברור לתמלול בעברית.
      • יש Benchmark-ים כלליים לתמלול - ה-Data-set-ים שיש בעברית הם נוראיים לזה.
      • התחלנו ליצור Leader-Board ממש - יש לנו איזשהו עמוד שאתה יכול להיכנס אליו ולהגיד: “הנה סדרה של Benchmark-ים והנה איך כל מנוע עובד עליהם”.
      • זה בעיקר נועד כדי שיבוא מישהו יותר חכם מאיתנו, יוציא מנוע יותר חכם - ובתקווה יגיע למקום הראשון.
    (רן) זאת אומרת, Benchmark זה אוסף של Audios, התמלול הנכון שלהם ואיזושהי בדיקה של עד כמה התמלול שהפקת קרוב ל-”Golden”.
    • (נכון) נכון, ובשביל זה לקחנו מתנדבים - כש”מתנדבים”, במקרה הזה, זו אחותי . . . .
    (רן) . . . התנדבה בעל כורחה . . . .
    • (יאיר) ואמרתי לה “הנה טקסטים מאוד ארוכים - בבקשה תמללי אותם “ברמת האות” - כמה זמן שזה ייקח, זה ייקח”.
    (רן) דרך אגב, הזכרת מקודם “פיסוק” - אז את זה אתם גם עושים?
    • (יאיר) Whisper עושה את זה “באופן טבעי”.
      • אנחנו, בחלק מה-Data-set-ים שלנו יש את זה, ובחלק לא.
    (רן) אבל זו מטרה אצלכם? או שאתם כרגע...
    • (יאיר) זה לא מטרה - אבל בוא נגיד שלשמחתנו זה פשוט עובד. אנחנו . . .
      • חלק מהפעילויות החדשות שאנחנו עושים יגרמו לזה לקרות באופן טבעי, אבל עד היום זו לא הייתה מטרה.
    (רן) דרך אגב, על ניקוד יש מה לדבר, או שזה בכלל סרט אחר?
    • (יאיר) זה סרט אחר.
    • אם אתה מכיר את איך שהוא עובד לעומק, אז הוא די פתור כבר . . . 
      • קודם כל, יש כלים של נקדן.
      • יש מקרים שבהם יש Ambiguity בטקסט והם לא תופסים - זה די פתור . . .
    (רן)  . . . כ-Post-processing. זאת אומרת, כשיש לך את הטקסט, אתה יכול להפעיל עליו נקדן. ברוב המקרים זה יעבוד ואתה לא צריך בהכרח מאודיו. למרות שלפעמים, האודיו יכול לרמוז לך . . . 
    • (יאיר) נכון, אבל לפעמים, בהרבה מהם הדובר ידבר בצורה שבה זה . . . שאם תנקד לפי איך שהוא דיבר, תעשה עבודה לא טובה.
    (רן) כן, כן.
    • (יאיר) יש לנו Data-set-ים - שזו בעצם המטרה הראשונה שהייתה לנו - כמה Data-set-ים גדולים, שמונגשים.
      • אחד זה של אודיו לא מתויג - יש לנו שם כבר הרבה מעבר לעשרת-אלפים שעות.
        • אני חושב שאנחנו כבר מעל חמש-עשרה, אבל לא רוצה לחתום על זה בלי שאני בודק שוב.
    (רן) איזה סוגי אודיו יש? זאת אומרת - הקלטה אולפנית? מה אתם צריכים שם? איזו איכות?
    • (יאיר) רוב מה שיש לנו זה פודקאסטים [קרדיטים]. 
    • היינו שמחים להוסיף לזה תוכן כמו שיחות טלפון, שיחות של מוקדי שירות לקוחות, שיחות של רופאים, עורכי-דין  וכו’.
      • אין לנו המון מזה.
      • אז זה מה שמאוד, היינו שמחים להוסיף.
    (אורי) בטח גם יהיה קשה, מבחינת פרטיות, להביא את זה.
    • (יאיר) נכון. יש דרכים לעקוף את זה לפעמים, שאנחנו התחלנו לעבוד עליהן - וזה בהקלטה.
      • זאת אומרת, תראה: אני לא יכול עכשיו להקליט את השיחה שלי עם מטופל, אבל אני כן יכול לעשות סימולציה לשיחה כזו.
      • ולפעמים, אתה אפילו יכול לכתוב את הטקסט של הסימולציה הזו מראש, ואז לא צריך לתמלל אחר כך . . . .
    (רן) אבל יכול להיות שאתה . . .  שמספיק להשתמש בפודקאסטים בתחום. כאילו, תיקח פודקאסט-”משפטי” - יכול להיות שיהיה לך את ה-Corpus של העולם המשפטיף מאשר...
    • (יאיר) זה נכון, וזו שאלה של . . . בוא נגיד, באופן טבעי יחסית, כמות הפודקאסטים הכי גדולה שתמצא מחוברת לעולם הטכנולוגיה.
      • ולכן, לא סתם כלים כמו ה-Whisper עושים עבודה . . . 
      • כאילו, אם אתה מנסה לדבר איתו על מושגים טכנולוגיים - הוא עושה עבודה מדהימה, הוא תמיד כמעט יפגע.
        • גם מושגים שאני אומר “רגע, אפשר היה לתמלל את זה בהמון דרכים שונות” - אם זה מושג מהעולם “שלנו”, הוא יפגע בו, כמעט תמיד.
    • אבל יש לנו בעצם . . . אז יש לנו המון המון Data שהנגשנו כבר, שהוא Data “גולמי”.
      • וזה - יש אנשים שלקחו אותו והשתמשו אותו בו כבר לכל מיני דברים.
    • יש לנו גרסה שנייה, שזה Data שחתכנו - בעצם, לקחנו את הגולמי, חתכנו אותו לסגמנטים (Segments) הרבה יותר קצרים, של עד 30 שניות, ונתנו לאנשים לתמלל.
      • הנגשנו Data-set כזה - אני חושב שאתמול הנגשתי אחד כזה . . . .
      • יש שם כבר מעל 300 שעות שמוכנות - ועם זה אפשר לאמן מודלים.
      • אז זה דבר שני, ועכשיו…

    23:56 פרויקט ההקלטות החדש 
    (רן) כמה זמן לוקח להפיק את אותן 300 שעות? אז אתה אומר “מקטעים של 30 שניות” - כל אחד צריך לתמלל בצורה די מדוקדקת. כמה עבודה זה?
    • (יאיר) אז די-מדוקדקת . . . קורה שאתה טועה, זה בסדר.
    • אנחנו מחשבים את זה בתור 1 ל-5, כן? 1 ל-4, 1 ל-5.
      • זאת אומרת שעה של תוכן - ייקח לך 5 שעות של עבודה.
    (אורי) שזה בעצם הצוואר בקבוק של כל הסיפור . . .  [הי!]
    • (יאיר) נכון, ובשביל זה התחלנו עכשיו עוד פרויקט, שכל מי שרוצה לעזור בו סופר-מוזמן.
      • פרויקט של הקלטות - שאנחנו בעצם אומרים “תיכנס, תבחר איזה עמוד שאתה רוצה מוויקיפדיה - ותקליט”.
      • אז אתה עם המקלדת - אתה מסמן בכל פעם שאתה עובר לפסקה הבאה, לוחץ רק “Next”
        • ואז אנחנו בעצם מקבלים כאן תוכן שגם אנחנו יודעים מראש מה תמלול שלו, אז לא צריך להתאמץ.
        • וגם הוא מתוזמן - אז אנחנו יכולים אחר כך לקחת “ולהדביק אותו”.
    • אז זה די בהתחלה. יש לנו עכשיו, הוצאנו מזה בינתיים 12 שעות
      • אבל גם זה הרבה יותר קל לעשות . . . 
      • גם זה קצת ממכר
      • וגם כשאתה רוצה לסגור פערי-תוכן בתחום ספציפי - רפואה, משפטים, לא משנה מה - אתה יכול ללכת ולהקליט אותו ישירות.
      • אז זה לא מושלם כמו לקחת שיחה חופשית - אבל זה עושה . . .  אני חושב שזה יעשה את העבודה.
    (אורי) בקרבות-הוויקיפדיה, יכולים כל הזמן לשנות לך את הזה, ואז התמלול לא יצא כמו ההקראה, אם היה רבע שעה בין אחד לשני . . . 
    • (יאיר) בתקווה אנחנו שומרים על Best Engineering Practices, ושומרים גם את הטקסט בצד.
    (אורי) אוקיי. מה לגבי, אתה יודע, העברית היא שפה עתיקה, יחסית. השפה שלמשל תקרא בתנ״ך, או מקורות ישראל אחרים, היא שפה אחרת. זה מעניין?
    • (יאיר) אני חושב שאצלנו ספציפית, זה לנו כרגע פחות קריטי.
    • כי ברור שמה שהכי מעניין אותנו, זה שהעברית היומיומית שלנו תעבוד.
    (אורי) המדוברת.
    • (יאיר) נכון.
    • אבל, יניר, שהוא פריק של כל הדברים האלו, מגיע אלינו מדי פעם עם . . .
      • לדוגמא, עכשיו הוא הגיע עם דיון על ארמית . . . מסתבר שיש חוקרים בעולם, שזה מה שהם עושים.
        • [הנה ד”ר לארמית אם מישהו מחפש]
      • אז ארמית ספציפית - אין לנו הקלטות שלה, אבל, יש גם בעברית…
    (אורי) אין פודקאסטים בארמית? 
    • (יאיר) יכול להיות שיש ואני לא מכיר . . . 
    (אורי) אכדית? שומרית?(רן) צריך להקשיב לליל-הסדר קצת יותר, ותקבל שם לא מעט ארמית.
    • (יאיר) למרות שאתה, בסיכוי מסוים, מתבדח לדעתי, יניר מכיר את התחומים האלו טוב.
      • למרות זאת, יש...
    (אורי) . . . . ומתומלל בכתב יתדות.
    • (יאיר) אנחנו כן רואים גם אצלנו, שמגיעים סוגים שונים של עברית.
      • לדוגמא, הרבה פעמים פונים אלינו עם תוכן שהוא תוכן חרדי, כן?
        • רואים שמגיעים מכל מיני . . . או קווי טלפון, שאתה יכול להתקשר אליהם ולשמוע הרצאות, או הקלטות של רבנים.
      • ואתה רואה מיד, שזה תוכן שונה, שהוא ניב שונה לגמרי של עברית.
      • וחלק מהם - בוא נגיד שלא תמיד אנחנו יודעים איך להנגיש את זה, כי לא תמיד אנחנו יודעים אם המתמללים שלנו ידעו לתמלל את זה בסוף.
      • אבל זה לגמרי קיים.
    (רן) אוקיי. מעניין אתכם גם לשמוע דוברים שונים - למשל ילדים, או מבטאים שונים?
    • (יאיר) זה ממש אחד המקומות שהכי חסרים.
    (אורי) מבטאים יש הרבה . . . 
    • (יאיר) זה אחד המקומות שהכי חסרים לנו, ובצורה שהיא פוליטיקלי-קורקט לגמרי, אני אגיד ש...
      • בוא נגיד, אני חושב שגברים אשכנזים - יש לנו הרבה.
      • (רן) עשירים . . . 
      • (יאיר) נשים אשכנזיות יש פחות.
    • דווקא הפרויקט של ההקלטות נועד לטפל בחלק מזה - 
      • ילדים, ובארץ שלנו: אתיופים, ערבים, עם כל . . . עם מנעד גדול, חרדים.
      • כל הדברים האלו יש קצת יחסית ב-Data-Set-ים רגילים - וזה לא טוב.
    • וכשאתה מקליט, זה לכאורה יותר קל להעשיר את ה-Data-Sets בזה.
    (אורי) יוצאי ברית-המועצות יש לא מעט . . . 
    • (יאיר) נכון.
    (רן) מעניין אם יש פה מקום, סתם ככה זורק רעיון, מקום לשיתוף פעולה משרד החינוך. נגיד, ילדים שלומדים לקרוא, גם יכולים להקריא - וככה אתה גם יכול להרוויח...
    • (יאיר) אני חושב שהקושי שם ספציפית - וזו אחת הבעיות הגדולות עם לעבוד עם ילדים, ואפילו עם מבוגרים לפעמים - זה שאתה לא כל כך רוצה ללכת לנקות את ה-Data אחר כך . . . 
      • זאת אומרת, אם  . . .  אני מסוגל לדמיין יחסית בקלות, שאתה נותן לילד להקליט - ואז הוא מספר כמה בדיחות והולך לעשות משהו אחר.
      • ואתה, אם אתה לא יודע כלום על האיכות של ה-Data שנכנס, זה קצת בעיה.
    • אבל יש לנו כבר ילדים שהתחילו להקליט כל מיני סיפורים.
      • יש כאן כל מיני בעיות . . . 
      • גם ילדים פחות יקליטו תוכן של וויקיפדיה - אתה צריך להביא ספרי ילדים.
        • בשביל זה אתה צריך סופרים שיסכימו לתרום לך . . . 
        • יש לנו אחת שהסכימה, אבל זה לוקח זמן לארגן את הדברים האלה.
    (רן) אוקיי.

    28:47 עירוב של שפות, גדלים של מודלים וחומרה
    (רן) סיפרתי שבעבר עשיתי איזשהו פרויקט של תמלול של תוכן בעברית, ומדי פעם השתרבבה לשם אנגלית, או צרפתית. זאת אומרת, יש לא מעט תכנים שיש להם עירוב של שפות.האם מודלים יודעים להתמודד עם זה כמו שצריך? האם המודל שלכם אמור להתמודד עם זה?
    • (יאיר) זה תלוי במודל.
    • פרקטית, Whisper עושה עבודה די טובה שם, והמודל שלנו “אוכל את זה טוב”.
      • לא מושלם, אבל ברוב המקרים הוא יודע לטפל בזה יפה.
    (רן) שלכם?
    • (יאיר) כן.
    (רן) אבל איך? כל מה שהוא שמע זה רק עברית, אז איך הוא ידע?
    • (יאיר) מבחינת Whisper, בסוף הוא מוציא Token-ים . . . 
    (רן) לא, שלכם. המודל שאותו אתם אימנתם.
    • (יאיר) אנחנו וריאנט (Variant) של Whisper.
      • לקחנו את Whisper ועשינו לו עוד Fine-tunning . . . 
    • זאת אומרת, בסוף היום, Whisper יודע להוציא Token-ים  של כל השפות.
      • אם אתה מראה לו ב-Data של האימון משפטים מעורבים - זה יעשה את העבודה.
    (רן) הבנתי, זה יכול לעבוד. אוקיי, מה גודל Whisper? כמה הוא?
    • (יאיר) Whisper זה 1.5 מיליארד פרמטרים.
    (רן) לא נורא . . . 
    • (יאיר) נכון, לא נורא.
    • לצערנו, הוא לא רץ עדיין - הוא לא רץ על מחשב בלי GPU בצורה סבירה.
      • מה שאומר שאם אין לך Mac אז נדפקת. אבל...
    (רן) אם אין לך Mac, אז יתחממו לך הברכיים . . . 
    • (יאיר) אבל הגרסה הבאה שלו, שזה Whisper-Turbo
      • שאנחנו עוד קצת נאבקים בלאמן אותה, אבל לשמחתי היום, בוא נגיד, בכל השנה הראשונה כמעט, כל דבר שרצינו לעשות אמר להוציא כסף מהכיס.
      • רוצים לאמן מודל? 200 דולר. אלה החיים.
      • ואם אתה לא יודע לאמן - אז כמה Cycel-ים כאלו של זה . . . 
    (אורי) 200 דולר הלכו על קירור . . . 
    • (יאיר) לשמחתי, אין לנו חומרה בבית, אבל עכשיו, נגיד היום ...
    (רן) “200 דולר” זה על GPUs, נגיד מ-AWS או גוגל או...
    • (יאיר) נכון. נגיד היום, התקשר מישהו ואמר לנו “אני אשמח לתת לכם את הכסף, בואו תאמנו לנו מודל חדש”
      • אבל לדוגמא, יש מודל עכשיו נפלא - בתקווה - שהוא איזשהו Variant של Whisper, זה Whisper-Turbo
        • עובד הרבה יותר מהר, הוא מודל קטן בערך פי 2
        • 700-750 מיליון פרמטרים, אני חושב.
        • ואותו כבר אתה יכול להריץ על המחשב שלך, בקצב סביר.
      • (רן) ב-CPU . . . 
        • (יאיר) כן. אז ברגע שנצליח לאמן אותו, אני מקווה ש...
    (רן) כן, רק לפרופורציות - מודלי-שפה קטנים הם בדרך כלל 7 מיליארד, ופה אנחנו מדברים על 1.5 מיליארד, או 750 מיליון, שזה שבריר. ומודלי-השפה “האמיתיים”, הלא-קטנים, הם הרבה יותר גדולים - באיזור ה-40, 70 או 140  מיליארד.
    • (יאיר) 400 . . . 
    (רן) 400, כן. אז סדר גודל הרבה יותר קטן - שזה נחמד. ואתה אומר שה-Fine-Tunning הזה שאתם עושים עולה סדר-גודל של כמה מאות דולרים. כמה זמן לוקח, נגיד להריץ “מאפס”, על כל ה-Data שיש לכם?
    • (יאיר) כן, אז בגדול זה לינארי בכמות של ה-Data.
    • אני חושב שבפעם הקודמת, אימנו עם 180 שעות, משהו כזה.
      • אך זה תלוי בחומרה, כי באמת, אתה יכול לעשות זה יותר מקבילי.
      • אני חושב שזה לקח משהו כמו יומיים . . . יומיים - אבל של חומרה קצת יותר יקרה.
        • זאת אומרת, אני חושב שלקחתי ארבעה GPU-ים, בו-זמנית, כדי...
    (רן) כן, אוקיי.(אורי) אגב, לערבית יש?
    • (יאיר) Whisper יודע לעשות ערבית, אני חושב שלא מדהים.
      • ואם היינו יודעים להשיג Data כזה, אנחנו גם מאוד רוצים. אם היינו יודעים להשיג יותר Data, היינו עושים את  זה כנראה.
    • בערבית, עד כמה שאני מצליח להבין - יניר הוא הבן אדם להסביר את זה בצד של השפה - אבל לערבית יש המון  המון ניבים.
      • וזה משהו שמשפיע.
      • בעברית זה לא המצב.
    • כאילו בערבית, כל מדינה כמעט שתלך - זה ישמע קצת שונה.
    (אורי) פשוט, בכל המדינות מכירים את אביחי אדרעי . . . נראה לי שאתה יכול להקליט אותו, וזה...
    • (יאיר) הבעיה שאתה בצד השני - אתה רוצה לתמלל את זה, אתה רוצה שהם ידברו ותבין.
      • אבל אולי אפשר להכין ממנו מנוע של Text-to-Speech באמת . . . 
    (אורי) כן, אבל אתה יודע - אפשר ליתר אותו . . . .
    32:45 הפרדת דוברים
    (רן) מה לגבי הפרדת-דוברים? איך עושים את זה? כלומר, יש כמה אנשים שמדברים - נגיד שיחה, אחד מדבר על השני, או... (אורי) נגיד שאתה מקליד, מתייג פודקאסט . . . (רן) חס וחלילה, כלומר, אנשים עולים אחד על השני . . .(אורי) כן . . . (רן) . . . . ומפריעים אחד על השני . . . .[בשם צוות המתמללים וההנהלה, באמת המון תודה על זה]
    • (יאיר) יש מספר דרכים, שזה נכנס מבחינתנו לאזורים של “אנחנו קצת מסתכלים עליהם, היינו רוצים להיכנס”
      • אבל כולנו, כאילו, “חנוקים” מאינסוף דברים אחרים, כי הכל לוקח זמן.
      • התחלנו להסתכל על זה קצת עכשיו.
    • בגדול, יש חבילות שעושות את זה ברמות שונות של איכות.
      • יש חבילה אחת שנקראת pyannote - די טובה.
      • יש ל-nVIDIA משהו שנקרא NeMo - חבילה עם המון המון כלים.
        • ויש להם Speaker Diarization בפנים, באיכות מסוימת.
    (רן) לא צריך לדעת השפה? זאת אומרת, פשוט מסתכלים על מסיבת-קוקטייל ומפרידים את הדוברים?
    • (יאיר) אז בהרבה מקרים, הם יודעים להסתדר יחסית בלי השפה.
    • מה שיפה זה שלהרבה מהדברים האלו, אפשר לעשות Fine-Tuning.
      • עכשיו נניח, שיש אנשים שיש להם פודקאסט קבוע [נניח].
      • ונניח הם מקליטים עם Setup של מיקרופונים נפרדים [נניח]
      • ואפשר לקבל גישה ל-Data הנפרד . . . 
    • אז א' - את התמלול מראש נכון לבצע על כל ערוץ בנפרד, ולחסוך את הדיון הזה.
      • ואז אין בכלל עניין של הפרדת-דוברים - הדוברים מופרדים מראש.
    (רן) כן, אבל זה באימון. אני מדבר על בזמן ה-Inference, אם יש לך מספר דוברים . . . .
    • (יאיר) לא, אבל מה שאני אומר זה - בוא ניקח לדוגמה שיחת Zoom, כן?
      • עשינו, אתה ואני - שיחת Zoom - והקלטנו אותה.
      • אתה יכול לבקש מ-Zoom שייתן לך את ה-Data בערוצים נפרדים.
      • (רן) נכון . . . 
      • (יאיר) . . . ואז אין שאלה - אתה תריץ Inference על כל אחד בנפרד, ותקבל את זה מתויג כמו שצריך.
    • הרי כשאתה, לא יודע - חמש שנים אחורה, כשאתה עושה שיחה כזו ב-Zoom, ואתה רואה סימן של “זה הבן-אדם שמדבר”?
      • זה נגזר מזה שהוא יודע מאיזה ערוץ זה מגיע.
      • בגלל זה, אם יש חדר שכולם יושבים בו - אתה לא יודע מי זה.
      • אז זה דבר אחד.
    • אבל יש כלים שעושים דיאריזציה (Diarization) ברמה סבירה - זה פשוט לא מושלם, אנחנו לא שם.
    (רן) כן. אבל יש חשיבות לשפה בעניין הזה, או שזה לגמרי אגנוסטי, וזה, כאילו, “ברמת הסיגנל”?(אורי) נראה לי שזו בעיה שפתורה באנגלית - פתורה גם פה.
    • (יאיר) אני חושב שהיא לא פתורה באנגלית . . . . אבל יש פתרונות סבירים.
      • אני חושב שזה לא מושלם.
      • אני חושב שה-Speech-To-Text עובד יותר טוב - והרבה פעמים זה בגלל שהוא מניח, חלקית, שזה דובר אחד . . . 
    (רן) כן.
    35:11 הוראות שימוש ואיך אפשר לעזור
    (רן) אוקיי, אנחנו כבר ממש לקראת הסיום. וזהו, רק רציתי, ככה, לחדד כמה נקודות.אז אחד, אם אני רוצה להשתמש - אז פשוט ללכת ל-ivrit.ai ולמצוא את מה שאני צריך?
    • (יאיר) אם אתה רוצה להריץ לבד, אז או להיכנס ל-ivrit.ai או להיכנס ל-Hugging Face שלנו, ויש שם הוראות איך להריץ.
    • יש לנו GitHub, שיש בו את 100% מהקוד שלנו, משוחרר בצורה חופשית כמובן.
    • אם אתה רק רוצה לתמלל משהו קטן, אז עד שיגמרו לנו או הקרדיטים ב-AWS או הכסף ממקורות אחרים, יש לנו אתר ב-Home Page שלנו
      • שאתה נכנס, יכול להעלות קובץ של עד שעתיים או משהו כזה.
        • ואנחנו מריצים ומחזירים לך את זה פשוט מתומלל.
    (רן) ואם אני רוצה לעזור לפרויקט - מה אני עושה? יכול להיות מפתח, יכול להיות קריין, יכול להיות אולי דברים אחרים שצריך? . . . (אורי) מוציא את מספר כרטיס האשראי . . . .
    • (יאיר) אז באמת - תמיכה במשאבי-מחשוב זה סופר-עוזר לנו.
    • יש לנו Patreon, שאפשר לתמוך בו ב-ב-5 דולר לחודש, שזה מספיק לנו לכל מיני דברים חשובים, עדיין.
    • לתמלל זה דבר נפלא. כן?
      • זו עבודה - כמו הרבה מהדברים האחרים - יחסית כפוית-טובה, שמאוד עוזרת.
    • והיום ספציפית - להקליט.
      • כלומר, אם אתה מסוגל להגיע, ופשוט להקליט תוכן מוויקיפדיה, או להביא אנשים אחרים שיעשו את זה גם איתך, אז זו דרך בשבילנו לייצר המון תוכן.
    (רן) כן, צריך איזה Mic? מה הדרישה שלכם?
    • (יאיר) כל מיקרופון שיש לך . . . 
    • אם יש לך מחשב עם מיקרופון, או סמארטפון - זה יעבוד.
    (אורי) אם יש מישהו עם משאבי-מחשוב פנויים?
    • (יאיר) נשמח מאוד לקבל . . . כאילו, לקבל גישה.
    (אורי) כמובן שצריך לעמוד באיזה-שהם, כאילו . . .  
    • (יאיר) GPU שיש לו 80Gb זיכרון עושה את העבודה.
      • זה לא משהו בלתי אפשרי, זה לא סופר-סופר יקר,
      • אבל אנחנו Obviously לא קונים אחד כזה הביתה . . . .

    37:15 עד כאן
    (רן) טוב, תודה רבה יאיר! בהצלחה עם המיזם, תודה על התרומה לקהילה.וזהו - שיהיה בהצלחה, ותיצרו קשר עם יאיר, ותשתמשו, ותתרמו.בהצלחה. להתראות.
    • (יאיר) מה תודה? רגע, אין מתנות? אמרנו שיש מתנות . . . .
    (רן) אה, זה בסוף הקלטה, אחרי שעוצרים.(אורי) איזה GPU אמרת שאתה צריך . . . 
    האזנה נעימה ותודה רבה לעופר פורר על התמלול!
    38 min
  • 484 Architect WTF with Shai Yallin and Ron Klein
    [קישור לקובץ mp3]פרק 484 (מספר יפה!) של רברס עם פלטפורמה, שהוקלט ב-20 בנובמבר 2024. אורי ורן מארחים באולפן בכרכור את שי ילין ואת רון קליין לשיחה על מגדלי שן (מבחינה ארכיטקטונית).
    (רן) למעשה, גם שי וגם רון הם שניהם מפתחים / ארכיטקטים מאוד מאוד מנוסים, ובחודשים האחרונים יצא לנו פה ושם לחוג סביב הנושא הזה של איך “נכון” להנדס תוכנה בחברות צעירות ובחברות ותיקות יותר, איך נכון לבנות ארכיטקטורה בשלבים שונים של החיים של החברה - ופחות או יותר על זה אנחנו נדבר היום.ובעיקר נדבר על מהות התפקיד וההבדלים השונים בין תפקידי הארכיטקט במקומות השונים. אבל עוד לא הצגתם את עצמכם . . . [בפרקים הקודמים - 469 Software development in early stage startups with Shai Yallin478 with Haim Yadid, Software in young startups]
    01:05 שי ורון
    (רן) אז קודם כל - ספרו קצת על עצמכם. שי, בבקשה . . .(אורי) בפינה השמאלית, ארכיטקט הניצחון . . . .
    • (שי) האמת שאני לא מגדיר את עצמי כארכיטקט . . . . אני שי, אני עצמאי בתחום הנדסת התוכנה.
      • לפעמים אני מכנה את עצמי “Fractional Principal Engineer”, או “Principal as a Service”.
    • אני מתעסק באיך מהנדסים תוכנה - איך בונים ארגונים ומערכות שקל לעשות להן שינויים, בכל מיני Level-ים של חברות.
      • יש לי לקוחות שהם חברות ממש אחרי Seed או אפילו לפני Seed ויש לי חברות שהן כבר אחרי Round E
        • וכל מיני דברים באמצע ביניהם.
    (רן) וזו לא ההופעה הראשונה שלך פה בפודקאסט . . . . אז מוזמנים לבוא ולהקשיב לפרק הקודם עם שי, שאני כרגע לא זוכר את מספרו [469! הנה שוב - 469 Software development in early stage startups with Shai Yallin, יש שם גם הפניות להרצאות בכנסי רברסים לאורך השנים].רון!
    • (רון) היי, Nice to be here, נתחיל מזה.
    (רן) מאזין מפרק אחד!
    • (רון) אכן! כשעוד היו קצת תקלות עם האודיו וה-Level של הווליום ודברים כאלה . . .
    (אורי) השתפרנו מאז . . . 
    • (רון) בתחום פיתוח התוכנה - אני לא יודע, 20 שנה + בקטע הזה של “לפרנסתי”
      • עוד לפני זה גם היה תחביב.
    • בעשר השנים האחרונות אני בתפקידי Tech Leadership ב-Scope-ים ופורמטים שונים.
      • יצא לי גם להיות Tech Lead ו-Staff Engineer ובTitle-ים ב-Corporates סטייל ב-eBay וב-Semi-Garage Startups - וכל מיני In-Betweens יצא לי גם לעשות בעשור-פלוס האחרון.
    (רן) וכיום אתה . . . .
    • (רון) כיום אני ארכיטקט - “ארכיטקט הפלטפורמה”, אפרופו רברס עם פלטפורמה - בחברת Elementor.
      • זו חברה שמייצרת הרבה מאוד כלים ל-Web Creators, שזה Title מאוד מגוון, Fluid-י כמעט כמו “ארכיטקט” . . . .
      • ובגדול זה אומר שבעבר, כדי לבנות אתר אינטרנט, היינו ככה פונים לאיזה “איש מקצוע” - היום זה הרבה הרבה יותר מורכב.
      • ו-Elementor נותנת מענה להרבה מאוד בעיות או Pain Points בכל ה-Life cycle של Websites
        • מהתכנון עד ההרצה, Growth, Payments - כל הדברים האלה, Elementor נותנת להם מענה.
    (רן) כלומר, רכיבים שאפשר להשתמש בהם בפלטפורמות שונות?
    • (רון) לגמרי.
    (רן) מעולה, אז Web זה כיף . . . .
    • (רון) Web זה Fun-Fun-Fun, זה כן . . . .

    03:55 “ארכיטקט”? !There's No Such Thing As A Gruffalo
    (רן) אז סיפרתם לנו קצת לפני הקלטה, שבעצם הרעיון לפרק הזה התחיל מאיזושהי שיחה, שאתה ושי דיברתם - ואתה אמרת “אני ארכיטקט!” ושי אמר “אין דבר כזה!” . . .  פחות או יותר, אני קצת אולי מתמלל את זה אחרת.אז מה זה בעצם “ארכיטקט”? בוא נשפוך את זה, בוא נפתח את זה כבר עכשיו - מה בתפקיד? מה זה ארכיטקט?האם יש דבר כזה? האם צריך דבר כזה? (אורי) אני לא הייתי שואל מה בתפקיד - אני שואל מה בתפריט? . . . כי מהצד אחד, אתה יכול להגיד “אין דבר כזה?” ומצד שני, זה יכול להיות כל כך הרבה דברים. אז יאללה - המיקרופון שלכם.
    • (רון) אז אני רוצה רגע לתת ככה מענה, תשובה.
    • אני באמת חושב שזה פחות ה-Title ויותר באמת המהות או התפקיד עצמו, או תחומי האחריות.
    • בעיניי, ארכיטקט - יש לו כמה כובעים.
      • הוא, מבחינת ה-Leadership, זה כובע משמעותי - הוא צריך להיות “מגדלור” כזה, של מצוינות טכנית ו-Seniority טכנולוגי.
      • בנוסף לזה, הייתי אומר שהוא גם אמור לא להיות “היחיד” - כלומר, הוא אמור להעלות את הרף, וליצור סביבו את ה-Next Generation של ארכיטקטים או Tech Leaders בארגון, ב-Scope-ים שונים.
      • להיות ה . . .  נקרא לזה “בן אדם שאיתו מתייעצים” ויחד איתו מקבלים החלטות שיש להן משמעות מאוד גדולה Moving Forward.
        • כלומר אי אפשר - או שיהיה מאוד קשה - To roll back, לקחת את הצעד הפוך ולשנות את ההחלטה.
        • וזה בדרך כלל החלטות בתחום הטכני-טכנולוגי, פחות החלטות מוצריות Pre-se.
    (רן) כלומר, אז דיברת על העניין של מצוינות - אבל בוא אני אתריס: האם צריך לעבור דרכך דרך כל Code Review, דרך כל Design Review? לקבל אישורים ו”סטמפה” כדי לשחרר פיצ'רים? 
    • (שי) . . . . ”בשלושה עותקים!” . . . 
    (רן) האם אתה ה-Gatekeeper?
    • (רון) אז שאלה טובה . . . . ולדעתי, יש כאן, כאילו, כמו כל ארכיטקט אני אגיד “זה תלוי . . .. “.
    • אני חושב שדבר ראשון, יש כאן פונקציה מאוד משמעותית של Seniority ו-Engineering Level בארגון.
    • ואני חושב שהשאלה שאתה שואל, אם ירושה לי לנסח אותה בדרך אחרת, זה עד כמה הארגון מעוניין להיות ב-DNA שלו Centralized לעומת Decentralized.
      • כלומר, כמה חופש או מה דרגת-החופש שאנחנו מעוניינים לתת לEngineering Teams או ל-Silo-ים השונים מצד אחד, לעומת . . .
        • מצד אחד בסקלה זה “אוטונומיה מוחלטת” - כל אחד שיחליט על הכלים הטכניים שלו וכו’.
      • ומצד שני, יש לך את מה שכרגע התרסת - הכל עובר ומתנקז דרך איזושהי פונקציה אחת בארגון - “הארכיטקט!”
        • ועל פיו ישק דבר, ומה שהוא מאשר הוא מאשר, ומה שלא - לא.
    • אני לא חושב שזה . . .  לא חושב שיש כאן תשובה אחת נחרצת.
      • אני חושב שזה מאוד מאוד מבטא את ה-DNA הארגוני, בכללי.
    (רן) כן, בסדר. יצא לך, דרך אגב, לעבוד במקום שבו באמת היה ה-DNA כזה ריכוזי, ואתה או אולי מישהו אחר היה בתפקיד הארכיטקט והיה ה-Gatekeeper של כל הפיצ'רים?
    • (רון) כש . . . בלי להגיד שמות, במקום שבו ה-Engineering Level היה יחסית נקרא לזה “פחות מהממוצע”, היה לי סוג של Carte blanche 
      • קיבלתי גיבוי מוחלט - “רון, קח אותנו קדימה, קח אותנו ל-Next Level!”.
      • ובאמת לא הייתה ברירה - עשינו הרבה הכשרות פנימיות, כדי לייצר איזשהו Baseline, שמשם ואילך כבר היה יותר קל לתת לכל צוות לנוע בקצב שלו, לתת את האוטונומיה.
    • אבל בהתחלה, זה היה שלב כזה של “אוקיי, הרבה מאוד דברים עוברים דרכי”
      • הרבה מאוד דברים - נקרא לזה “כל מיני Design Reviews” - עוברים דרכי וכו’.

    08:30 עניין של מורכבות
    (רן) אוקיי, אז דיברנו על העניין הזה של מצוינות ואולי, ככה, “להראות את הדרך” וכל זה.אבל לפעמים גם יש כל מיני משימות שהן “מורכבות” - Debugging מורכב, אולי תכנון של מערכת חדשה, אולי אינטגרציה בין הרבה מערכות אחרות של אותה חברה, אולי יש גם מורכבות-עסקית . . .  זה יכול להיותכל מיני דברים.(אורי) לפעמים יש גם . . . אתה נגעת ב-Debugging, אבל יש “בעיות שרק הארכיטקט יכול לפתור”. כאילו, משהו באיזה Monolith כזה, ש”להכניס את היד ואתה לא יודע איזה נחש ינשך אותך” . . . .
    • (רון)  . . . . או שמה שאתה מוציא הוא . . . אתה חושב שזה מתחיל באיזה “צ'ופצ'יק קטן”, ולאט לאט אתה מגלה כמה זה מתחבר לעוד סבך מאוד גדול של דברים.
    • (שי) אני חושב שאם יורשה לי, יש פה נקודה מאוד מעניינת . . . שבעצם, ה-Role או הצורך הארגוני הוא לא בהכרח ב-Gate-Keeping.
      • אני חושב שGate-Keeping זה “שריר” שצריך להיול מסוגלים להפעיל בנקודות מסוימות, ברגעים מסוימים.
        • כמו שרון אמר - זה לא דיכוטומי.
    • אבל יותר מזה - אני חושב שהארכיטקט זה Variant אחד של איזשהו קונספט יותר רחב, יותר גדול, שבתוכו ישבים גם דברים כמו Principal Engineer או Fellows, כל “הגווארדיה היותר בשלה ומנוסה” שיש בארגון.
      • כי באמת, יש מקומות שזה יכול להיות או “ה-Monolith הישן”, או שהמערכת כל כך גדולה, שקשה, כאילו, To Grok the entire thing.
      • קשה להכניס את כל המערכת לראש של בן אדם אחד, ואז יש צורך שיהיה בארגון אדם אחד - או כמות של אנשים - שהם אלה שרואים את המערכת “ממעוף הציפור”.
      • אבל - שגם יכולה להיות להם יכולת לעשות Zoom-In או Drill-Down איפה שצריך, כדי להיות מסוגלים לדבר גם בשפה שהיא High Level וגם בשפה שהיא Low Level.
        • גם בשפה שהיא כללית - כל המערכת - וגם בשפה של Silo ספציפי, Pod ספציפי, מוצר או קו-מוצרים ספציפי.

    10:52 רגע, מה ההבדל?
    (רן) אז מה, הזכרת “Principal” וכו’ ו-Title-ים אחרים,  ולא יודע אם כולם או כל מי שמקשיב לפודקאסט בהכרח מכיר. זה משהו שמקובל בחברות יותר גדולות, שיש בהן Level-ים שונים ל-ICs. אבל נשאלת השאלה, ככה בגדול - אז מה ההבדל בין Principal או Distinguished או Fellow Engineer כלשהו לבין ארכיטקט? האם יש הבדל ואם כן - מהו או מה הוא צריך להיות, לדעתכם?
    • (רון) אני אקח את זה רגע מהצד שלי - אני חושב שזה Title-ים שונים שמייצרים סולם של Tech Leadership, של IC טכני, פשוט עם Scope - עם היקף-פעילות או “Level של מעוף ציפור” יותר ויותר גבוה.
    • אני חושב שנדרש מתפקידים “נמוכים” יותר להיות הרבה יותר פעילים ב  . . .  נקרא לזה ב”Component Level” או ברמת ה-Design הפנימי של תת-מערכת כזו או אחרת.
      • ככל שעולים בסולם הדרגות של ה-IC, הכוונה היא להוביל - להיות ה-Focal Point הטכני או הארכיטקטוני, אם נרצה.
        • במערכת שהיא כבר יותר Cross-Teams או Cross-Siloes או Whatever.
    • וככל שעולים למעלה; יש כנראה גם יותר ויותר מקום לחזון או לכיוון ההתקדמות הטכני-טכנולוגי של הארגון
      • הנושא הזה של “האם צריך להחליף שפה?” או, לא יודע - “האם אנחנו רוצים להמשיך להשתמש בכלי הטכנולוגי הזה או אנחנו רוצים לבחון אלטרנטיבות אחרות?”
    • וככל שהארגון גדול יותר - ושוב, זה מאוד מאוד פונקציה של גודל הארגון, ה-Dev.
      • ככל שהארגון גדול יותר, ככה יש לדרגות הגבוהות יותר יותר מקום.
    • ויכול להיות שבארגונים קטנים - זה . . . אפרופו, יכול להיות שבארגונים קטנים, נגיד פחות ממאה מפתחים - אולי לא חייבים שם ארכיטקט או משהו כזה.
      • זה יכול להיות באמת איזה משהו שהוא מקביל ל-Principal או משהו דומה, זה לא חייב להיות אחד.
        • והם עושים עבודה מצוינת.
    (רן) כמה אתם אצלכם בארגון, בפיתוח?
    • (רון) ב-Elementor מעל מאה איש בפיתוח, World-wide.
    (רן) אוקיי, יש גם CTO?
    • (רון) יש, יש . . . 
    (רן) ואיך החלוקה ביניכם, בינך ובינו?
    • (רון) הוא באמת נמצא במקום . . . הוא CTO שהוא גם Co-Founder, והוא נמצא במקום הרבה יותר של “לנווט
    את הספינה הגדולה הזאת קדימה”, דברים הרבה יותר Visionary מאשר הקונקרטיזציה שאני אמון עליה.
    13:52 ארכיטקט זה המטבע-קריפטו החדש (ישן)?
    (אורי) אני רוצה להגיד משהו, קצת, לא יודע - “דרסטי” פה: זה מטבע, הדבר הזה שנקרא “ארכיטקט”. זה בעיקר “חי ב-LinkedIn”. זה סוג של Crypto שחי . . . .(רן) . . . היום Crypto הולך טוב . . . (אורי) . . . כן, ה-Bitcoin . . .  “עלה דווקא שער הארכיטקט” . . .  אבל זה סוג של “מטבע וירטואלי”. בכל חברה זה אומר משהו אחר לגמרי, כמו גם ה-Principal וה-Fellow, זה בכל . . ..  זה משהו שאתה יכול לשים ב-LinkedIn שלך, זה לא אומר שום דבר על התפקיד שלך בחברה.בהרבה מקרים משלמים לך במטבע הזה, “סוג של קידום”, אוקיי? זה לא אומר כלום, נגיד, על השכר שלך.ואני יכול להגיד שהרבה פעמים, בשלב מסוים מצאנו את עצמנו שזה מה שאנחנו עושים. אם מישהו לא מתקדם כי אין לו שום סולם קידום בחברה כ-IC - “תיהיה ארכיטקט!”. הוא יכול לכתוב את זה ב-LinkedIn, הכל בסדר.בהרבה חברות, הסולם-קידום היחיד שבעצם יש להן זה בעצם רק בציר ניהולי, אז  ב-IC אומרים “קח את הארכיטקט ותעזוב אותנו בשקט” . . . . הדבר הבאמת נכון לדעתי לעשות, וזה כבר לא משנה אם אתה שם שמות לדברים האלה או שם מספרים של Level-ים, זה פשוט להגדיר בצורה מאוד טובה מה אומר כל Level, מה ה-Expectations שלך מה-Level הזה.עושים את זה כמובן ארגונים גדולים יותר - כשהם מתפנים, לדעתי, לעשות את זה - אבל זה עושה המון סדר בקריירה של ICs.(רן) אורי, אתה זוכר באיזה שלב אתם עשיתם? כמה הייתם אז בארגון לפיתוח כש...(אורי) מאוחר  . . .(רן) כמה? - מאות?(אורי) כמה מאות.(רן) מאות אנשים. . . ואצלכם, רון, יש כבר Leveling כזה?
    • (רון) יש “התהוות” של הגדרת התפקיד שנקראת Tech Lead.
    • בחברות קודמות שעבדתי בהן, זה היה הרבה יותר מסודר.
      • הן כבר עברו את שלב ה-Incubation של הגדרות התפקיד, של ה-Level-ים.
    • ואני חושב ש . . . אני כאילו קצת נותן לך פינג-פונג מהכיוון ההפוך - אין לך איזושהי “רגולציה” שאומרת רוחבית “Principal זה ככה!”
      •  בכל חברה Principal מוגדר X, או Staff Engineer מוגדר ככה, או Tech Lead, או Whatever.
    (אורי) מהבחינה הזאת, אמרנו בגדול לאנשים - “שימו מה שאתם רוצים ב-LinkedIn - מבחינתי אתה Level 6”.
    • (רון) אוקיי, אבל מה שאתה אומר - ואני מאוד מסכים - זה שיש הגדרה . . .
    (אורי) “מבחינתי אתה Level 6 - וזו ההגדרה של ה-Expectations שלי מה-Level”.
    • (רון) אבל למה אנחנו . . .  אוקיי, למה ה-Title חשוב כאן? אני יכול להגדיר את עצמי כ”שרברב תוכנה”. אני פותח סתימות . . .
    (אורי) אגב - זה מה שאתה עושה, כן? אבל... כאילו, כולנו בעולם התוכנה . . . 
    • (רון) לא המצאתי את זה, אני כבר ראיתי את זה.
    (רן) אנחנו קודם מחביאים אותן טוב-טוב, את הסתימות . . . שמים את החומר - ואז פותחים!
    • (רון) כן, בדיוק. אבל מה זה משנה ה-Title?
    (אורי) אז בגלל זה אני אומר - זה לא כל כך משנה. מה שמשנה זה . . . אני רק יכול להגיד, נגיד ספציפית לארכיטקט, שאמנם היה את הסיפור שאני מספר בסוף, הוא עניין של “כאילו Title”, אבל בנקודה מסוימת, אנחנו רצינו להתחיל גילדות . . . . [הנה, כאן - 367 Guilds at Outbrain]
    • (רון) או, הנה - שי נדלק . . . 
    (אורי) כן, כן . . . ובעצם אמרנו שאנחנו מחפשים מישהו שיוביל את הדבר הזה שנקרא “גילדות”. היינו . . .  בשלב הזה, עזב ארכיטקט שהיה לנו - ולא חיפשנו ארכיטקט, אבל חיפשנו מישהו שיוביל גילדה. וספציפית, אותו בן אדם שרצינו שהוא יוביל את הגילדה אמר לנו “סבבה - אבל אני גם רוצה להיות ארכיטקט”.תכל’ס אמרנו לו “סבבה” - והרווחנו את שניהם באמת ביחד.וזה יצא מאוד מאוד טוב שמי שנגיד “קובע את הסטנדרטים” של הארכיטקטורה ושל איך שהקומפונננטות (Components) מדברות אחד עם השני ובאיזה פרוטוקולים - הוא גם זה שמצד אחד דואג שהתשתית תיבנה לזה, ומצד שני גם מלמד את האנשים איך זה עובד ואיך צריך לעבוד - והגילדה היא בעצם “הזרוע החינוכית” של הארכיטקט. וזה יצא פגז.
    19:45 ה-Title וחותם המלך
    • (שי) זה מהמם, זה מהמם . . . אני רוצה להתייחס רגע לסיפור של Title. Title, זה בעיניי זה לא-“לא חשוב”. מכמה סיבות.
      • הראשונה היא שאוקיי - אנחנו יודעים שה-Title הוא Meaningless וגם ה-Founder-ים יודעים שה-Title הוא Meaningless.
      • אבל כל מיני מנהלי-ביניים, שלא בהכרח מכירים אותי, ואני בא ואני אומר להם “חבר'ה תקשיבו - הרעיון שלכם למוצר, הוא יכול לעבוד ככה ב-Micro, בתוך המוצר הניסיוני הזה שאתם עכשיו מריצים ב-Pod שלכם”
        • “אבל אתם חייבים לחשוב גם על שאר הארגון” - על איך “האדוות” שאתם יוצרים ישפיעו ויפגעו במוצרים אחרים, ב-Pod-ים אחרים.
      • ואם זה מגיע מתוך IC שאין לו Title - זה יכול להיתפש אחרת, מאשר אם זה מגיע מתוך IC שיש לו Title שנשמע יותר “מפוצץ”.
      • אני לא אוהב את זה, זה לא כאילו . . .  זה לא “כיף לי” שזה המצב - אבל בהרבה מקומות, זה המצב.
    • אז כדי שיקחו אותך ברצינות, כדמות שיש לה “השפעה בלי סמכות”, לפעמים כן צריך לתת - לא בהכרח סמכות ניהולית “עם שיניים”, אבל כן איזשהו Title-ון כזה או משהו.
      • שעוזר לאנשים שעדיין לא מבינים בדיוק מי אתה בתוך הארגון - אולי כי הם חדשים, אולי כי לא אכפת להם . . .
    (אורי) או שהארגון הוא מאוד גדול - והקשרים שאתה צריך לייצר או ה-Interface-ים שאתה צריך לייצר, הם מעבר לרמת ההיכרות האישית. כי אני מכיר את רון, אני יודע שהוא “אייס”, בסדר? ושיש לו פה . . . “הוא כתב חצי מהמערכת”. אז כאילו, ברגע שהארגון גדול מעבר לזה - יכול להיות שאתה צריך לבוא גם עם איזשהו Title. אני לא יודע, אתה [רן] עבדת ב-Google - זה היה שם ככה?(רן) קודם כל, ה-Google שבה עבדתי וה-Google של היום הן כנראה מאוד מאוד שונות . . .(אורי) לא, אבל גם ה-Google שבה עבדת הייתה כבר גדולה, עם Interface-ים . . .(רן) הבת שלי, שנולדה כשהייתי שם - היום היא בת 16 . . . אז עבר הרבה זמן. אבל כן, ללא ספק - כמעט בכל חברה גדולה, במיוחד שזה ככה, “Across the Ocean” ובאנגלית וכל זה, כן, יש - הTitle עוזר. זאת אומרת, תמיד יש אנומליות, אבל זה לגמרי יכול לעזור. זה קצת מזכיר לי שבימי-הביניים היית מסתובב עם “החותמת של המלך” - אף אחד לא היה מכיר אותך, אבל אם היית מציג את החותמת של המלך, אז אוקיי, סבבה, “הבנו מי שמך”. אתה לא  בהכרח את הבן אדם הכי טוב, אתה לא בהכרח הכי חכם - אבל מישהו סומך עליך וזה המלך, וזה בסדר, אנחנו צריכים לעשות מה שתגיד,אבל אורי - הזכרת מקודם משהו מעניין: אמרת שאותו בן אדם, שהוא היה ארכיטקט טוב והבין את הטכנולוגיה מצוין, הוא גם ידע לארגן את האנשים, לארגן גילדות, שזה תפקיד לגמרי של הובלה, אבל אנושית. זאת אומרת, אולי יש פה גם צד טכנולוגי, אבל זה מישהו שצריך להלהיב את האנשים, להוביל אותם, לשכנע אותם וכל זה. ולפעמים זה Skill קצת שונה . . . אם יש לך מזל, יש לך את שניהם באותו בן אדם, אבל לפעמים זה לא.זה לא אותו דבר, זאת אומרת - אותו אחד שיודע לעשות Low-Level Debugging או High-Level Architecture זה לא בהכרח אותו אחד שיסחוב אחריו אנשים לתוך גילדות ולשינוי של מבנה וכל זה . . .(אורי) אז אחד הדברים שבנינו, כשבנינו את ה-Leveling של ה-ICs, אז אחד הקריטריונים שהולכים ותופסים יותר  מקום ככל שאתה עולה ב-Level, זה היכולת-הובלה שלך - היכולת השפעה שלך על אנשים.
    • (שי) אבל זה גם בדיוק מה שאמרתי קודם לגבי ה-ICs, מבחינת Level-ים בתוך ארגון.
      • הקריטריונים - מה שאתה אומר ה-Expectations, “הציפיות המוגדרות היטב” - מתייחסות גם להיקף של  הפרויקטים שהבן אדם אמור להוביל.
      • הם יכולים להיות פרויקטים ברמת . . . לא יודע, 
        • “שני צוותים ומעלה” זה, לא יודע, “זה Level X”
        • “להוביל לפרויקטים של, לא יודע, חמישה צוותים, או משהו כזה, או שני Silo-ים, זה Level Y”.
      • זה בדיוק זה.
    • אני לא מצליח כל כך להבין, איפה הגילדה נכנסת כאן - בקטע הזה של Scope הובלת פרויקטים.
      • כלומר, אם אנחנו מדברים על Expectations, נגיד מארכיטקט - אז בעיניי, זו נקודה מאוד משמעותית, של מה היקף הפרויקטים, ברמה טכנית, שהבן אדם יכול לקחת על הכתפיים שלו.
    (אורי) אז אני מבדיל בין שני דברים - כשאתה מוביל הובלה טכנית של פרויקט, חלק ממה שמצופה ממך להוביל זה ה-What: זאת אומרת, “מה תעשו כדי שהפרויקט יקרה?”, 
    • (שי) אוקיי . . .
    (אורי) המקום של גילדה, הוא מקום של How? - מה הסטנדרטים שאנחנו מיישרים בארגון, בשביל שהארכיטקטורה  מסויימת או שקומפוננטות (Components) - ברמת הארגון - יוכלו לדבר אחת עם השניה, “עושים את זה ככה”.
    • (שי) אני רוצה לתת דוגמה לעניין הזה. יש לי לקוח - אני לא אנקוב בשמו - אבל לקוח שמאוד שם בפוקוס את העצמאות של ה-Pod-ים.
      • חברה בשלה כבר - יש להם הרבה שנים, מצאו את ה-Product-Market Fit שלהם, הם גדלו לאט ובביטחון
        • אבל הם יצרו מספר לא קטן של Pod-ים, שכל אחד עובד לבד - בלי בכלל להתייחס למה ש-Pod-ים אחרים עושים.
      • וזה עבד להם מעולה - כשהם היו קטנים. 
    • אבל ככל שהם גדלו, הצורך ב”משהו מרכזי” נהיה יותר ויותר ויותר ניכר - ובאמת בשנה האחרונה, יחד איתם, התחלנו לבנות להם את הקונספט של גילדת Engineering,
    • ושם היה ניכר שיש באמת צורך בשתי הפונקציות - ובאמת שתי הפונקציות האלה יכולות להיות באותם אנשים, או באנשים שונים..
      • מצד אחד, הבן אדם שיגיד “לא! אנחנו לא נייצר “God Object” עם מאה שדות, ונשים אותו ב-Mongo”.
        • “אנחנו נתחיל לנסות לייצר הפרדה ל-Domain-ים”.
      • ומצד שני...
    • (רן) ה”שלילי על שלילי” זה בסדר, נכון? “God Object” ו-”Mongo” זה בסדר . . .
      • (שי) אני חושב שאם תשאל את העובדים של אותה חברה, הם יגידו לך שלא כל כך כיף להם להתעסק עם ה-God Object” הזה.
      • ומצד שני יש צורך לקחת את “הציוויים האלה של המלך” - ולחלחל אותם לשטח.
        • עכשיו, אתה יכול לחלחל את זה בציווי - ואתה יכול לחלחל את זה גם בשכנוע ולימוד.
        • וגילדה היא פונקציה בארגון, שעוזרת לחלחל דברים - לא בכוח אלא באמת בהובלה, בהשפעה, בפסיליטציה (Facilitation) ולא ב-Prevention.
    • (רן) כן, סוג של “הובלה ללא סמכות” - למרות שכן יש את הסמכות, אוקיי? “קורטוב של סמכות”.
      • (שי) בדיוק, בדיוק - הסמכות היא “נעלמת” כזה, “היא שם והיא לא שם”.
    (רן) כן. זאת אומרת, זה לא מנהל “Line Manager” מה שנקרא, לא מנהל ישיר. כן, אתה לא זה שהולך לקבוע את המשכורות של כל העובדים באותה גילדה, אתה לא הולך לפטר או לגייס - אבל כן יש איזושהי סמכות. היא קצת  Implicit, היא שונה בכל חברה, אבל בעצם זה ששם לך את ה-Title של Principal, מנהל גילדה, ארכיטקט או Whatever, נתנו לך איזשהו קרדיט מהנהלה, אוקיי? ויש איזושהי סמכות שהיא לא לגמרי מוגדרת, נכון? אבל זה לא אפס.
    • (שי) I beg to defer, מה שנקרא . . .  לדעתי, נקרא לזה הפונקציה הזאת של מנהל או מוביל של הגילדה - הוא Facilitator.
      • הוא מישהו שיודע לתפעל ולארגן קבוצה כנראה די קטנה של אנשים, או שיש שם איזושהי תחלופה, “מילואים”, לא יודע . . . 
        • כל ארגון בסוף והגילדה או הגדרת-הגילדה שלו.
      • ואני לא בטוח שזה אותו Skill-set. סליחה - זה לא בהכרח אותו Skill-set.
      • (רן) זה לא אותו Skill-set, זה מה שאתה רוצה לומר. אל תתבייש . . . 
    • (שי) זה לא אותו Skill-set, לדעתי, שיש לארכיטקט,
      • אחד הדברים שהארכיטקט אמור לדעתי לדעת לעשות זה גם לדבר עם אנשים שהם לא טכניים
        •  ולתווך להם את ארגון הפיתוח
        • ולכן הוא סוג של גם “פונה כלפי חוץ”.
      • נגיד, אני יכול לשבת עם צוות ה-Billing ולהסביר לו איך לדעתי כדאי לעשות את, לא יודע . .  את צורת ה-Payments וה-Billing שאנחנו עושים בארגון, במוצרים שלנו.
      • ולעבוד עם אנשי-מוצר, כדי להבין האם המידול שלהם או האם ה-Business - איך אנחנו יכולים למדל את זה טוב יותר ל-Domain-ים אצלנו ומה יהיו החלטות קשות יותר וקשות פחות.
      • ואני צריך לפעמים גם לדבר עם CX, עם Customer Experience Persons, כדי לברר טוב יותר איזושהי בעיה.
      • כל אלה - אני לא רואה אותם חיים באותו Facilitator, באותו Guild-Manager.
      • ואני חושב שזה ממש סמכויות שונות. 
    • אגב, אני חושב שיש לארכיטקט סמכות, זה כמו שאתה... “הקורטוב סמכות” הזה - הוא חל גם על הארכיטקט, סוג-של.
      • אם בסוף אני לא מצליח לשכנע את, לא יודע, את ה-Product Manager שאנחנו עושים כאן טעות גדולה, אז אני צריך למעשה להפעיל את המנהל שלי - שיתחיל להתקוטט עם המנהל שלו או משהו כזה. 
      • בסוף יש לי את - אפרופו “חותם המלך” - יש לי את “חותם המלך”, לפחות של המנהל הישיר שלי.
      • אז לא... בעיניי זה ממש לא אותו הדבר.
    • [זוהר בדיוק דיבר על זה במוצרלה - (Mozzarella - Organizational Politics 101 (feat. Zohar Sacks]

    30:00 שובו של (חותם) המלך וה-Fractal שממשיך פנימה
    (אורי) אני חושב שפה זה ממש עניין תרבותי, כי במקום שהארגון צריך להיות מאוד גדול ומאוד סקלבילי (Scalable), אתה מתחיל לחלק ל-Domain-ים גם את הארגון. ובסוף, לכל Domain יש את ההתמחות שלו, שהייתי מאוד מעדיף שצוות שמתמחה ב-Domain X יעבוד עם צוות ה-Customer Success או ה-Business ב-Domain X ישירות - בלי להצטרך את “חותם המלך” בסיפור הזה.ואני ממש מעדיף - ואני גם מגדל את האנשים הרלוונטיים בתוך הצוות הזה - כדי שהם יוכלו לעשות את זה.עכשיו, זה בסדר שהם יכולים לעשות את זה - אבל כדי שלא יווצרו תת-Domain-ים שפועלים אחרת לגמרי, כן צריך את אותו בן אדם שייישר את ה-How - לא את ה-What, את ה-How. בסדר? What? - תעבדו ישירות. קצרו תהליכים. קצרו מעגלים . . . .
    • (שי) רגע, שנייה - וכשאתה מקצר את התהליכים האלה, סבבה. הלוואי. 
      • הלוואי ולכל מתכנת או מתכנתת יהיה את ה-Drive הזה.
    (אורי) אנחנו לא מדברים על מתכנתת בארגון גדול - אנחנו מדברים כבר על תת-ארגון, קבוצה או צוות.
    • (שי) סבבה, אוקיי, מקסים - יצרת את ה-Silo עם הדינמיקה שלו.
    • לפעמים בכל זאת, אחרי שבררנו מה שבררנו, צריך לחשוב האם אנחנו רוצים למדל את זה כך או אחרת.
    (אורי) הם אמורים לדעת לעשות את זה לבד, כי הארכיטקט נותן להם את זה ב-Push, בחינוך.
    • (שי) אז רגע, אז שנייה . . .
    • (רון) אני טוען שזה פרקטלי (Fractal), כי בתוך Silo צריך להיות Tech-Lead
      • איזשהו Level 3 - 4, לא יודע, תלוי בארגון.
      • מישהו שהוא מספיק בכיר או מישהי מספיק בכירה, עם מספיק סמכות וניסיון והשפעה ו-Gravitas, בשביל להיות מסוגלים להשפיע אל מחוץ ל-Silo, מחוץ לפוד.
      • אבל היא גם צריכה להיות בחניכה על ידי אנשים שהם ב-Level-ים יותר גבוהים ממנה - שנמצאים בתת-ארגון שמכיל את תת-הארגון שהיא נמצאת בו . . . 
    • וככה אנחנו הולכים פרקטלית (Fractal) למעלה ולמעלה, עד שאנחנו מגיעים לאיזה CTO או לאיזה Chief Architect או לאיזה Guild Leader.
      • ובאמת, השמות משתנים מארגון לארגון, ולפעמים בארגון אחד מי שקוראים לו “גילדה”, בארגון אחר זה יקרה “ארכיטקט” - למרות שהוא עושה בדיוק אותו הדבר.
      • ולפעמים לא . . .
    (רן) ה-Fractal הזה, שי, ממשיך פנימה - זאת אומרת, בתוך אותו בן אדם: לפעמים אני הארכיטקט-שבי, לפעמים אני המנהל-שבי, לפעמים אני המקודד-שבי. [שירה].
    33:03 דייג - אוהב דגים?
    (רן) אבל בואו רגע - לא נגענו פה באיזושהי נקודה רגישה, שאותי תמיד סיקרנה: ארכיטקט מקודד? כלומר, צריך לדעת לצייר, נכון? צריך לדעת לכתוב . . .
    • (רון). . .  את המלבנים והחיצים, זה ממש טוב . . . 
    (רן) . . . המלבנים והחיצים, כן, Sequence diagrams, דברים כאלה - חייבים, חייבים! את הדמויות של ה-User, לצייר כזה יפה יפה, עם רגליים ישרות . . .  וצריך, כנראה, לדעת לכתוב איזשהו Spec טכני וזה.אבל אתה מקודד? או - ארכיטקטים מקודדים, למיטב ידיעתך?
    • (רון) אני חושב - לדעתי, זה שוב, זה מאוד משתנה לפי ה-DNA הארגוני.
      • יש ארגונים שיגידו “בוודאי!” ויש ארגונים שיגידו “עזוב אותך, יש דברים יותר חשובים שהיינו רוצים שתעשה”.
    • ואני נמצא במקום שבו אני מקודד להנאתי, ככה “בפנאי” - אז זה לא כזה.
      • כאילו, הכושר נשמר מצד אחד
      • ומצד שני, כשצריך לפתור בעיית עומק - אפרופו, מה שתיארת קודם, כששולחים, “כשמכניסים את היד פנימה לקישקעס, ומנסים להבין מה קרה”
        • כאן, לדעתי, נמדדת היכולת של כל הניסיון שצברתי עם הזמן.
      • זה לאו דווקא הקידוד - זה הרבה יותר לשאול את השאלות הנכונות, לרדת מה-High Level, “מהמלבנים והחיצים”
        • לרדת ולעשות את ה-Drill-Down לתוך הקוד, לתוך הפונקציות עצמן, ולהבין.
    • כאילו, התנודתיות הזאת, מרזולוציה גסה לרזולוציה עדינה - זה, לדעתי, אחד ה-Added Value שהארכיטקט אמור להביא איתו.
      • לא משנה אם זה כולל לכתוב את הקוד של הפיצ'רים הבאים או לא.
    • וזה, שוב - זה קצת DNA, זה קצת מבטא את ה-DNA הארגוני.
      • הייתי גם . .  “טעמתי מזה ומזה”.
    • (שי) אני רוצה להגיד שאני מאוד מסכים עם כל מה שרון אומר - ועם זאת . . .
    • (רון) . . . לא יכולת אולי לעצור קודם? . . . 
    • (שי) . . . מאוד חשוב שהארכיטקט . . .  שלא יהיו ארכיטקטים שלא כותבים קוד.
      • כאילו, זה לא מספיק בעיניי לכתוב קוד כ-Hobby, בצד - זה צריך להיות לכתוב קוד בתוך המוצר.
    • כי אם אתה, כארכיטקט, מייצר כל מיני סטנדרטים ועקרונות, ומכתיב דברים, ועושה ולפעמים גם עוצר דברים - ולא חווה את חוויית-המפתח בתוך המערכות שבסוף אתה בונה, אני מרגיש שאתה עלול לפספס משהו מאוד מאוד חשוב.
    • (רון) אני מסכים איתך . . .  אני מסכים איתך.
    (רן) אבל . . .
    • (רון) לא, אני פשוט חושב שזה . . . אבל - זו שאלה של מינון.
      • אני בעד פעם ברבעון, או לכל או יותר פעם במחצית, להיכנס, להיות סוג של Shadow או לחבור לאיזשהו צוות ברמת פיצ'ר.
        • לכתוב משהו, לראות שזה מגיע ל-Production, לקחת את ה...
      • (רן) אתה תגיד לעצמך “מי הדביל הזה שהכתיב את ה-Spec הזה?! אה, זה אני . . .”
      • (רון) אה, זה אני . . . מה, זה הסטנדרט?
      • (רן) . . . כן, סוג של Eat your own Dog food, למפתחים.
    • (רון) כן, אבל רציתי להגיד משהו עוד קודם - בעיניי כל הנושא הזה של הסטנדרטיזציה זה באמת אחד התוצרים של הארכיטקט,
      • ואנחנו, לדעתי, כל הזמן בשיחה, תסלחו לי - מדברים על איזשהו ארגון פיתוח על גבול האוטופי . . .
      • של מהנדסים ומהנדסות מאוד מוכשרים, שאפשר לתת להם את כל האוטונומיה שבעולם
        • והם יכולים לרוץ קדימה כמה שהם רק רוצים, והשמיים הם הגבול.
        • המציאות היא לא כזאת.
    (רן) זאת אומרת, לפעמים צריך “ללכת אחורה ולדחוף את האלה עם האלונקה” . . . . אלה שקשה להם, אלה שנשארים מאחור.
    • (רון) כן, ולמפות . . . . בדרך כלל, אחד הדברים שאני עושה - אני ממפה את הפערים של ה-Engineering Skills
      • של ידע, לפעמים, “טהור”.
      • וזה חלק מהתפקיד.
    • ועד אז - עד שהארגון יהיה “מצוין" - כן, יש מקום ל-Centralism.
    • אתה דיברת קודם ככה על ה... אמרת “משהו מרכזי” . . . 
    (רן) כן, אבל זה קצת נבואה שמגשימה את עצמה. זאת אומרת, אתה אומר “אה, הם חדשים, אז אני אעזור להם” - אז אתה לא נותן להם הזדמנות להתחזק. זאת אומרת, אתם לא... אין להם את ההזדמנות לטעות בעצמם וללמוד בעצמם וככה להשתפר.
    • (רון) זה מאוד תלוי כמה כבר יש לך חוב טכני עמוק להתמודד איתו, ולפעמים צריכים קצת “פעולות רדיקליות".
      • ולפעמים, כמו שאתה אומר, זה... אורי, אתה התייחסת לזה שזה חלק מ”החינוך העקבי והמתמיד”.
      • זה מתחיל כאילו, To Pay Off, אפשר להתחיל “לקטוף את הפירות”
      • ונדרשת לזה הרבה סבלנות.
    • (רון) אבל עד אז, אני שוב אומר - ולא כל ארגון הוא בכלל רוצה לקבל את החינוך הזה, זה גם איזשהו DNA, או איזושהי תרבות ארגונית שהארגון . . .
      • שלא כל ארגונים - יש להם את הראש לזה.
    (אורי) לכל ארגון יש “מערכת חיסונית” לשינויים  . . . 
    • (רון) תכל’ס . . . 
    (אורי) אז כאילו, אין מה לעשות. צריך לפעמים...
    • (רון) אבל לא כל ארגון - בכלל יש לו אותה “שאיפה למצוינות טכנית”, שאנחנו לדעתי, בשיחה הזאת, איפשהו  מניחים שהיא קיימת by default.
      • ו”החינוך” הזה שאתה מתאר - לא תמיד אתה מוצא לו את הפרטנרים.
        • ואז זה קצת “לחצוב את הדרך” ולעשות צעדים מאוד קטנים.
        • וליצור את הדינמיקה שתאפשר את זה.
      • אבל לא תמיד יש לך Stakeholders מספיק בכירים בארגון, שבכלל “קונים את הסחורה” הזו.
    • ולכן, אני חושב שהדיבור - גם על גילדה, שזה רעיונית . . . אני מאוד מתחבר לזה - אבל היא מתאימה לדעתי לארגון שהוא יותר בשל...
    (אורי) . . . או שמצוינות טכנולוגית זה חלק מה-DNA שלו.
    • (רון) כן, כן - ואני לא חושב שזה “פתרון קסם” לכל ארגון.
    • ויש ארגונים שירצו לפחות להתחיל עם דמויות
      • לאו-דווקא “ארכיטקט”, לא משנה איך נקרא לזה ב-Title, אמרנו “זילות ה-Title”  . . . 
      • לא משנה איך נקרא לזה - יש ארגונים שמבינים שבתור התחלה, צריך ליצור כאן פונקציות “בכירות טכנית”.
        • עם אימפקט של  . . .  סוג של “צריך להקשיב להן”.
      • ואחר כך, Hopefully, הם יגיעו כבר לאיזשהו מקום יותר טוב.

    39:54 מבוא לחוויית הפיתוח(אורי) רציתי רק להוסיף עוד משהו מהניסיון שלנו: אחרי שנהיה כזה “ארכיטקט" - שהוא גם ראש גילדה, שהוא אחראי על ה-Practices וכו’ - אחרי זה קורה עוד דבר די מגניב, אם אתה נותן עוד יעד - ליצור אוטומציות. כי מפתחים, בינינו, זה טיפוס עצלן . . .  כשאתה מכניס Practices, הם בדרך כלל יבואו עם עוד עבודה, נכון? אז חלק ממה ש...(רן) והעבודה זה הדבר הזה שמונע ממך ללכת הביתה . . .(אורי) בדיוק.(רון) חוסם אותך ביציאה . . . (אורי) כן, או סתם מלשחק FIFA . . . אצלנו, קראנו לזה הצוות של ה-DevX, ה-Developer Experience - הוא פשוט לוקח את כל הדברים שאפשר לעשות להם אוטומציה, ומכניס אותם לתוך התשתיות ולתוך תהליכי העבודה, ומייצר פשוט סטנדרטיזציה הרבה יותר טובה לתהליך.
    • (רון) וכמה ארגונים אתה מכיר, שמחזיקים את הפונקציה הזאת, של Developer Experience, של הצוות DevX הזה? אני מכיר מעט מאוד . . . 
      • ואני לא בטוח בכלל שזה... אני לא יודע לתת לכם אחוזים, אבל זה שוב - “הלוואי”.
      • הלוואי ובכל ארגון הייתה את הראייה הבוגרת והבשלה הזו.
    • יצא לי מספיק פעמים בחיים לראות ארגונים וגם לדבר עם אנשים - אני עושה קצת Mentorships, ככה כחלק מהדרך.
      • ואני שומע הרבה מאוד אנשים שמדברים איתי, ולמעשה - תכל’ס, אני מזקק את זה ואומר “חבר'ה, זה לא ארגון פיתוח שעשה מצוינות כערך”
      • ועכשיו אנחנו צריכים להבין איך אנחנו מתקדמים ואיך מתפתחים בכל זאת שם.
      • אוקיי? כאילו זה בסוף, לא כזה פשוט החיים בחוץ. It’s complicated. 


    42:13 לתת בהם סימנים ותיאום ציפיות
    (רן) אוקיי, אולי שאלה אחרונה לסיום - נניח שאני מנכ״ל או CTO או VP R&D של איזושהי חברה, ואני קם בבוקר  ושואל את עצמי “רגע, רגע, אין לי ארכיטקט! איך זה יכול להיות שאין לי ארכיטקט?! האם אני צריך אחד כזה?”אז מה הם הסימנים, לדעתכם, שמעידים על כך שאולי שכחתי משהו?שי - נגיד, מקודם הזכרת כמה Pod-ים שפועלים באופן שלא אולי לא מודע אחד לשני, אולי עושים עובדה מיותרת.אבל מה הם הסימנים המעידים על כך שאולי כדאי לי לחשוב על תפקיד כזה,כמו של ארכיטקט, או אורי - כבלת את זה יחד עם “מנהל גילדות", כדברים קשורים.מה הם אותם דברים שיצא לכם לראות, שיגרמו לכם לזעזוע הזה ולהחליט לגייס מישהו או לקדם מישהו ולשים את התפקיד הזה?
    • (רון) For fun, הייתי רוצה ששי יענה על זה . . . 
    • (שי) בשמחה. מהניסיון שלי, קודם כל, אני חושב שמהרגע הראשון, כדאי שיהיו אנשים שיכולים להתפתח לשם - ויצמחו עם הארגון.
      • זאת אומרת, אפילו שה-Founding-team של הסטארטאפ - ה-Founder-ים והמפתחים הראשונים שהם  מגייסים, שתיהיה להם את ההבנה שהם יצטרכו מתישהו להתחיל להסתכל על התמונה הכללית.
        • מלמעלה יותר, לעשות Zoom-Out.
    • אבל כן - הסימפטומים שאנחנו חווים בארגונים שאין להם את הדמויות האלה, הם ארגונים שבהם קשה מאוד לייצר שינוי רוחבי ביחד.
      • קשה מאוד לנווט, “אנחנו לא אונייה אחת” - אלא אנחנו “צי” של הרבה מאוד ספינות קטנות.
      • אבל הן לא בהכרח כולן שטות לאותו כיוון שאנחנו רוצים שהם ישוטו אליו.
      • ואז צריך להבין איך אנחנו מייצרים להם איזשהו “שייט במבנה”.
      • (רון) “היד המכוונת”
      • (שי) סליחה על השימוש בטרמינולוגיה ימית . . . 
      • (אורי) לא, לא. אתה בטוב.
      • (רן) נניח מטוסים, שלא כולם טסים לאותו כיוון . . . 
    (אורי) אני רוצה לשאול את השאלה - זה לא כזה משנה אם יש “ארכיטקט” או לא, משנה אם מישהו “עושה ארכיטקטורה” או לא.
    • (שי) לגמרי.
    • (רון) לא ממש, לא מסכים.
      • בעיניי, ארכיטקטורה זה תוצר אחד - אבל לא היחיד.
      • בעיניי, ארכיטקט - או לא משנה, ה-Title הטכני הזה - הוא נדרש.
    • כשמנהל הפיתוח מבין שה-Velocity של ה-Dev Org שלו הוא לא כמו שהוא היה מצפה
      • הוא רואה יותר מדי באגים, הוא רואה יותר מדי עיכובים בלתי צפויים . . .
      •  וכל אלה מייצרים איזושהי תובנה עמוקה יותר, שה-Engineering Level הנוכחי -או החוב הטכני הנוכחי, זה בדרך כלל בא ביחד - זה בעייתי מדי כרגע לארגון.
      • ואנחנו צריכים Somehow לדחוף יותר גבוה או יותר למעלה את הארגון.
      • וזה כנראה . . . כוח האדם שנמצא כרגע - כנראה שאין לו את ה-Attention או את היכולת לבצע את זה.
        • אחרת זה כבר היה קורה מאליו.
    (אורי) או שלא ציפית את זה ממנו . . . 
    • (רון) לא ציפיתי מהמפתחת או מה...?
    (אורי) מכוח-ההאדם הנוכחי - זה מפתחת, זה ראשי צוותים, ראשי קבוצות.
    • (רון) ומה זה אומר? אוקיי, אז בוא נפרוט את זה - מה זה אומר “לא ציפית את זה ממנו”?
    (אורי) לא הגדרת להם שזה חלק מהתפקיד שלהם.(רן) אורי מאוד מאמין באנשים .  . . אורי, אני קולט את זה עליך.
    • (רון) אבל, אוקיי - אז ה-Signal לאותו מנהל פיתוח, לפי מה שאתה אומר, אורי, זה שהוא רואה את מה שכרגע תיארתי, ואז הוא צריך להבין שהוא לא ציפה את זה מכוח האדם?
      • זה תקשורת.
      • מה שאתה אומר זה שהוא לא תקשר מספיק טוב את הצפיות שלו.
    (אורי) זו הגדרת תפקיד . . . . אצלנו, הרבה מאוד שנים, אולי אפילו עדיין ככה, תכל’ס - הארכיטקטים של קומפוננטות  (Components) שנמצאות אצל צוותים מסויימים, זה בסוף על הראש-צוות או הראש-קבוצה. בסוף, המצויינות  הטכנולוגית של הצוות שלהם - זה על הראש שלהם.
    • (רון) אבל מי לוקח? . . .  לא, רגע, שנייה - בסוף, יש לך איזשהו ארגון, ולא סתם יש לנו שם מנהל פיתוח, נכון?
      • הוא אמור, אתה יודע, הוא שם את ה... סליחה, “התחת שלו על הגריל”, כן?
      • זה הוא שאמור לקחת את האחריות על התוצרים.
    (אורי) אבל מתחת לתחת שלו, יש את התחת שלהם . . . (רן) אנחנו יורדים נמוך מאוד פה . . . 
    • (רון) בסדר - אבל אפרופו פוליטיקה אקטואלית, מה האחריות המיניסטריאלית שלו? הוא אחראי ל...
    (אורי) זה נכון שהוא אחראי.
    • (רון) הוא אחראי - אבל הוא אחראי גם על ה-DNA הארגוני. הוא אחראי.
    • ואם ה-DNA הארגוני בסופו של דבר . . . הוא בסוף רואה את התוצרת בעצמו, נכון?
      • וכנראה שהוא לא יכול לבד . . . 
    • מה שאני מנסה לחדד פה, זה שאם הוא היה - אם ה-DNA הארגוני היה כזה שבאמת התוצרים היו טובים, זה אומר שהוא תקשר ונתן את הציפיות והשקיע מה שהשקיע והכל, כדי לייצר את המצוינות הטכנולוגית שלדעתי אתה מכוון אליה.
      • אבל אולי אין לו את זה
    • ואני חושב שאני קצת כן נותן לך את התשובה, רן - שלא תמיד יש לך את המנהל הכי הכי טכנולוג או שבאמת מודע למקום הזה, של מצוינות טכנולוגית
      • והוא צריך את “ה-Wingman שלו” - להלן “ארכיטקט”, או ראש גילדה או What Not - שהוא יהיה זה שמחזיק את הטיקט של האיכות והשאיפה למצוינות ו-Raising the Bar.
    • (שי) אבל איכות זה שאיפה למצוינות . . . 
    (רן) תגיד “אני מסכים, אבל . . . “.
    • (שי) אני מסכים . . . 
    (רן) . . . “עם כל מה שהוא אמר” . . . 
    • (שי) . . . . אני אציין ואני אחדד ואני אגיד שמצוינות טכנולוגית ושאיפה למצוינות וכל דבר - הם לא מטרה.
      • הם אמצעי - בסוף, כדי שה-Buisness יהיה יותר מוצלח.
      • ולכן, אני חושב שזה מאוד מאוד נכון שמצוינות טכנולוגית ופוקוס על טכנולוגיה ועל הנדסה, זה אחד מהדברים ש-IC ב-Level בכיר, בין אם אתה קורא לו ארכיטקט או Principal, צריך לעשות.
    • אבל עוד אחד מהדברים האלה שהוא צריך לעשות, זה לעזור לתתי-ארגונים לראות את התמונה הגדולה.
      • לראות לאן הארגון הולך.
      • לא לעשות אופטימיזיה לוקאלית (Local), אלא לעשות אופטימיזציה לטובת הארגון כולו - גם במחיר של ה-KPI's או של ה-OKR's של התת-ארגון שלי.
    • (רון) אני מסכים איתך!
    (רן) ונעצור כאן . . . .
    • (רון) כן, זהו.
    (אורי) הייתי כבר בדיון שבו מישהו אמר “אני מבין מה שאתה אומר - אבל זה חרטא” . . . (רן) כולם מסכימים, אבל רבים מסכיב . . .
    • (רון) כן, אני מקווה שזה . . . אין כאן רמז.
    (רן) ובנימה אופטימית זו - לא אתה, לא הדיון הזה כמובן - כמובן שאני גם מבין מה שאתה אומר.
    49:47 סיום
    (רן) טוב, אז בנימה אופטימית זו, ושנהיה מצוינים - ולא לזנב!(אורי) ותקנו בתים שעשו בהם ארכיטקטורה . . . .(רן) לגמרי, ארכיטקטורה זה חשוב!(רון) רעיון טוב . . . (אורי) תוודאו שמישהו עשה.
    תודה רבה - שי ורון, תודה שבאתם!תודה רבה ולהתראות לכולם.

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

About רברס עם פלטפורמה

From the publisher's feed

פודקאסט על תוכנה, מוצר, ותשתיות — בעברית.

More shows like רברס עם פלטפורמה

גיקונומי by ראם שרמן ודורון ניר

גיקונומי

93 Listeners

עושים היסטוריה עם ערן ניצן Osim Historia by רשת עושים היסטוריה

עושים היסטוריה עם ערן ניצן Osim Historia

159 Listeners

חיות כיס Hayot Kiss by כאן | Kan

חיות כיס Hayot Kiss

140 Listeners

שיר אחד One Song by כאן | Kan

שיר אחד One Song

157 Listeners

מפתחים חסרי תרבות by מפתחים חסרי תרבות

מפתחים חסרי תרבות

10 Listeners

מנועי הכסף by כלכליסט

מנועי הכסף

38 Listeners

עושים תוכנה Osim Tochna by רשת עושים היסטוריה

עושים תוכנה Osim Tochna

9 Listeners

Startup for Startup by Powered by monday.com

Startup for Startup

22 Listeners

בזמן שעבדתם by mako מאקו

בזמן שעבדתם

99 Listeners

אחד ביום by N12

אחד ביום

310 Listeners

מפלגת המחשבות by Beit Avi Chai

מפלגת המחשבות

97 Listeners

השקעות לעצלנים - פודקאסט על כסף, השקעות והחיים עצמם by תמיר מנדובסקי

השקעות לעצלנים - פודקאסט על כסף, השקעות והחיים עצמם

30 Listeners

מפתחים מחוץ לקופסה by שחר פולק ודותן טליתמן

מפתחים מחוץ לקופסה

1 Listeners

LangTalks by Lee Twito, Gal Peretz

LangTalks

0 Listeners

הקרנף - עם יואב רבינוביץ׳ by בית הפודיום

הקרנף - עם יואב רבינוביץ׳

23 Listeners