लेखन

वाइब्स के नीचे का स्टैक

·4 min read

इस पृष्ठ का अनुवाद AI की सहायता से किया गया है। अंग्रेज़ी मूल ही प्रामाणिक है।

"वाइब कोडिंग (vibe coding)" — यानी जो चाहिए उसे बयान करना और किसी AI एजेंट को कोड लिखने, चलाने और सुधारने देना — पार्टी की करतब से आगे बढ़कर उत्पादन-अभ्यास बन चुकी है। यह साइट काफ़ी हद तक इसी तरह बनी। मेरे पोर्टफ़ोलियो के AI उत्पाद भी, और मेरे ड्रोन हार्डवेयर की डिज़ाइन-पाइपलाइन भी। मैं इसका क़ायल हूँ। और ठीक इसीलिए मैं उन तीन गहरे ग़ैर-फ़ैशनेबल औज़ारों की बात करना चाहता हूँ जो इस अभ्यास को जीने योग्य बनाते हैं — क्योंकि वाइब्स एक स्टैक की सबसे ऊपरी परत हैं, और स्टैक पुराना है।

परतों के रूप में वाइब-कोडिंग स्टैक: सबसे ऊपर एजेंट, नीचे git, GitHub और एक सादा Linux बॉक्स।

Git: आत्मविश्वास का अनडू बटन

AI एजेंट पूरे आत्मविश्वास से जनरेट करता है और उसे याद नहीं रहता कि उसने क्या नष्ट किया। यह आलोचना नहीं है — यह उसके काम की परिभाषा है, और git उस काम का दूसरा आधा हिस्सा है। वर्ज़न कंट्रोल एजेंट की रफ़्तार को जोखिम से संपत्ति में बदल देता है: कमिट की गई हर चालू अवस्था एक सेवपॉइंट है, हर प्रयोग मुफ़्त है, और वाइब कोडिंग का सबसे डरावना वाक्य — "वहाँ था तो मैंने कुछ और चीज़ें भी रीफ़ैक्टर कर दीं" — किसी रहस्य की तरह खोजे जाने के बजाय एक डिफ़ (diff) की तरह समीक्षा-योग्य हो जाता है।

जो अभ्यास मायने रखते हैं वे छोटे हैं: कुछ भी महत्वाकांक्षी माँगने से पहले कमिट कीजिए, जनरेट किए बदलावों को समीक्षा-योग्य टुकड़ों में रखिए, और डिफ़ पढ़िए — एजेंट की असली निगरानी डिफ़ में ही होती है, क्योंकि गद्य-सारांश इरादा बयान करते हैं और डिफ़ वास्तविकता। जब आप किसी हिस्से (hunk) की व्याख्या नहीं कर पाते, तो वह कोई बारीकी नहीं; वही वह क्षण है जब कोडबेस आपका रहना बंद करने वाला था।

GitHub: सत्र से आगे जीने वाली स्मृति

एजेंट की कॉन्टेक्स्ट विंडो भूल जाती है; रिमोट नहीं भूलता। पुश करना "प्रोजेक्ट मेरे लैपटॉप पर है" और "प्रोजेक्ट का अस्तित्व है" के बीच का फ़र्क़ है। लेकिन वाइब कोडिंग के लिए इसका गहरा मूल्य यह है कि GitHub वह जगह है जहाँ जनरेट किया कोड प्रक्रिया से मिलता है: पुल रिक्वेस्ट जनरेशन के हर दौर के चारों ओर एक समीक्षा-योग्य सीमा देती हैं; CI एजेंट के लिखे टेस्ट, एजेंट के ही लिखे कोड पर, एक ऐसी मशीन पर चलाता है जिस पर एजेंट का नियंत्रण नहीं; और इश्यू आज रात के "यह कभी ठीक करना चाहिए" को कुछ ऐसा बना देते हैं जिसे भविष्य का कोई सत्र — मानव या एजेंट — सचमुच उठा सके। एजेंट भूलने की बीमारी वाला एक प्रतिभाशाली सहयोगी है। GitHub वह साझा नोटबुक है जो ऐसे सहयोगी के साथ काम करना संभव बनाती है।

एक Linux बॉक्स: ऐसी तैनाती जिस पर तर्क चल सके

तैनाती (deployment) का फ़ैशनेबल जवाब है एक ऐसा प्लेटफ़ॉर्म जो सब कुछ अमूर्त कर दे। वाइब-कोडर का ईमानदार मित्र है nginx चलाता छह डॉलर का एक वर्चुअल सर्वर — क्योंकि जब किसी एजेंट (या रात एक बजे आपको) यह जानना हो कि साइट क्यों गिरी है, तो असली लॉग वाला एक ssh सत्र हर बार स्टेटस-बैज वाले डैशबोर्ड से बेहतर साबित होता है।

यह पोर्टफ़ोलियो इसी तरह चलता है: एक स्टैटिक बिल्ड, ssh पर tar, सपाट फ़ाइलें परोसता nginx, टाइमर पर certbot। हर हिस्सा जाँचा जा सकता है, बीस वर्षों से दस्तावेज़ित है, और — सबसे अहम — मॉडलों को गहराई से ज्ञात है। एजेंट दशकों के nginx कॉन्फ़िग और systemd प्रश्नों पर प्रशिक्षित हुए हैं। किसी मालिकाना प्लेटफ़ॉर्म के ब्लैक बॉक्स को डीबग करने को कहिए तो एजेंट अटकल लगाता है; nginx की एरर लॉग पढ़ने को कहिए तो वह जादूगर है। उबाऊ बुनियादी ढाँचा केवल सस्ता नहीं है — यह वह बुनियादी ढाँचा है जिसे चलाने में AI सबसे माहिर है।

परतों में छिपा सबक़

यहाँ एक पैटर्न है जो टाइपोग्राफ़ी ने मुझे बहुत पहले सिखा दिया था: नई अभिव्यंजक परत उतनी ही अच्छी होती है जितना उसके नीचे का उबाऊ तंत्र। टूटी ग्रिड पर सुंदर टाइपफ़ेस एक अव्यवस्था है; बिना वर्ज़निंग वाले कोडबेस पर एक प्रतिभाशाली एजेंट एक उलटी गिनती। वाइब कोडिंग का शिल्प प्रॉम्प्टिंग नहीं है — प्रॉम्प्टिंग आसान है। शिल्प है वह आधार बनाना जो निडर जनरेशन को सुरक्षित बनाता है: ऐसे चेकपॉइंट जिन पर आप भरोसा करें, ऐसी स्मृति जो बनी रहे, और एक ऐसा सर्वर जिसे आप सचमुच पढ़ सकें।

पुराने औज़ार वाइब्स की जगह नहीं, वाइब्स के लिए सीखिए। पार्टी को स्टैक ही थामे रखता है।