בן האדם שבלופ

20/07/2025

שלוש שיחות עם קלוד-

  1. כתוב קוד פייתון שמתחבר לגיטהאב ומאפשר לי ליצור Issue חדש, להציג את ה Issues הקיימים ולסגור Issue.

קלוד עונה עם קלאס בשם GitHubIssuesManager

  1. למה בחרת לכתוב קלאס? הצג יתרונות וחסרונות של יצירת קלאס מול כתיבת פונקציות והמלץ על ארכיטקטורה.

קלוד מסביר שבאמת גישה מבוססת פונקציות תהיה טובה בהרבה. הוא מארגן מחדש את הקוד עם Named Tuple בשביל לשמור את כל הפרמטרים של הגישה ופונקציות נפרדות לכל פעולה:

def example_usage():
    """Example of how to use the functions programmatically."""
    config = create_config("your_token", "owner", "repo")

    # Open an issue
    issue = open_issue(config, "Bug found", "Description here", labels=["bug"])

    # List all open issues
    issues = list_issues(config, state="open")

    # Close an issue
    if issues:
        close_issue(config, issues[0]["number"], "Fixed!")
  1. ואיזה משתי הגישות תהיה קלה יותר עבור AI לקרוא ולתחזק?

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

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

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

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