שלום כולם וברוכים הבאים לאלישע והזוויות, עונה 2 פרק 17. היום ה-11 ב-ינואר 2026, כ”ב בטבת תשפ”ו, וכפי שהבטחתי, אנחנו נעשה זום אין לתחום עיסוק אחד ומיוחד, תחום התכנות, שנמצא בעין הסערה בכל הקשור להשפעות ה-AI על שוק העבודה. הפרק הזה יתאים לכולם, חשוב לי לומר, גם לאלו שאינם מתכנתים, אם כי לאלו שמתכנתים כמובן שהדברים יגעו בחומר שהם מכירים מקרוב. אני רואה בסיפור התכנות שדה ניסויים של חברות ה-AI המנסות לבנות את הקייס של הצעצוע החדש, אבל כזה שאם יצליח הם מקווים שיוכלו להתרחב גם הלאה לתחומים נוספים. כיוון שכך, הפרק הזה יעסוק בחלקים שלו דווקא בעולם התכנות והכניסה של AI אליו, אבל אני מתכוון להראות שהעקרונות שנראה שם רלוונטים גם באופן רחב יותר, ולמקצועות נוספים. אז גם אם אתם אינכם מתכנתים, מה שנעסוק בו היום לא רק ילמד אתכם על מה שקורה בערוגה של המתכנתים, השכנים שלכם, אלא גם מה שעלול לקרות - ולא לקרות - בערוגה האישית שלכם, ולכן - שווה שתאזינו!
רגע לפני שנתחיל, כמה הערות קצרות, כרגיל. קודם כל, בפרק הזה אנחנו נתמקד רק ב-GPT, CLAUDE והחברים שלהם, מה שטיורינג חלם עליו: מודלי השפה, LLM בעגה המקצועית. אז כשאני מדבר על AI לזה אני מתכוון, ואינני מתייחס כאן למכוניות אוטונומיות וכו’, שבהם נגענו יותר בפרק הקודם.
שנית, הדברים שאני אפרוט כאן משיקים לדברים שכתבנו אני ואיתן וגנר, חברי לעבודה, במאמר בשם “אנוש לא תחליף את פייתון“, או “human won’t replace python“. פייתון, למי שלא מכיר, זו שפת תכנות פופולרית היום. אז למי שמגיע מהתעשייה ורוצה את הניתוח שאני עושה כאן דווקא מתוך פוקוס על עולם התכנות - המאמר הזה בשבילכם, ואני ממליץ לכם לקרוא אותו. לינקים לגרסה באנגלית ובעברית בתיאור הפרק, וכמובן, הערות והארות על המאמר - במקביל לפרק - יתקבלו בברכה.
ולסיום, לפני שנמשיך, ההודעה הרגילה! יש אתר לפודקאסט, יש ערוץ טלגרם. יש אפילו מייל - הכל מופיע בתיאור הפרק. בנוסף, לאחרונה יצאו שני ראיונות שלי בפודקאסטים אחרים - פופקורן הידוע, שם הגעתי לראיון שני במספר, ופודקאסט בשם eXplainable שמתמקד בתחום הדאטה. הלינקים - בתיאור הפרק! ואחרון אחרון חביב, שווה גם לשתף שאני התחלתי להעביר הרצאות בארגונים על נושא ה-AI, גם סקירה מלמעלה וגם דברים יותר טכניים ומעשיים, אז אם מישהו מחפש משהו כזה, מוזמן לפנות אלי במייל.
וזהו - אנחנו מתחילים.
כפי שאמרתי בפתיחה, מקצוע התכנות הוא אחד המקצועות שנמצא בפוקוס מהפכת ה-AI. עברו רק שלוש שנים מאז ש-GPT3 יצא לאוויר העולם, וכמעט שאין מתכנת שלא משתמש ב-AI כחלק מן העבודה שלו. אפילו שהשימושים הם רבים ומגוונים, עיקר הבשר כאן הוא שבמקום לכתוב בעצמו את הקוד, האדם מספר למחשב מה הוא רוצה לקודד, וה-AI מייצר את הקוד המבוקש. כמו בכל פעם שיש שינויים גדולים, יש אנשים שמתנהלים כרגיל ורק טועמים מהכלי החדש לפי הצורך, ויש שצוללים למים העמוקים וממציאים את עצמם מחדש, ומשלבים את ה-AI בכל פינה בעבודה שלהם. בשל עוצמת הכלים והאימוץ הגובר והולך שלהם בשטח, אנשים רבים החלו לחשוב שזמנם של המתכנתים קצוב. כך לדוגמה אמר דאריו אמודאי, מנכ”ל אנתרופיק, החברה שמייצרת את CLAUDE, את הדברים הבאים:
“איננו רחוקים מעולם - אני חושב שנהיה שם בעוד 3-6 חודשים - שבו ה-AI כותב 90% מהקוד, ואז תוך 12 חודשים נהיה בעולם שבו ה-AI כותב אפקטיבית את כל הקוד”
הדברים נאמרו, יש לציין, לפני תשעה חודשים, ובינתיים נראה שהתחזית הזו שלו קצת אגרסיבית מדי. בואו נגיד, לא נראה לי שמישהו חושב - אפילו לא דאריו עצמו - שבעוד שלושה חודשים אין לכל המתכנתים עבודה כשהבינה המלאכותית כותבת את 100% מהקוד. אבל מה שחשוב לענייננו הוא שתבינו את האווירה בעולם התכנות בתקופה הזו. עצם העובדה שמישהו בכיר מוכן להמר על מהפכה טוטאלית שכזו, ובטווח של חודשים בודדים, משקפת תפיסה שעולם התכנות בשל לכיבוש על ידי הבינה המלאכותית.
מדוע זה ככה? מה הופך את עולם התכנות לאחד המעוזים הראשונים, אולי המעוז הראשון האמיתי, שמנסים לכבוש בעזרת AI? ובכן, יש לכך הרבה סיבות. קודם כל, שווה לזכור שחברות ה-AI הן גם חברות תוכנה, ולכן הרבה מהכלים שפותחו למטרת כיבוש עולם התוכנה נוסו ושופרו בתחילת הדרך באופן פנימי אצלן. הן היו והן עדיין הלקוחות של עצמן. הן מרגישות את הצורך ואת האפקט של הכלים הללו על העבודה שלהם פנימה. אם אתה גם הלקוח של המוצר שבנית, אתה גם יכול לזהות את הערך שלו, גם יכול לפתח אותו באופן מותאם-שוק, וגם להרוויח על הדרך מהמוצר בתהליכי העבודה שלך. Win-Win לכולם.
שנית, אפילו שהכלים הללו עדיין לא מושלמים, יש אופי כזה בעולם הסטרטאפים, שרגיל לקבל מוצרים חצי-אפויים ולהטמיע אותם בתהליכים קיימים עם מעטפת תומכת. כיוון שכך, אפילו שמדובר בכלים שעוד מתפתחים, הם כבר מביאים ערך והמנטליות ההייטקיסטית היא כזו ששמחה לצמוח יחד עם המוצר.
ועדיין, לצד הסיבות הללו, יש סיבות ענייניות יותר, בא נגיד, שקשורות למאפיינים ייחודיים של העבודה עצמה של המתכנתים, ושתיים מהן חשובות לדעתי מאד כדי להבין מה קורה כאן לעומק. בואו נתחיל עם הראשונה. תשאלו את עצמכם - מה מתכנתים עושים ביום-יום של העבודה שלהם? כותבים הוראות למחשב בשפה מיוחדת, ואז המחשב פועל על פי ההוראות שנתנו. ומה מציעות חברות ה-AI למתכנתים כאן? בדיוק אותו הדבר: תמשיכו לכתוב הוראות למחשב, והוא יפעל על פי ההוראות שלכם. כל ההבדל הוא בשפה שאתה כותבים את ההוראות: מהיום והלאה תשתמשו בשפה אנושית, מה שקוראים בעולם האקדמי “שפה טבעית”. ה-AI יתרגם את הפקודה בשפה אנושית לשפת המחשב, כלומר לקוד, ואז הדברים ממשיכים כרגיל, כמו קודם. לצורת כתיבת הקוד הזו קוראים היום “וייב קודינג”, מונח שמשקף את הזרימה הטבעית של השפה האנושית, קידוד בוייב טוב.
כשחושבים על זה לעומק, מבינים שהטיעון המובלע בוייב קודינג שכזה נוגע במשהו שורשי ממש בחוויה של המתכנת. בימיו הראשונים של עולם התכנות, כדי לכתוב קוד היה צריך ממש לפרוט את הביטים הספיציפיים שרצינו להדליק ולכבות בכל פעולה במחשב. לאט לאט, לאורך השנים והעשורים, בנו בתעשייה שכבות תרגום שיקלו על תהליך יצירת סדרות הביטים הללו, עד שהגענו היום למה שקוראים לו “שפות עילית”, שפות מחשב שהלקסיקון וכללי הדקדוק שלהם דומים בהרבה לשפה רגילה, כשכל פקודה מתורגמת בתהליך שקוראים לו “קומפילציה” לאוסף ענק של פקודות ברמת הביטים. בראייתו של המתכנת המצוי, זה דבר ברור ומקובל שכל כמה שנים אנחנו משדרגים את השפה שבה אנחנו כותבים פקודות למחשב, ומקרבים אותה למשהו יותר “טבעי”, יותר קרוב לאנגלית. תמיד יש גם שכבה מתרגמת או מתווכת, אותו “קומפיילר” שדיברתי עליו, שממירה את הפקודות שנתנו לתצורה שהמחשב מסוגל להבין. מהסיבה הזו, הרעיון של וייב קודינג משתלב יפה בהיסטוריה ומרגיש למתכנתים רבים כשלב התפתחותי טבעי בתעשייה. לא תופתעו, לכן, לשמוע את ג’נסן הואנג, מנכ”ל NVIDIA, בכנס London Tech ביוני 2025 אומר את הדברים הבאים:
“בינה מלאכותית היא המשווה הגדול. תנו לי להסביר מדוע. במשך 50, 60 השנים האחרונות, מדעי המחשב הפכו לתחום מחקר עצמאי והיו נגישים לעשרות מיליוני אנשים מתוך מיליארדי אנשים. הטכנולוגיה הזו הייתה מאתגרת. היינו צריכים ללמוד שפות תכנות, היינו צריכים לעצב אותן, היינו צריכים לתכנן מחשבים שהם מאוד מסובכים. עשרות מיליוני אנשים יכלו להפיק תועלת מהתחום הספציפי הזה אבל עכשיו, פתאום, יש שפת תכנות חדשה. שפת התכנות החדשה הזו נקראת [שפת] ‘אנוש’. רוב האנשים לא יודעים C++, מעט מאוד אנשים יודעים פייתון - [אבל] כולם יודעים ‘אנוש’. הדרך שבה אפשר לתכנת מחשב היום [היא] לבקש מהמחשב לעשות משהו בשבילכם, אפילו לכתוב תוכנית מחשב, ליצור תמונות, לכתוב שיר. פשוט תבקשו בנימוס.”
יש לנו היום שפת תכנות חדשה, הוא אומר. והאמת היא שהוא אומר יותר מזה, נקודה שאנחנו נחזור אליה בהמשך כי היא קריטית ממש להבנת המצב לאשורו: הוא אומר - הבעיה שעצרה בפני הרבה אנשים עד היום מלהיות מתכנתים היתה מחסום השפה, בעיה של תקשורת: אנשים לא הכירו את שפות התכנות באותה מידה שהכירו את שפת האם שלהם. בדיוק כמו שחוסר ידיעת צרפתית מונעת ממני להתמצא בקלות בפריז, כי אני לא יודע צרפתית. כל מה שהבחין בין האדם ברחוב למתכנת היה ההיכרות עם השפה, ותו לא. עכשיו, בזכות זה שהמחשב למד את השפה האנושית, מחסום השפה נפרץ וכולם יכולים לתכנת - הם רק צריכים לבקש בנימוס.
אני מקווה שברור לכם עכשיו למה AI חודר בצורה אפקטיבית כל כך לתוך עולם התוכנה. אמנם, שווה לציין שיש הרבה ערפל סביב שאלת ההשפעה בשורה התחתונה על תוצרי המפתחים. יש מחקרים שמראים שזה מאיץ את הפיתוח, ויש כאלו שמראים שזה דווקא מאט. גלילה ברשתות החברתיות תגלה לכם אנשים שמספרים בתסכול על כך שהם חוזרים לכתוב קוד ללא AI כי הוא בעיקר האט אותם, ויש כאלו שנשבעים שלעולם לא יחזרו לכתוב קוד בעצמם והכל מעתה והלאה יעשה על ידי AI. אבל על אף הערפל, החזון מאד משכנע, וכשהוא מגיע מאדם מרשים כמו ג’נסן הואנג, קשה שלא להתמכר אליו ולהאמין שאנחנו פשוט באמצע המהפכה וצריכים לרכב על הגל עד שנגיע לחוף מבטחים.
ועדיין, על אף החזון המרהיב, אני רוצה שנאתגר אותו. האם ג’נסן צודק?
כדי לענות על השאלה הזו, אני חושב ששווה לעזוב לכמה דקות את עולם התכנות, ולהפנות את הפנס שלנו לזווית אחרת, למקצועות אחרים. כפי שתראו, דווקא מתוך הריחוק המסויים מעולם התוכנה אנחנו נבין את הקשיים שעומדים בפני החזון שלו.
המקצועות שיעניינו אותנו כרגע הם אלו שבהם התפוקה היא טקסט, ולא סתם טקסט אלא כזה שאמור להדריך התנהלות בשטח. לדוגמה, עריכת דין, שם מנסחים כתבי תביעה, חוזים וכו’. עוד דוגמה הינה משימת החקיקה שחברי הכנסת שלנו צריכים להתמחות בה. החוק הזה, כמו הקוד, קובע איך המדינה תתנהל. אז דמיינו שהואנג היה אומר את הקטע הבא:
“בינה מלאכותית היא המשווה הגדול. תנו לי להסביר מדוע. במשך מאות שנים תחום המשפט הפך לתחום מחקר עצמאי… הוא היה תחום מאתגר, היית צריך ללמוד שפה משפטית, לעצב אותה, לתכנן חוזים וחוקים מאד מסובכים. אבל עכשיו, פתאום, יש שפה משפטית חדשה - השפה המשפטית החדשה הזו נקראת [שפת] ‘אנוש’. הדרך שבה אפשר לכתוב חוק כיום [היא] לבקש מהמחשב לכתוב אותו בשבילכם או לנסח עבורכם חוזה. פשוט תבקשו בנימוס.”
מה דעתכם? זה יעבוד? ואם לא, אז איפה הכשל? ולצורך העניין בואו נניח אפילו שה-AI שלנו מושלם. אין לו אפילו הזיה אחת לרפואה כשהוא עונה על שאלות או מבצע הוראות. כל ההפניות שלו לחוקים אחרים הן נכונות, וכל המידע שלו מעודכן עד ללפני שעתיים. האם אנחנו מוכנים להשקת המוצר, ומוכנים להוציא את כל היועצים המשפטיים ועורכי הדין לפנסיה?
התשובה לשאלה הזו היא לא מוחלט, ומדוע? כי תשאלו את עצמכם: למה מראש היינו צריכים חוזה שנכתב על ידי עורך דין? למה בכלל קיים דבר שכזה “שפה משפטית”? התשובה היא שהשפה הרגילה, היומיומית שלנו, מתאימה לתקשורת יעילה בין אנשים, אבל מסמך משפטי מתעדף באופן חד מטרות אחרות: וודאות, פירוט מלא וחד-משמעי של כוונת המסמך, כזה שביום פקודה יאפשר לאזרחים או לאלו שחתמו על החוזה לדעת מה מצופה מהם. הצהרת בחירות בשני משפטים של פוליטיקאי על “שיוויון בנטל”, נניח, תיתרגם במישור המשפטי לעשרות ומאות עמודים של חקיקה, כיוון שכדי להדריך את ההתנהגות של האזרחים והרשויות בשטח צריכים לפרוט באופן מפורש את כל הדרכים שתחושת הבטן של הפוליטיקאי על “שיוויון” ו”נטל” יתממשו בפועל.
מעתה, תחשבו על מה שקורה כשנותנים הוראה קצרה למחשב בסגנון “כתוב לי חוזה שכירות” והוא מייצר לנו חוזה מפורט, או “נסח לי חוק על שיוויון בנטל”. ברור לכולנו, הרי, שיש הרבה דרכים שמסמכים שכאלו יכולים להיכתב, דרכים שונות מאד זו מזו. כיוון שכך, לאחר שה-AI ניסח את החוזה או החוק החדש, מישהו חייב לקרוא את התוצר, לבדוק אותו ולשקול אותו באופן מעמיק, להחליט האם לכך באמת התכוון המשורר. אז אפילו אם ה-AI עושה עבודה מדהימה, זה לא מייתר את בן האנוש. נכון, בן האנוש יעשה משהו אחר עם הזמן שלו: במקום לכתוב את הטיוטה הראשונה הוא יבקר טיוטה שקיבל מן המכונה, ובכך אולי נחסך לו הרבה זמן ומאמץ. המהפכה בהחלט כאן, שלא יהיה ספק. אבל עדיין - האדם הוא חלק קריטי מהתהליך, ואפילו אם ה-AI יכול לייצר תוך דקה מסמך מדוייק של 20 עמודים, לבן האדם יקחו כמה שעות לפני שהוא יהיה בטוח שהתוצר ראוי.
הדברים הללו גם מובילים אותנו לנקודה הבאה: שהחברה שלנו חייבת להמשיך ולייצר, בא נגיד, בני אדם מוכשרים שיהיו מסוגלים להבין את המסמך המשפטי, לאתגר אותו ולתקן אותו במקומות הנדרשים. במידה מסויימת, דווקא בגלל שה-AI הפציע באופק אנחנו צריכים אותם עכשיו יותר מתמיד, כיוון שבלעדיהם יכול מישהו “להחליק” מסמך מיוצר על ידי AI שיהיה מאד משכנע במבט ראשון אבל מלא חורים במבט שני. זה לא המוקד שלנו בפרק הזה - אני אדבר על זה באחד הפרקים עד סוף העונה - אבל הצורך באנשים שכאלו הוא חלק מהבעיה שאנחנו מתמודדים איתה כיום בהמון תחומים. הרי בעבר, בני האדם הללו באו לעולם בתהליך סיזיפי שבו הם שקעו בחומר וכתבו חוזים וחוקים, ככה כמה עשרות פעמים, עד שהם התמקצעו בזה. האנשים הללו הם האנשים שהיום יכולים לקרוא חוזי AI ולזהות את הטוב, הרע והמכוער שבהם. אבל בעולם החדש שבו ה-AI כותב את החוזים, והאדם יכול לדלג על שלב הכתיבה ולהצטרף לתהליך רק בשלב ב’ כדי לנתח את מה שה-AI כתב - איך אנשים יבנו את השרירים המנטליים והכישורים המקצועיים הנדרשים כדי לנתח את תוצרי ה-AI? נראה ברור שנהיה חייבים להעביר אותם “טירונות כפויה”, כזו שיש ביניהם ובין ה-AI “דיסטאנס”, ורק לאחר שהם עושים את הדברים לבד ניתן להם לעבוד בשיטה החדשה, הנשענת על המכונות. אבל כפי שאמרתי, נרחיב על האתגר הזה וחשיבותו בפרקים הבאים.
אני אסכם, אם כן, את הנקודה שראינו כאן בצורה מתומצתת: הבעיה בהישענות עיוורת על AI נובעת בהקשר שלנו מכך שהקלט שאנחנו נותנים לו הוא בשפה טבעית, וזאת ניתנת להבנה בצורות מרובות. הייתי גם הולך רחוק יותר ואומר - השפה הטבעית היא רק שיקוף חלקי של הכוונה שהיתה לי כשניסחתי את ההוראות, וה-AI לא יכול לגשת לכוונה הטהורה שלי באופן ישיר. ולכן, כיוון שהקלט הוא רב-משמעי ופתוח לפרשנות, אין זה משנה כמה נשכלל את ה-AI, עדיין נצטרך בני אדם שיבדקו את התוצר כדי לדעת שהכיוון שהוא לקח את ההוראות שנתנו הוא הכיוון הנכון. גם אם ה-AI מחייב את בני האדם לשנות את אופן העבודה שלהם, הם עדיין חלק בלתי נפרד בתהליך.
אוקיי, אז, דיברנו על תחום המשפט, ואני רוצה להתחיל לחזור לעולם הקידוד. לכאורה הדברים שאמרתי ביחס למשפט וחוקים צריכים להיות עוד יותר רלוונטים בעולם שבו כל פסיק, כל אות, יכולים לשנות את ההתנהגות של תוכנת המחשב. אז למה דווקא שם אנחנו רואים תאוצה גבוהה בהתקדמות טכנולוגית?
הסיבה היא, שבניגוד לחוזה או חוק מדינה, קהל היעד של הקוד איננו בני האדם, אלא המחשב. אפשר להבין לפחות את הגישה שאומרת - אם המחשב מבין מה אנחנו רוצים, לא כזה אכפת לנו איך זה נכתב. ובנוסף, וזו הנקודה העיקרית, בעולם המחשבים יש לנו יכולת מיוחדת: אנחנו יכולים לבנות סט של בדיקות אוטומטיות שיוודאו שהמחשב הבין את הכוונה שלנו, ומבצע את הדברים שביקשנו.
תחשבו על בעיית ההזיות: מודל השפה ממציא דברים שאינם נכונים כל הזמן, אבל עושה זאת בביטחון גדול. כשהוא מפברק עובדות על חוקי המדינה או הפניות למאמרים אקדמיים שאינם קיימים, הדרך היחידה לזהות זאת היא שבן אדם ילך ויבדוק את כל העובדות וההפניות בעצמו. כיוון שכך, הבדיקה הזו היא דבר מאד יקר, כזו שלוקחת זמן ומשאבים אנושיים. לעומת זאת, לאחר שקוד נכתב אפשר. פשוט. להריץ אותו. לראות אם הוא רץ ומחזיר תשובה הגיונית. אם התוכנה קורסת מיד, סימן שמשהו לא טוב. אם היא מחזירה ש-2+2 זה 5, אפשר לראות תוך שניה שמשהו לא תקין. בעולם התוכנה, אם כן, יש לנו תשתית מבוססת מאד לבדיקת תוכנה, כזו שקל וזול להריץ, וזאת גם אם הקוד מורכב מאד. אפילו שאני לא מכונאי רכב, אני מסוגל לזהות שיש בעיות במכונית שלי אם היא לא מניעה. באופן דומה, גם בכתיבת קוד אפשר בקלות יחסית - יחסית - לדעת אם הקוד שנכתב מבצע את המשימה שביקשתי ללא שאני קורא שורת קוד אחת.
בשל המאפיין הזה, תעשיית ה-AI מצאה בעולם הקידוד את המקום המושלם להתחכך בו עם המציאות: הם יכולים לגדר את הקוד המג’ונרט על ידי ה-AI במערכת של בדיקות אוטומטיות ומהירות, וכך לוודא שמה שיצא בסופו של דבר ממה שהם בונים הוא קוד סביר שגם עובד. ואכן, כל מי שעובד עם הכלים המתקדמים יותר יודע שאחרי שמבקשים מהם לעשות משימה, לכתוב קוד כלשהו, פעמים רבות הגרסה הראשונה של הקוד שלהם מפספס לגמרי. ה-AI הוזה או טועה, ומייצר משהו לא טוב. אבל אז יש תהליך אוטומטי שבודק את התוצרים, מדפיס כמה שורות שמאירות זרקור על הבעיה, ועם המשוב האוטומטי הזה ה-AI מנסה לתקן את הקוד וחוזר חלילה עד שהוא מתכנס למשהו סביר. וכל הסיפור הזה לוקח דקה שתיים, אז מבחינת המתכנת זה עדיין חסך לו המון זמן. וכיוון שכך, קל יותר לאנשים לבטוח בכלים הללו ולראות בהם ערך מאשר, נניח, כלי אוטומטי לכתיבת פסקי דין.
כאן המקום באמת לתת שאפו גדול לחברות השונות שבשנים האחרונות בנו תשתיות מדהימות לכתיבת קוד אוטומטית, והובילו בכך לשינוי משמעותי בעולם התכנות, ביום יום של מתכנתים רבים. AI הפך עבורי לחלק אינטגרלי של העבודה, וזה איפשר לי לעשות דברים באופן עצמאי שבעבר הייתי חייב לקרוא המון לפני שיכולתי לכתוב שורת קוד אחת, או להתייעץ עם מומחי תוכן לפני שאני זז. אז אם כי כמובן לא כולם מאמצים את השימוש בו באותה רמה, ברור שעולם התכנות לעולם לא יהיה אותו הדבר.
ומכאן אתם גם יכולים להבין מדוע יש כאלו שסבורים שהמתכנתים יאבדו את עבודתם. אם אני יכול לספר למערכת מה אני רוצה, והיא תוכל לתקן את עצמה לבד, לבדוק את עצמה לבד; ואם אני יכול לתת לה משוב במקומות שהיא פספסה והיא בהדרגה תתכוונן להתנהגות לפי מה שביקשתי - אז למה צריך מתכנתים? לכאורה, אנחנו לא נהיה זקוקים בעתיד למישהו שיקרא את הקוד, ונסתפק בהוראות בשפה טבעית. “אנוש”, כפי שאמר הואנג, זו שפת התכנות החדשה. אפשר להתווכח עם החזון הזה, אבל אי אפשר לטעון שהוא חסר כל הגיון.
אם אתם מכירים אותי, ואת הטרנד שלנו לאורך העונה, אתם חייבים לשאול - איפה הקאצ’? האם באמת, אחרי כל הספקנות שאלישע נטע בנו לגביי ה-AI, אנחנו נסיים את הפרק באמונה בג’וקר שפותר את כל הבעיות בתכנות? השאלה הזו במקומה, וכמובן שאתם צודקים. אבל באלישע והזוויות אנחנו יודעים שרק מתוך הבנת כל הזוויות אנחנו יכולים להגיע למשהו מאוזן. רק עכשיו, כשהקייס של המאמינים במהפכת ה-AI הוצג, נוכל לגשת לחורים שבטענה הזו בצורה הולמת.
ראשית, לא הכל אפשר לבדוק בבדיקות אוטומטיות. לבדוק שהמערכת עובדת - אפשר. לבדוק שהיא עובדת מהר, אם מהירות זה דבר חשוב - גם אפשר. אבל מה אם לבדוק שקל לעדכן אותה בהינתן צרכי לקוח? מה עם לבדוק שכאשר יהיה לה באגים, יהיה קל להבין איפה הבאג ומה הפתרון שלו? מה עם לבדוק שכאשר היא תגדל ותשרת פי 100 לקוחות היא עדיין תעבוד כמו שצריך? אני בעצם מדבר כאן על לבדוק דברים שאינם נקודתיים וקונקרטיים, אלא יותר רכים והוליסטים, כאלו שרואים את התוכנה כאיכותית לא בגלל שבנקודת הזמן הזו היא עושה את העבודה, אלא בגלל שלאורך זמן היא תוכל לשרת את הלקוחות באופן מיטבי. חלק מהדברים הללו קשים לבדוק גם כשהמקודד הוא בן אנוש. אבל חלקם נפתרים כשיש לך צוות תכנות מנוסה, כזה שכבר ראה מוצר או שניים או מאה, ויודע מהנסיון איך לבנות מוצר באופן יציב.
כאן כמובן יבואו אנשים ויאמרו - גם המחשב יכול לעשות זאת בעצמו, כי הוא הרי אומן על המון דוגמאות של קוד איכותי. את הטענה הזו אפשר לאתגר מהרבה כיוונים, ואני אתן כאן רק אחת: שבהקשרים שונים אנחנו צריכים ארכיטקטורות שונות, ו”הקשר” כאן לא מדבר על משהו שקל לנסח אותו בשתי שורות, או במבול של דאטה רלוונטי. זה משהו יותר הוליסטי. זו בדיוק הסיבה שאנשים שמהללים את הקידוד ב-AI היום הם פעמים רבות אנשי תוכנה סופר מוכשרים: בגלל שהם מאד מוכשרים, הם יודעים לתרגם את תחושת הבטן שלהם לצרכים הרלוונטים ועם הדגשים הנכונים. אז כן, אם אתה איש תוכנה מוכשר, אתה יכול לעשות המון עם הכלים הללו. אבל עדיין אתה הוא זה שעושה כאן את עבודת החשיבה, וה-AI רק מממש את מה שאתה מדריך אותו לעשות. וכל הידע הזה, ההדרכה הזו, לא מכוסים בבדיקה אוטומטית.
דבר שני שצריך לשים לב אליו הוא שבסוף מי שאחראי לקוד הוא המתכנת. אם יהיו בעיות בקוד אצל הלקוח, כזה שיגרום להפסדים גדולים - מי ישלם את המחיר על כך? אני מבטיח לכם שחברת אנתרופיק או אופן-AI לא ישלמו לכם על הפסדים מול לקוחות, רק בגלל שהחלטתם להשתמש באופן חופשי ומאושר בפרומפט לא מדוייק. כלומר, בסוף המתכנת בשטח יהיה זה שיצטרך לענות לבוס שלו איך הקוד נכתב, למה בדיקה מסויימת לא נעשתה ולמה ארכיטקטורה נתונה לא היתה בשימוש. וכל עוד המתכנת הוא זה שנושא באחריות, אנחנו גם מצפים שלנשיאה באחריות הזו תהיה משמעות. כלומר - שהוא ידע מה קורה בקוד.
העובדה שהמתכנת לא יודע מה קורה בקוד אחרי שהוא נתן פרומט היא תוצר של מה שאמרנו לעיל לגביי כתיבת חוקים וחוזים: הפרומפט הוא בשפה טבעית שהמשמעות שלה רופפת, בעוד שהקוד הוא בשפה פורמלית וקשיחה. אין באמת הלימה של אחד-לאחד בין הפרומפט לבין הקוד. וזה מוביל אותנו למאפיין שלישי ואחרון להיום: המחיר שאנחנו משלמים כשאנו מתנתקים מהקוד.
כדי לממש את הבקשה הרופפת של האדם, המחשב היה צריך להכריע בכל מני צמתים חשובים בקוד, כאלו שהפרומפט לא הגדיר. האם עבור פעולה מספר 12 חשוב לי יותר הדיוק שלה, המהירות שלה, או העלות שלה? ומה עם רכיב 14 - האם צריך לבנות אותו באופן שהוא ניתן להחלפה בקלות, או שזה לא שיקול? ועוד ועוד. המחשב הכריע בנקודות הללו באופן אקראי, ניחוש שמגודר על ידי המילים של הפרומפט, תבניות קידוד מקובלות וקטעי קוד אחרים שהראו לו. אבל בני האדם שביקשו ממנו לכתוב עבורם את הקוד לא יהיו מודעים כלל להכרעות הללו, לא ידעו שהיו כאן צמתים חשובים שניתן היה לקחת בהם פניה שמאלה במקום ימינה.
כאשר אדם יושב וכותב קוד, תהליך התרגום מהרעיון למימוש מציף בפניו את כל ה”טריידופים” בין השיקולים השונים. רק בזמן ההתעסקות בברזלים עצמם המתכנת באמת מבין מה עומד על הפרק, ורק בשל כך יעלו אצלו בראש שאלות לאיש המוצר, ללקוח, כמו גם רעיונות לפתרון הבעיות שגילה. כל הידע הזה, כל העושר הזה, כל התובנות הללו - הן יפסיקו להופיע כאשר נפסיק לכתוב את הקוד, או לפחות לעבור עליו באופן מדוקדק.
מה המחיר של ההפסד הזה, של הידע שלא יבוא לעולם? שאלה טובה. יכול להיות שעבור חברות מסויימות, קצב הפיתוח המהיר של המוצר שווה את המחיר הזה. אבל החשיבות של הדברים שהעליתי כאן איננה להכריע באופן חד-משמעי שה-AI צריך לשבת בצד ולהיות בעל השפעה מצומצמת על הקוד שלנו, אלא רק להבהיר שיש מחירים גבוהים לאימוץ שלו באופן גורף. ברגע שאנחנו מבינים שלכל כיוון יש מחיר, שם אנחנו סוף סוף נמצאים במקום הריאלי והבריא בבחינה של האירוע. ובייחוד אנחנו נבין שמתכנתים בשר ודם לא יוצאים מהמשוואה - הם רק מעדכנים את הדגשים בתפקיד שלהם.
אנחנו לקראת סיום, אז תנו לי לחדד כאן תובנת-על שתקשר את הדברים שראינו לשאר העונה. בתחילת הפרק, אם הייתי שואל אתכם - מה מתכנתים עושים? מה משפטנים עושים? תשובה פשוטה אחת יכולה להיות: כותבים קוד, כותבים מסמכים משפטיים. כאשר מאמצים את ההגדרה הזו, אפשר בקלות להצביע על מוצרי ה-AI ולומר - גם הם יכולים לבנות תוכנות! גם הם יכולים להפיק חוזים! ומכאן קצרה הדרך לחשוב שבני האדם הם ברי תחליף בתהליך.
אבל לאלו מכם שהיו איתי כאן מתחילת העונה, יש משהו בתיאור הזה שאולי ישמע לכם מוכר: זו פרספקרטיבה שמאד מתאימה לגישה שמאחורי מבחן טיורינג. מבחן טיורינג אמר - אני בודק אינטלגנציה לפי התוצרים שלה, ולא לפי התהליך שבה הם נוצרו. מה שקורה מתחת למכסה המנוע לא מעניין אותי.
כנגד הגישה הזו, מה שראינו בפרק הזה הוא שתהליך יצירת הקוד או החוזה אינו בר החלפה, וספיציפית מעורבות אנושית בו היא קריטית. בני האדם הם אלו שישלמו את המחיר על טעויות, ולכן תהליך ההגעה לתוצר חייב לערב אותם מספיק כדי לקחת אחריות עליו, ולהיות מסוגלים להצדיק את ההחלטות שנלקחו בנקודות קריטיות. בני אדם הם אלו שיודעים למה היתה הכוונה שלהם בבניית המוצר, ולכן הם אלו שיוכלו לשים לב למקומות שה-AI סטה מהכוונה שלהם בשל פרומפט לא מהודק, או לחילופין לזהות הזדמנויות לא צפויות בבנייתו.
התמכרות ל-AI היום, אם כן, זו בעצם החלטה למשכן את העתיד על חשבון ההווה. ונראה לי שהרעיון הזה דורש הרחבה לא קטנה. ולכן בפרק הבא אנחנו נשאל את השאלה הגדולה באמת: לאן כל זה מוביל אותנו, אם אנחנו מסתכלים על הדברים ממבט על ובהקשר הרחב יותר של התרבות האנושית בעולם המערבי? אז אל תנטשו את העונה לקראת הסיום, ואני מקווה לראות אתכם שם, בפרק ה-18 במספר.
ועד אז, תודה שהאזנתם, מקווה שלא היה ארוך מדי, היה לי חשוב לבנות כאן טיעון מבוסס, כי אני חש שהרבה אנשים שם בחוץ מיואשים מהמחשבה שהם יהיו מחוסרי עבודה בשנים הקרובות. המסר שרציתי להעביר הוא שה-AI אינו מייתר את הצורך בבני אדם בשרשרת כתיבת הקוד. או כתיבת החוזים, או בעצם - בכל תחום שבו אנחנו רוצים לפקוד על ה-AI בשפה טבעית לעשות משהו. יש לנו עדיין אתגר, ללמוד איך להכניס את ה-AI באופן אופטימלי לתהליכי העבודה שלנו, ויתכן שבעתיד העבודה שלנו תחייב שימוש בכלי AI, ונצטרך להמציא את עצמנו מחדש. אבל זה אתגר מסדר גודל אחר מאשר התמודדות על אותו התפקיד מול אינטלגנציית-על, בוא נגיד. אז, אני מקווה שהרמתי בכך את המורל אצל קהילת המתכנתים, המשפטנים, וגם מקצועות רבים אחרים. אז אם אתם מכירים חברים שלכם שדואגים מאבטלת AI - שתפו איתם את הפרק, לעשות להם טוב על הנשמה.
וזהו, להתראות, ביי…








