Vibe Coding की उत्पत्ति
आपको वह दिन याद होगा जब आपने कोड की हर लाइन टाइप करना बंद कर दिया था। आपने Tab दबाना शुरू कर दिया और एक Large Language Model (LLM) को अपने विचारों को पूरा करने दिया।
2024 और 2025 की शुरुआत के बीच, सॉफ्टवेयर डेवलपमेंट बदल गया। हम सख्त सिंटैक्स से निकलकर शुद्ध प्रवाह (pure flow) की स्थिति में आ गए। Andrej Karpathy इसे Vibe Coding कहते हैं।
Vibe Coding का अर्थ है सूक्ष्म डिज़ाइन के बजाय अंतर्ज्ञान (intuition) के माध्यम से सॉफ्टवेयर बनाना। अब आप लाइन दर लाइन लॉजिक नहीं लिखते। आप एक कंडक्टर की तरह काम करते हैं। आप परिणामों का निर्णय इस आधार पर करते हैं कि सिस्टम कैसा महसूस होता है और कैसा व्यवहार करता है।
यह एक सुपरपावर जैसा महसूस होता है। सर्वर सेटअप करने या SQL क्वेरी लिखने जैसे कार्यों में कुछ ही सेकंड लगते हैं। व्यक्तिगत डेवलपर्स पहले की तुलना में कहीं अधिक तेज़ी से उत्पाद लॉन्च कर रहे हैं।
लेकिन इस गति में एक जाल है।
जब आप बुनियादी बातों को समझे बिना कोड को AI को सौंप देते हैं, तो आपकी आलोचनात्मक सोच (critical thinking) कम हो जाती है। आप एक ब्लैक बॉक्स पर निर्भर हो जाते हैं। आपको तेज़ कोड तो मिल जाता है, लेकिन आप यह नहीं जानते कि क्या वह मेंटेनेबल (maintainable) रहेगा।
Vibe Coding का चक्र इस प्रकार दिखता है:
- एक फीचर जोड़ने के लिए प्रॉम्प्ट लिखें।
- कोड चलाएं और देखें कि क्या यह काम करता है।
- यदि यह विफल हो जाता है, तो त्रुटि (error) को वापस AI में कॉपी करें और इसे ठीक करने के लिए कहें।
यह प्रोटोटाइप के लिए काम करता है। वास्तविक आर्किटेक्चर के लिए यह विफल हो जाता है। इससे Frankenstein code बनता है।
Frankenstein code AI के टुकड़ों का एक मिश्रण है जिन्हें आपस में जोड़ दिया गया है। प्रत्येक टुकड़ा एक छोटी समस्या को हल करता है, लेकिन पूरे सिस्टम में एक विजन की कमी होती है।
जैसे-जैसे आपका प्रोजेक्ट बढ़ता है, आप ये समस्याएँ देखते हैं:
- असंगत पैटर्न (Inconsistent patterns)। AI हर फ़ाइल में अलग-अलग शैलियों का उपयोग करता है।
- अत्यधिक कपलिंग (Extreme coupling)। AI आसान रास्ता चुनता है और मॉड्यूल की सीमाओं को तोड़ देता है।
- कॉन्टेक्स्ट ब्लाइंडनेस (Context blindness)। AI मौजूदा फंक्शनों को भूल जाता है और डुप्लिकेट या नए बग्स बना देता है।
परिणाम एक नाजुक सिस्टम होता है। कोई भी इंसान इसे नहीं समझ पाता। AI बाकी सब कुछ खराब किए बिना इसे बदल नहीं सकता।
Vibe Coding ने डेवलपमेंट को सुलभ बना दिया। इसने उबाऊ कार्यों को हटा दिया। लेकिन बिना दिशा के गति तकनीकी दिवालियेपन (technical bankruptcy) की ओर ले जाती है।
स्केलेबल सिस्टम बनाने के लिए, आपको केवल वाइब्स (vibes) से अधिक की आवश्यकता है। आपको कठोरता और गुणवत्ता नियंत्रण (quality control) की आवश्यकता है।
Source: https://dev.to/jcmexdev/el-origen-del-vibe-coding-j00
Optional learning community: https://t.me/GyaanSetuAi
