ביקשתי מ Lovable לכתוב אפליקציה שתיקח קישור ל URL ותייצר לי בוחן אוצר מילים על המילים שם, ככה בשביל לתרגל את הספרדית. בשביל שלא יהיה קל מדי ביקשתי ממנו גם שיבקש את הרמה הנוכחית שלי בספרדית ויבנה בוחן על מילים מה URL שמתאימות לרמה שלי. זה לקח לו קצת זמן אבל בסוף הוא הוציא את האפליקציה כאן:
https://colorlingo-quizzy.lovable.app/
אחרי כמה משחקים הרגשתי שהוא קצת מרמה אז הלכתי לקוד כדי למצוא את הפונקציה הבאה שמוציאה את המילים מהלינק:
// This would be populated with real data from the URL and filtered by level
// For now, we're creating dummy words for the custom quiz
const generateDummyWords = (url: string, level: SpanishLevel) => {
// Extract domain name for demonstration
let domain = '';
try {
domain = new URL(url).hostname.replace('www.', '');
} catch {
domain = 'example';
}
// These would actually come from scraping and NLP processing
const allWordPairs = [
// A1 level words (beginner)
{ english: "hello", spanish: "hola", level: "A1" },
{ english: "goodbye", spanish: "adiós", level: "A1" },
{ english: "thank you", spanish: "gracias", level: "A1" },
{ english: "please", spanish: "por favor", level: "A1" },
// A2 level words (elementary)
{ english: "welcome", spanish: "bienvenido", level: "A2" },
{ english: "friend", spanish: "amigo", level: "A2" },
{ english: "family", spanish: "familia", level: "A2" },
{ english: "today", spanish: "hoy", level: "A2" },
// B1 level words (intermediate)
{ english: "website", spanish: "sitio web", level: "B1" },
{ english: domain, spanish: domain, level: "B1" },
{ english: "language", spanish: "idioma", level: "B1" },
{ english: "content", spanish: "contenido", level: "B1" },
// B2 level words (upper intermediate)
{ english: "experience", spanish: "experiencia", level: "B2" },
{ english: "develop", spanish: "desarrollar", level: "B2" },
{ english: "improve", spanish: "mejorar", level: "B2" },
{ english: "progress", spanish: "progreso", level: "B2" },
// C1 level words (advanced)
{ english: "fluency", spanish: "fluidez", level: "C1" },
{ english: "proficient", spanish: "competente", level: "C1" },
{ english: "articulate", spanish: "articular", level: "C1" },
{ english: "communicate", spanish: "comunicar", level: "C1" },
// C2 level words (proficiency)
{ english: "mastery", spanish: "dominio", level: "C2" },
{ english: "nuance", spanish: "matiz", level: "C2" },
{ english: "sophisticated", spanish: "sofisticado", level: "C2" },
{ english: "eloquent", spanish: "elocuente", level: "C2" },
];
// Filter words based on selected level or lower
const levelOrder = ["A1", "A2", "B1", "B2", "C1", "C2"];
const levelIndex = levelOrder.indexOf(level);
const filteredWords = allWordPairs.filter(word =>
levelOrder.indexOf(word.level as SpanishLevel) <= levelIndex
);
// Shuffle the array to make it more random and take 10 words
return filteredWords
.sort(() => 0.5 - Math.random())
.slice(0, 10)
.map(({ english, spanish }) => ({ english, spanish }));
};
בקיצור הוא לגמרי עבד עליי. אף מילה מהלינק לא מגיעה לבוחן אוצר מילים.
(הגירסה השנייה שלו גם לא היתה נכונה אבל מסיבה אחרת).
עכשיו הבאג הזה יחסית נחמד כי קל לזהות אותו, אבל אני חושב שהוא ממחיש את היצירתיות של ה AI, שהיא הכח והחולשה שלו: כשהוא לא יודע הוא לא עוצר לשאול או לחשוב, פשוט משלים קוד מהמאגר האינסופי של קודים שהוא אומן עליהם. מאוד יעיל ל POC-ים קטנים כשאנחנו בתוך הצוות או חוקרים רעיון, הרבה פחות רלוונטי למערכת שצריכה לפגוש משתמשים אמיתיים.
אז מה עושים? כלי AI הם פה כדי להישאר, עם היתרונות והחסרונות שלהם. שימוש נכון בכלים אלה בהחלט ישפר את מהירות הפיתוח שלכם. שימוש לא נכון, גם אם מלהיב באותו רגע, יכול בקלות לגמור לנו אחר צהריים. ביום חמישי שבוע הבא (ה 27.3 ב 20:00) ערן גולדמן-מלכא הזמין אותי לדבר איתו בוובינר על שימוש נכון בכלי AI לפיתוח - נראה שם את lovable, base44, קופיילוט, זנקוד, רדי ועוד המון חברים ואספר מה ואיך עובד עבורי. מוזמנים להצטרף בלינק:
https://calendly.com/aumint/10xdevwith_ai?month=2025-03&date=2025-03-27