हमारी कारीगरी के शोक में
(nolanlawson.com)- AI कोड जनरेशन टूल्स के उभार के कारण प्रोग्रामर की भूमिका सिमटकर सिर्फ़ एक साधारण समीक्षक तक रह गई है
- AI coding tools के बारे में सबसे असहज सच यह है कि वे वास्तव में काम करते हैं, और अगर आप इस पर विश्वास नहीं करते, तो बस 6 महीने इंतज़ार कर लीजिए
- सीनियर डेवलपर नैतिक सिद्धांतों के आधार पर AI का उपयोग ठुकरा सकते हैं, लेकिन अंततः bazooka jetpack लगाए जूनियर सहकर्मी उत्पादकता में उन्हें पीछे छोड़ देंगे
- हाथ से कोड गढ़ने वाली आख़िरी पीढ़ी के रूप में, हम सुबह 2 बजे debugger से जूझने वाले पलों और "मैंने यह बनाया" वाले गर्व को याद करेंगे
- हम न तो इस नई दुनिया का जश्न मना रहे हैं, न उसका विरोध कर रहे हैं, लेकिन अभी मिटती जा रही कारीगरी के शोक का समय है
AI युग और प्रोग्रामर की वास्तविकता
- मैंने कभी नहीं चाहा था कि मेरे लिखे ब्लॉग पोस्ट और कोड को AI खा जाए, दोहराए, और उससे कोई और पैसा कमाए
- प्रोग्रामर की भूमिका घटकर सजावटी TSA अधिकारी जैसी हो गई है, जो बस यह देखने के लिए कोड रिव्यू करता है कि AI ने कहीं कुछ ख़तरनाक चीज़ production में तस्करी से तो नहीं पहुँचा दी
- AI टूल्स के बारे में सबसे बुरी बात यह है कि वे सचमुच असरदार हैं, और 6 महीने में यह और स्पष्ट हो जाएगा
पीढ़ियों के हिसाब से प्रतिक्रिया का अंतर
- अगर आप अपने करियर के अंतिम चरण में हैं, तो आप नैतिक सिद्धांतों के आधार पर AI को ठुकरा सकते हैं
- करियर की शुरुआत में मौजूद डेवलपर पहले ही Warp, Cursor, Claude आदि का उपयोग कर रहे हैं और ChatGPT को therapist और pair programmer की तरह इस्तेमाल कर रहे हैं
- यह लेख उन 40 की उम्र वाले डेवलपर्स के लिए है जिन्होंने अभी तक इस वास्तविकता को पूरी तरह नहीं पहचाना है
- अगर सीनियर AI को ठुकराते हैं, तो जूनियर सहकर्मी bazooka jetpack बनाम pixie bicycle जितने फ़र्क से उन्हें पीछे छोड़ देंगे, और फिर बॉस पूछने लगेगा कि दोगुनी तनख्वाह लेकर आप उनसे दसवां हिस्सा कोड ही क्यों बना रहे हैं
व्यावहारिक चुनाव
- अगर आपके पास home loan, car loan, और परिवार है, तो अंततः आप व्यावहारिक विकल्प ही चुनेंगे
- यह आपके उस पुराने, युवा, आदर्शवादी रूप की पसंद नहीं होगी, लेकिन यह घर, गाड़ी और परिवार की सुरक्षा बचाने वाला फ़ैसला होगा
हाथ से कोड लिखने वाली आख़िरी पीढ़ी के लिए शोक
- बहुत दूर भविष्य में, हम अपने पोते-पोतियों को बताएँगे कि उँगलियों से JavaScript syntax टाइप करने के दिन कितने हास्यास्पद लगते थे, लेकिन भीतर-ही-भीतर हम उसे याद करेंगे
- हम उस कारीगर के स्पर्श को याद करेंगे जो कोड को हाथ में लेकर मिट्टी की तरह गढ़ता था, रात 2 बजे debugger के आगे झुकाने वाले अजीब bugs से लड़ता था, और कुछ ऐसा बनाता था जिस पर गर्व हो सके
- GitHub repository में "मैंने यह बनाया" छोड़ देने वाली कलाकार के हस्ताक्षर जैसी तृप्ति गायब हो जाएगी
नई दुनिया के प्रति रुख
- हम न इस नई दुनिया का उत्सव मना रहे हैं, न उसका विरोध; जैसे सूरज का उगना और डूबना, यह भी ऐसा प्रवाह है जिसे विरोध से रोका नहीं जा सकता
- programming नाम की यह कारीगरी भविष्य की पीढ़ियों के लिए किसी पुरातात्विक खुदाई में मिले लोहार के औज़ारों जैसी जिज्ञासा बन जाएगी
- हर चीज़ का धूल में लौट जाना वस्तुओं का स्वभाव है, लेकिन फिर भी अभी मिटती जा रही कारीगरी के शोक का समय है
टिप्पणियों में मुख्य चर्चा
-
AI code review और technical debt
- सीनियर डेवलपर का code review अभी भी ज़रूरी है, लेकिन अगला चरण शायद AI code reviewer, AI refactorer, AI security auditor जैसी भूमिकाओं का होगा
- Ralph, Gas Town जैसे प्रोजेक्ट इस दिशा की ओर इशारा कर रहे हैं
- Claude अभी दोहराव वाला और शब्दबहुल कोड बनाता है, लेकिन अतिरिक्त AI चरण जोड़ने पर वास्तव में समस्या हल हो जाती है
- अगर आप एक ही बातचीत में सब कुछ निपटाने की कोशिश करेंगे तो कचरा निकलेगा, लेकिन इसका मतलब यह नहीं कि बिना कचरा पैदा किए काम करना असंभव है
- technical debt इतिहास की सबसे तेज़ रफ़्तार से जमा हो रहा है, और Greg Jorgensen का 2007 का लेख "Introduction to Abject-Oriented Programming" भले व्यंग्य था, लेकिन यह Claude की कोड लिखने की शैली का सटीक वर्णन करता है
- सीनियर डेवलपर का code review अभी भी ज़रूरी है, लेकिन अगला चरण शायद AI code reviewer, AI refactorer, AI security auditor जैसी भूमिकाओं का होगा
-
आर्थिक स्थिरता पर सवाल
- बेहतर models, energy use और hardware cost कम किए बिना आर्थिक रूप से व्यवहार्य नहीं हो सकते
- जब विशाल मुफ़्त निवेश पूँजी खत्म होगी और subsidies बंद होंगी, तब coding agent बाज़ार को झटका लगेगा
- model size को 10 गुना बढ़ाने पर भी 10 गुना प्रदर्शन सुधार से कम मिलता है, यानी diminishing returns पहले ही दिख रहे हैं
- अगर dot-com युग जैसा 17 गुना आकार का निवेश bubble फूटता है, तो models चलाने की लागत कौन उठाएगा, यह सवाल रहेगा
- LLM की शुरुआती छलाँग अप्रत्याशित थी, योजनाबद्ध नहीं थी, और निर्णायक रूप से दोहराई नहीं जा सकी
-
ऊर्जा लागत और विनियमन
- समय के साथ energy cost घट सकती है, क्योंकि अधिक efficient models और hardware बनाने के incentives मौजूद हैं, लेकिन अभी हम gamers के लिए बने chips को दोबारा इस्तेमाल करने वाले चरण में हैं
- Kimi K2.5 जैसे models सामने आए हैं जो अपने hardware पर चल सकते हैं, लेकिन Jevons Paradox के कारण energy efficiency बढ़ने पर भी कुल energy cost बढ़ सकती है क्योंकि उपयोग और बढ़ेगा
- संभव है कि इस भविष्य को रोकने का एकमात्र साधन regulation हो, और अगर बिजली का बिल दोगुना हो जाए तो राजनीतिक इच्छाशक्ति पैदा हो सकती है
-
पूँजीवाद और automation की टक्कर
- पूँजीवादी अर्थव्यवस्था श्रम → वेतन → आय → उपभोग → राजस्व वाले आर्थिक चक्र पर निर्भर करती है, और पूँजी हमेशा लागत घटाने के लिए श्रम को बदलना चाहती है, लेकिन ऐसा करना अर्थव्यवस्था को ही तोड़ देता है
- अगर AI की सिफ़ारिशें CEO, वकीलों आदि के प्रदर्शन से बेहतर निकलती हैं, तो सवाल होगा कि bailout किसे मिलेगा
- अंततः जब संपत्ति का केंद्रीकरण परिवार चलाना असंभव बना देगा, तब या तो क़ानून और सामाजिक अनुबंध बदले जाएँगे, या फिर अराजकता होगी
-
open source और मानवीय सहयोग का मूल्य
- Pinafore प्रोजेक्ट performance, accessibility, security पर बिना समझौते के एक परफ़ेक्ट web app बनाने का प्रयोग था
- इसे KaiOS पर भी अच्छी तरह चलने लायक बनाया गया था, और contributors का स्वागत करने वाली संस्कृति बनाए रखी गई
- 6 महीने बाद शायद कोई भी vibe-coding से अपना Pinafore बना सकेगा, लेकिन उस प्रक्रिया में लोगों के बीच मिलने और सहयोग करने के अवसर गायब हो जाएँगे
- कोड वास्तविक दुनिया का मॉडल है; यह लोगों की ज़रूरतों और माँगों को व्यक्त करता है, और अगर आप वास्तविकता को नहीं समझते, तो उसका मॉडल नहीं बना सकते
- जब ChatGPT पहली बार आया, तो natural language processing के अपने अनुभव के आधार पर मुझे लगा कि यह बस कोई पुराना Markov model या next-word predictor जैसा ही होगा, लेकिन मुझे बेचैनी महसूस हुई, और पीछे मुड़कर देखने पर लगता है कि वह शायद एक coping mechanism था
- Pinafore प्रोजेक्ट performance, accessibility, security पर बिना समझौते के एक परफ़ेक्ट web app बनाने का प्रयोग था
17 टिप्पणियां
सच में.. दिवंगत आत्मा को शांति मिले।
बिना एक भी लाइन code लिखे बने प्रोजेक्ट्स work folder में बढ़ते जा रहे हैं।
सच्चाई यह है कि वह debugging भी AI खुद ही कर देगा
यहाँ एकमात्र तथ्य यह है कि आपकी राय तथ्य नहीं है।
तथ्य होने का भ्रम
गलतफ़हमियों को सुधारने का काम भी AI ही कर रहा है
मानवीय त्रुटि का पुनरावर्तन
Hacker News की राय
40 साल पहले कंप्यूटर जादू जैसे लगते थे, इसलिए मैंने programming शुरू की थी
अब हम तब से भी कहीं ज़्यादा जादुई समय में जी रहे हैं
कंप्यूटर से बातचीत करना, और व्यक्तित्व वाले systems की कल्पना करना—80 के दशक की fantasy अब हक़ीक़त बन गई है
कुछ लोग कहते हैं कि “हमने कुछ खो दिया है”, लेकिन मुझे तो लगता है कि हम computing के स्वर्ण युग में हैं
पुराने 8-bit micro की तरह, जब hardware instructions और example code साथ में मिलते थे, वह समय याद आता है
अब AI एक black box की तरह काम करता है, और subscription software, बंद hardware, और centralized infrastructure (GitHub, AWS आदि) का दबदबा है
natural language को pseudocode की तरह लिखने वाली abstraction दिलचस्प है, लेकिन वह अपने आप में modern computing की समस्याओं को ढकने के लिए काफ़ी नहीं है
40 साल बाद भी C, bash, grep बचे रहेंगे, लेकिन आज का ज़्यादातर SaaS या JS, Python, Go code गायब हो चुका होगा
dependencies इतनी ज़्यादा हैं कि 2050 में 2026 का repo चलाने के लिए बड़े बदलाव करने पड़ेंगे
AI इन समस्याओं को हल करेगा या उन्हें और जटिल बना देगा, यह अभी पता नहीं है
AI पहले ही open source patterns सीखकर दोहराव वाला code आसानी से बना रहा है
इंसानों की ज़रूरत अब भी creative कामों में है, लेकिन आगे कितने लोगों की ज़रूरत होगी, यह साफ़ नहीं है
अब हम ऐसे दौर में हैं जहाँ ‘मतलब’ डालो और शब्द मिल जाए
सच में जीने के लिए शानदार समय लगता है
अगर LLM खुद को सिर्फ़ code producer मानता है, तो वह ख़तरा बन सकता है
लेकिन अगर आप “क्या बनाना है, यह सोचने वाले इंसान” हैं, तो इसे उल्टा सहायक tool की तरह इस्तेमाल किया जा सकता है
अब मैं यह अलग कर पाता हूँ कि कौन सा काम LLM को देना है और कौन सा इंसानों को करना चाहिए
अगर AI मेरी जगह code लिख दे, तो वह आनंद ही चला जाता है
आख़िरकार अपने हाथ से बनाने की प्रक्रिया ही अहम है
AI में context समझने की क्षमता अभी भी कम है
spec लिखने की रफ़्तार ही bottleneck बन गई है, और पेशे का भविष्य अंधकारमय लगता है
robots के साथ काम करना दिलचस्प है, लेकिन खुद code लिखने का मज़ा खो गया है
मैं दुखी नहीं हूँ
बचपन से मेरा उद्देश्य सुंदर और उपयोगी चीज़ें बनाना रहा है
अब मैं शब्दों में systems design करता हूँ, और दोहराव वाले काम AI कर देता है
code सिर्फ़ एक माध्यम है; असल चीज़ अब भी ‘कुछ बनाने का आनंद’ ही है
चिंता यह है कि कहीं AI एक दिन ‘क्या बनाना है’ यह भी खुद तय न करने लगे
फिर भी मुझे भरोसा है कि chess की तरह इंसानी creativity की अहमियत बनी रहेगी
LLM के साथ काम करना वैसा है जैसे कोई कलाकार AI से चित्र बनवाए
नतीजे की क़ीमत हो सकती है, लेकिन सिर्फ़ उसके आधार पर खुद को ‘coder’ कहना मुश्किल लगता है
फिर भी repetitive और boring हिस्से AI को सौंप पाना अच्छा है
लेकिन company में productivity मायने रखती है, इसलिए खुद coding करने की गुंजाइश लगातार कम होती जा रही है
असली creativity अब भी इंसानों की ज़िम्मेदारी है
मैं अब भी elegant architecture design कर सकता हूँ, और वही मेरा आनंद है
यह विडंबना है कि tech industry अपनी ही automation से असहज हो रही है
हम हमेशा कहते आए हैं, “हम आपका काम automate कर देंगे”, और अब वही बात हम पर आ गई है
लोगों को replace करना नहीं, उनकी क्षमता बढ़ाना मेरा लक्ष्य था
मैं भी लेखक की बात से सहमत हूँ
खुद code लिखते हुए structure, performance, और testing पर सोचना मुझे आनंद देता है
बहुत से लोगों को “coding मज़ेदार नहीं” कहते सुनना अजीब लगता है
LLM से project जल्दी बनाए जा सकते हैं, लेकिन code की गहरी समझ का गायब होना असुविधाजनक लगता है
AI सहज रूप से अच्छा code नहीं लिखता, और उसे लगातार tuning की ज़रूरत पड़ती है
‘सिर्फ़ पैसे के लिए coding सीखने वाले’ लोग शायद इस बदलाव में और ज़्यादा संघर्ष करेंगे
मैं 3-4 साल से “बस 6 महीने और इंतज़ार करो” सुन रहा हूँ
अभी तक नौकरियाँ गायब भी नहीं हुईं, तो यह कुछ ज़्यादा ही जल्दी किया गया अंतिम संस्कार लगता है
6 महीने पहले की बहस अब बेकार लगती है
लोग कहते हैं, “हमारा craft ख़त्म हो गया”, लेकिन वह तो सिर्फ़ आपका craft है
साधारण web frontend हो तो LLM उसे replace कर सकता है, लेकिन सारी programming ऐसी नहीं होती
LLM का output एक lossy compressed result है, इसलिए उस अंतर को भरना अब भी इंसानों का काम है
इंसान अनुभव-आधारित अस्तित्व हैं
हमारा अनुभव जीवित रहने, संस्कृति, और पहचान का केंद्र है
इसलिए craftsmanship के मिटने पर दुख होना स्वाभाविक है
जैसे घोड़ा प्रशिक्षक या बग्घीवान की कला, वैसे ही programmers के craft को भी याद रखने की कीमत है
automation ज़रूरी है, लेकिन हानि के शोक की भी ज़रूरत है
पहले मुझे काव्यात्मक code पढ़ना अच्छा लगता था, लेकिन maintenance के बुरे सपने देखने के बाद मेरी सोच बदल गई
code lines (LOC) से प्रदर्शन मापने वाली संस्कृति ग़लत पैमाना है
सचमुच मुश्किल code दो पंक्तियों में भी बड़ी समस्या सुलझा सकता है
अगर LOC से आँके जाने वाले लोग LLM की वजह से गायब हो जाएँ, तो सच कहूँ तो मुझे ख़ुशी होगी
LOC गिनने वाले managers ज़्यादा दिन नहीं टिकते
मेरा एक दोस्त 30 साल के अनुभव के बाद FAANG छोड़कर startup शुरू कर चुका है,
और उसका कहना है कि AI से copy नहीं किए जा सकने वाले ideas बनाए जा सकते हैं, इसलिए अभी का समय सबसे अच्छा है
उसने इसे यूँ कहा: “जब सब लोग electric bicycle चला रहे हैं, मैं Tour de France की तैयारी कर रहा हूँ”
“AI 6 महीने बाद तुमसे बेहतर code लिखेगा” जैसी बातें
बस कई सालों से दोहराया जाने वाला वादा भर हैं
अगर आप आज की सीमाओं की ओर इशारा करें, तो जवाब बस इतना मिलता है: “थोड़ा और इंतज़ार करो”
हैरानी की बात है कि नकारात्मक राय बहुत ज़्यादा हैं।
मैं यह जानना चाहता हूँ कि AI services के अलावा, AI से बने ऐसे कौन-से वास्तविक, काम करने वाले products हैं। आधे-अधूरे SaaS को छोड़कर, क्या ऐसे products हैं? अगर embedded में हों, तो और भी ज़्यादा जानने की उत्सुकता है।
शोक..
मुझे यह भी लगता है कि "हाथ से लिखा गया कोड" को लेकर कुछ रोमांटिक कल्पना है।
"कम लिखकर ज़्यादा किया जा सकता है" वाली दिशा हमेशा से रही है,
और AI न भी हो, तब भी GC के आने के समय में भी कुछ ऐसा ही माहौल था।
हाथ से कोड लिखने पर भी हमें लगता है कि मेरे कोड में शायद कोई समस्या नहीं है, लेकिन जब समस्या आती है तो हम अंदर का कोड खोलकर देखते हैं या memory खंगालते हैं।
हाथ से prompt लिखने पर भी हमें लगेगा कि मेरे prompt में कोई समस्या नहीं है, लेकिन जब समस्या होगी तो अंदर का कोड खोलकर देखना शायद वैसे ही रहेगा।
बेशक, यह भी ज़्यादातर AI services से ही हल हो जाएगा।
मैं तो यह भी कल्पना करता हूँ कि हाथ से लिखा जाने वाला कोड किसी मायने में modern art बन जाए..? हाहा
मुझे तो उल्टा यह सोचकर खुशी हो रही है कि पढ़ने-सीखने की चीज़ें बहुत ज़्यादा बढ़ गई हैं।
जिन चीज़ों को लिखना मेरे लिए मुश्किल होता है, उन्हें भी लिखने के बाद मैं मेहनत से पढ़ाई कर रहा हूँ।
शुरू से ही मेरा मानना रहा है कि बड़े पैमाने की कंपनियों या सच में महत्वपूर्ण प्रोजेक्ट्स में आखिरकार सब कुछ इंसानों को ही देखना चाहिए, इसलिए सीखने वाले की नज़र से देखें तो यह इतना दिलचस्प हो सकता है।
अगर एक भू-चुंबकीय तूफ़ान का ज़ोरदार झटका लगे और धरती रीसेट हो जाए, तो स्वर्णयुग आ जाएगा।
Embedded में आज भी एक-दो lines की वजह से रात 2 बजे तक debugging करनी पड़ती है .. haha documentation में जो नहीं है, वो Claude Code को भी नहीं पता..
मैं embedded से कुछ कदम ऊपर के स्तर पर काम करने वाला, मुख्यतः Python-आधारित hardware control developer हूँ। कुछ हफ्ते पहले तक vibe coding का विरोध करना मुझे किसी तरह गर्व की बात लगता था, और जब debugging session सेट करना मुश्किल होता था तो लंबे-चौड़े लिखे हुए code को GPT में paste करके बस इतना कहना कि "यहाँ मुझसे जो गलती हुई है, वह पकड़ दो" — यही अधिक से अधिक LLM का इस्तेमाल था, वह भी मेरी ओर से एक तरह की रियायत के साथ।
Claude सेट किया, उसे समझाते हुए साथ में CLAUDE.md लिखा, और एक-दो बार इस्तेमाल करते-करते पता ही नहीं चला कि मैं सचमुच इस पर निर्भर होने लगा हूँ।
अब साधारण loop में भी break/continue की गलती हो जाएगी क्या, इसकी चिंता करने की ज़रूरत नहीं रही; अगर बातों में समझाना झंझट लगे तो जैसे-तैसे पहले लिख डालो और फिर कह दो, "कोई typo है क्या, देख लो"; CLAUDE.md में व्यवस्थित structure भर से यह जल्दी से context पकड़ लेता है; और फिर जब कोई नया subsystem implement करना होता है तो मन में आता है, "इसमें तो वैसे भी इसके भरोसे रहने लायक context नहीं है, तो यह खुद ही लिख देगा, है न?"
फिर सच में धीरे-धीरे डर लगने लगता है। इस तरह दिमाग खाली करके coding करते-करते अगर field में गया और ~मैंने लिखा हुआ~ इसने लिखा हुआ यह code मैं खुद ही समझ न पाया तो क्या होगा? यह तो उल्टा हल्की-सी चिंता है; असली बेचैनी यह है कि शायद मैं सचमुच vibe coding की इस लहर से पीछे छूट गया हूँ। और मैं तो वह इंसान था जिसे manual पढ़ना मज़ेदार लगता था, लेकिन अब न सिर्फ manual देखने की ज़रूरत कम होती जा रही है, बल्कि manual के ज़रिए जो ज्ञान मैंने जमा किया था, उसके ही निरर्थक हो जाने जैसा एक existential fear भी महसूस हो रहा है...
सच कहूँ तो, अभी मुझे बहुत डर लग रहा है..
गहरा शोक है। जिस Mac mini पर मैं अभी यह लिख रहा हूँ, उसके साथ अनगिनत debugging की रातें काटी हैं; भले ही वे जल्द ही AI agent से बदल दी जाएँगी, लेकिन लगता है कि इस दौर की याद आएगी।