נראה בסדר

06/10/2026

ביקשתי מ AI ליצור תוכנית דוגמה באיזה קורס וקיבלתי את הקוד הזה:

https://github.com/ynonp/googledics-ai-demo

יש פה כמה דברים שקל ממש לראות למה הם שבורים:

  1. כל הקוד יושב בקובץ App.tsx במקום חלוקה לקבצים

  2. מספרים קסומים מפוזרים באפליקציה (5 צבעים, 20 מסמכים אחרונים, הצגת מקסימום 4 משתמשים מחוברים, אורך מקסימלי של שם 32 תווים).

  3. טקסטים מפוזרים בקוד ולא בקובץ תרגום.

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

דוגמה נוספת מאפליקציה אחרת היא השורה:

void this.local.whenSynced.then(()=>{if(!this.destroyed){if(navigator.onLine)this.provider.connect();else this.setStatus('offline');}});

כן שורה אחת במקור, ככה זה נראה מחולק לשורות:

void this.local.whenSynced.then(() => {
  if (!this.destroyed) {
    if (navigator.onLine) {
      this.provider.connect();
    } else {
      this.setStatus('offline');
    }
  }
});

פקודת void לפני הקריאה ל whenSynced תופסת את העין - פקודה זו מבטלת את כלל ה lint שתופס Promises שאין להן catch, כלומר הסוכן אומר פה לטייפסקריפט "עזוב אותי אני יודע מה אני עושה שום דבר לא יישבר פה". בתוך קובץ קוד כשה linter לא צועק קשה יותר לשים לב שאין טיפול בשגיאות.

כשלא מבינים מה זה עושה כל קוד "נראה בסדר".