• प्रोग्रामिंग अस्पष्ट specifications को बारीकी से तराशने की एक रचनात्मक प्रक्रिया है, और AI English specifications को code में बदलकर इस प्रक्रिया को तेज करता है
  • ‘Vibe coding’ सहज महसूस होने वाला development संभव बनाता है, लेकिन abstraction leakage से पैदा होने वाली complexity और bugs की समस्या से बचा नहीं जा सकता
  • इंसान जटिलता को संभालने के लिए abstraction और compression का उपयोग करते हैं, और यही programming का मूल मूल्य है
  • AGI युग में AI बेहतर abstractions को support करके परिष्कृत और कलात्मक code creation को संभव बना सकता है
  • “कोड मर चुका है” जैसी धारणा के विपरीत, AI coding का अंत नहीं बल्कि एक नई शुरुआत खोलने वाला tool है

कोड की मौत का दावा बढ़ा-चढ़ाकर किया गया है

  • English specifications की अस्पष्टता और precision की सीमा की ओर इशारा करते हुए, programming को writing की तरह बार-बार refinement के ज़रिए अधिक precise बनाने की प्रक्रिया बताया गया है
    • Bertrand Russell के उद्धरण के माध्यम से इस बात पर ज़ोर दिया गया है कि “किसी चीज़ को सटीक बनाने की कोशिश करने से पहले सब कुछ अस्पष्ट होता है”
    • AI English में लिखे specifications को तेजी से executable code में बदल देता है, जिससे उपयोगकर्ता धीरे-धीरे अपने इच्छित परिणाम को अधिक ठोस रूप दे सकते हैं
  • ‘Vibe coding’ वह तरीका है जिसमें AI द्वारा बनाए गए outputs पर प्रतिक्रिया देते हुए सहज रूप से development किया जाता है, लेकिन यह सही abstraction होने का भ्रम दे सकता है
    • जब abstraction leak होता है, तो अप्रत्याशित bugs पैदा होते हैं, और scale बढ़ने पर यह समस्या और गंभीर हो जाती है
    • Dan Shipper के उदाहरण की तरह, ‘vibe coding’ से बनाया गया collaborative text editor लोकप्रिय होने के बाद complexity issues के कारण down हो गया
    • “Live collaboration” सहज रूप से सरल लगता है, लेकिन वास्तव में यह बहुत कठिन समस्या है, जो complexity की प्रकृति दिखाती है

abstraction और complexity पर नियंत्रण

  • इंसान एक समय में लगभग 7±2 items ही समझ पाते हैं, इसलिए complexity को संभालने का एकमात्र तरीका ‘compression’, यानी abstraction है
    • Edsger Dijkstra के उद्धरण के माध्यम से यह रेखांकित किया गया है कि “abstraction का उद्देश्य अस्पष्टता नहीं, बल्कि अर्थ के नए स्तर पर precision है”
    • Sophie Alpert द्वारा Slack के जटिल notification flowchart को सरल बनाने का उदाहरण दिया गया है
  • programming का मूल complexity को संभालने के लिए बेहतर abstractions बनाना है, और functional reactive programming जैसी धाराओं में इसकी सुंदरता देखी जा सकती है
    • collaborative text editor जैसी मूल रूप से जटिल समस्या भी ReactJS या TailwindCSS जैसे abstraction tools के ज़रिए धीरे-धीरे काबू में लाई जा सकती है

AGI युग और code की भूमिका

  • जैसे-जैसे AI अधिक तेज़ और सस्ता होता जाएगा, अंततः वह मानव से अलग न पहचानी जा सकने वाली बुद्धिमत्ता (AGI) तक पहुँच जाएगा
    • AGI के युग में यह अनुमान है कि कोई भी व्यक्ति कम लागत पर ‘Karpathy-स्तर के 100 जीनियस’ जितनी शक्तिशाली बुद्धिमत्ता का उपयोग कर सकेगा
    • लेकिन इसका उद्देश्य ‘और अधिक घटिया code’ बनाना नहीं, बल्कि बेहतर abstractions और complexity की समझ के लिए tool के रूप में उपयोग होना होगा
  • code सिर्फ software बनाने का साधन नहीं, बल्कि अपने आप में एक महत्वपूर्ण कलात्मक उत्पाद है, और अच्छी तरह लिखा code कविता के समान बताया गया है
    • जैसे writing में ‘vibe writing’ नहीं होता, वैसे ही coding को भी सिर्फ सहज संवेदना-आधारित क्रिया से प्रतिस्थापित नहीं किया जा सकता
    • AGI आने पर machines ‘non-slop’ code लिख सकेंगी, और यह मानवता के लिए गौरवपूर्ण प्रगति होगी

AI और code quality में सुधार

  • फिलहाल AI अभी भी अपूर्ण code बनाता है, लेकिन developers इसे ध्यान में रखकर उसका उपयोग कर रहे हैं
    • Simon Willison की राय की तरह, AI का उपयोग बेहतर code बनाने के tool के रूप में होना चाहिए
    • AGI आने पर उसे सबसे पहले सबसे कठिन abstraction problems को हल करने में लगाया जाएगा, जिससे collaborative editor libraries जैसे जटिल systems बेहतर होंगे
  • Opus 4.6 का उपयोग करके Val Town के लिए full-stack React framework (vtrr) बनाने का उदाहरण दिया गया है
    • React Router 7 से जुड़ी unresolved problem को एक ही बार में हल किया गया, और 50-line single-file demo के ज़रिए complexity को elegantly संभाला गया
    • इससे यह दिखता है कि AI और इंसान के collaboration से परिष्कृत code creation संभव है

code का भविष्य और formalism का मूल्य

  • समाज के बहुत से लोग “कोड मर चुका है” मानते हैं, लेकिन यह printing press के आविष्कार के बाद कहानी के अंत की घोषणा करने जैसी गलती है
    • AI coding का अंत नहीं, बल्कि coding की नई शुरुआत है
  • Edsger Dijkstra, Tony Hoare और Charles Babbage के उद्धरणों के माध्यम से यह रेखांकित किया गया है कि formal thinking और symbols की compression power मानव विचार का विस्तार करती है
    • Dijkstra ने कहा कि formal languages का उपयोग बोझ नहीं, विशेषाधिकार समझा जाना चाहिए
    • Hoare ने “ऐसा सरल design जिसमें defects साफ़ तौर पर न हों” और “ऐसा जटिल design जिसमें defects साफ़ तौर पर दिखाई न दें” के दो approaches की तुलना की
    • Babbage ने बताया कि symbols का compression विचार को आगे बढ़ाने वाली शक्ति है
  • निष्कर्षतः, code मरा नहीं है; बल्कि AI युग में वह और भी शक्तिशाली रचनात्मक tool के रूप में उभर रहा है

अभी कोई टिप्पणी नहीं है.

अभी कोई टिप्पणी नहीं है.