مشروعي الأول في الـ Vibe Coding علمني أنني لم أكن أعرف حقاً ما الذي كنت أبنيُه

أنا أدير فرق هندسة تطبيقات الهاتف المحمول. أراجع الهيكلية (architecture) وأضع حدوداً لنطاق العمل (scope). لقد أطلقت تطبيقات لملايين المستخدمين.

عندما بدأت مشروعاً جانبياً باستخدام الذكاء الاصطناعي، ظننت أن الجزء الصعب سيكون اختيار الطرق المختصرة. لكنني كنت مخطئاً.

أردت بناء تطبيق لقائمة التسوق. معظم التطبيقات تعطيك قائمة مسطحة (flat list). تتجول في المتاجر كأنك في متاهة لأن القائمة لا تتبع مساراً معيناً. كانت فكرتي بسيطة: قائمة تصنف العناصر حسب الممر (aisle). تقوم بتحديد تخطيط المتجر مرة واحدة، ويقوم التطبيق بترتيب كل قائمة لتتوافق مع ذلك التخطيط.

وصفت المفهوم للذكاء الاصطناعي. قام ببناء شيء ما بسرعة، وكان الأمر مثيراً للإعجاب.

ثم نظرت إليه وأدركت أنه كان خاطئاً.

كان الكود جيداً، لكن المشكلة كانت في رؤيتي. كانت لدي فكرة ضبابية، وليست خطة.

"قائمة تسوق منظمة حسب الممر" ليست فكرة كاملة. فعندما يمر منتج أمامك، تظهر أسئلة صعبة:

• ماذا يحدث عندما لا يكون للعنصر ممر محدد؟ • هل يختفي العنصر المكتمل أم ينتقل إلى قسم جديد؟ • هل يوضع القسم المكتمل في أسفل كل ممر أم في نهاية القائمة؟ • كيف يقوم المستخدم الجديد بإعداد تخطيط متجره؟ • هل يظل عنوان الممر الفارغ مرئياً أم يتم طيه؟

لم أكن قد اتخذت قراراً واحداً من هذه القرارات.

عندما كنت أبني الأشياء بالطريقة التقليدية، كنت أجيب على هذه الأسئلة أثناء كتابة الكود. كان الاحتكاك الناتج عن كتابة الكود يبطئني، مما يمنح عقلي وقتاً لسد الثغرات. أصبح الكود هو المواصفات (specification).

الـ Vibe coding يزيل هذا الاحتكاك. فالذكاء الاصطناعي يتحرك بسرعة كبيرة تمنع القرارات من الاختباء داخل عملية التنفيذ (implementation). إنه يضع افتراضات حول كل فجوة تتركها مفتوحة، ويظهر لك النتيجة قبل أن تفكر في التفاصيل.

يتجادل الناس حول ما إذا كان بإمكان الذكاء الاصطناعي كتابة كود جيد. هذا هو السؤال الخاطئ.

السؤال الحقيقي هو: هل تعرف ما الذي تريد بناءه؟

أنت بحاجة إلى إجابات لكل قرار قبل أن تبدأ. تحتاج إلى معرفة كيفية التعامل مع الحالات الاستثنائية (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