اولین پروژه Vibe Coding من به من آموخت که نمی‌دانستم چه چیزی می‌سازم

من تیم‌های مهندسی موبایل را مدیریت می‌کنم. معماری را بررسی می‌کنم و در مورد محدوده پروژه (scope) چالش ایجاد می‌کنم. من اپلیکیشن‌هایی را برای میلیون‌ها کاربر عرضه کرده‌ام.

وقتی یک پروژه جانبی را با هوش مصنوعی شروع کردم، فکر می‌کردم بخش سخت کار، انتخاب میان‌برها خواهد بود. اما اشتباه می‌کردم.

می‌خواستم یک اپلیکیشن لیست خرید بسازم. بیشتر اپلیکیشن‌ها یک لیست ساده و تخت به شما می‌دهند. شما در فروشگاه‌ها مثل یک مارپیچ سرگردان می‌شوید، چون لیست از مسیری مشخص پیروی نمی‌کند. ایده من ساده بود: لیستی که آیتم‌ها را بر اساس راهرو (aisle) مرتب می‌کند. شما چیدمان فروشگاه خود را یک‌بار تعریف می‌کنید و اپلیکیشن هر لیست را مطابق با آن چیدمان مرتب می‌کند.

مفهوم را برای هوش مصنوعی توصیف کردم. خیلی سریع چیزی ساخت. تحسین‌برانگیز بود.

سپس به آن نگاه کردم و متوجه شدم که اشتباه است.

کد مشکلی نداشت. مشکل، دیدگاه من بود. من یک ایده مبهم داشتم، نه یک برنامه.

«یک لیست خرید که بر اساس راهرو سازماندهی شده است» یک ایده کامل نیست. وقتی با یک محصول واقعی روبرو می‌شوید، سوالات سختی مطرح می‌شوند:

• وقتی برای یک آیتم راهروی مشخصی تعیین نشده، چه اتفاقی می‌افتد؟ • آیا آیتم تکمیل‌شده ناپدید می‌شود یا به بخش جدیدی منتقل می‌شود؟ • آیا بخش تکمیل‌شده در پایین هر راهرو قرار می‌گیرد یا در انتهای لیست؟ • یک کاربر جدید چگونه چیدمان فروشگاه خود را تنظیم می‌کند؟ • آیا عنوان یک راهروی خالی نمایش داده می‌شود یا جمع می‌شود؟

من حتی یکی از این تصمیم‌ها را هم نگرفته بودم.

وقتی به روش سنتی چیزها را می‌ساختم، این سوالات را حین کدنویسی پاسخ می‌دادم. اصطکاکِ نوشتن کد، سرعت مرا کم می‌کرد. این کار به مغز من فرصت می‌داد تا شکاف‌ها را پر کند. کد، خود به مشخصات فنی (specification) تبدیل می‌شد.

Vibe coding آن اصطکاک را از بین می‌برد. هوش مصنوعی آنقدر سریع حرکت می‌کند که تصمیمات نمی‌توانند در لایه‌های پیاده‌سازی پنهان شوند. هوش مصنوعی درباره هر شکافی که باز بگذارید، فرض‌هایی را در نظر می‌گیرد. قبل از اینکه شما روی جزئیات فکر کنید، نتیجه را به شما نشان می‌دهد.

مردم بحث می‌کنند که آیا هوش مصنوعی می‌تواند کد خوبی بنویسد یا خیر. این سوال اشتباهی است.

سوال واقعی این است: آیا می‌دانید چه چیزی می‌خواهید بسازید؟

شما قبل از شروع، به پاسخ‌هایی برای هر تصمیم نیاز دارید. باید بدانید حالت‌های خاص (edge cases) چگونه کار می‌کنند. باید بدانید تجربه کاربری چگونه خواهد بود.

این یک مهارت مدیریت محصول است. توانایی توصیف دقیق یک تجربه، پیش از آنکه سازنده شروع به کار کند. فکر می‌کردم این مهارت را دارم، اما Vibe coding ثابت کرد که من فقط پشت پیاده‌سازی پنهان شده بودم.

اپلیکیشنی که ساختم By Aisle نام دارد. تمام کردن آن زمان زیادی برد. به این دلیل نبود که کدنویسی سختی داشت، بلکه به این دلیل بود که ابتدا باید خودم محصولم را درک می‌کردم.

اگر از هوش مصنوعی برای ساختن استفاده می‌کنید، این کار را انجام دهید: قبل از باز کردن هوش مصنوعی، یک ساعت را صرف نوشتن تمام تصمیماتی کنید که محصولتان به آن‌ها نیاز دارد. آن وقت شکاف‌های زیادی را پیدا خواهید کرد.

Source: https://dev.to/kraizman/my-first-vibe-coding-project-taught-me-i-didnt-actually-know-what-i-was-building-1af8

Optional learning community: https://t.me/GyaanSetuAi