2 पॉइंट द्वारा GN⁺ 2025-05-12 | 1 टिप्पणियां | WhatsApp पर शेयर करें
  • 19 साल Google में काम करने के बाद इस्तीफा दिया
  • Go programming language के विकास में लंबे समय तक केंद्रीय योगदान दिया
  • Go का व्यापक उपयोग हुआ और यह मुख्य programming language के रूप में स्थापित हुई
  • प्रोजेक्ट में compiler, build system, generics की शुरुआत सहित कई भूमिकाएँ निभाईं
  • माहौल और प्रोजेक्ट में बदलाव के कारण नई राह खोजने का फैसला किया

Google छोड़ने तक की यात्रा

  • 19 साल Google में काम करने के बाद कंपनी छोड़ने का फैसला किया
  • इस लंबे समय के अधिकांश हिस्से में सौभाग्य से Go programming language के विकास में शामिल रहा
  • Go की शुरुआत Rob Pike, Ken Thompson, Robert Griesemer ने 2007 की शरद ऋतु में की थी
  • जून 2008 में टीम में शामिल हुआ और लगभग उसी समय Russ Cox भी जुड़े
  • बेहतरीन लोगों और दिलचस्प प्रोजेक्ट्स के साथ काम कर पाना अपने लिए बड़ी खुशकिस्मती मानता हूँ

Go भाषा की वृद्धि और उम्मीदों से बढ़कर सफलता

  • पिछले कई वर्षों में Go का उपयोग बहुत बड़े पैमाने पर हुआ
  • अब यह ऐसी ‘general-purpose programming language’ बन चुकी है जिसे हर programmer अपनी ज़रूरत के अनुसार चुन सकता है
  • शुरुआत में लगा था कि अगर Go दूसरी भाषाओं और environments को कुछ उपयोगी ideas दे सके, तो वही बड़ी उपलब्धि होगी
  • लेकिन एक व्यापक रूप से उपयोग होने वाली भाषा बन जाना शुरुआती टीम की अपेक्षाओं से कहीं आगे की उपलब्धि थी

Go प्रोजेक्ट में प्रमुख भूमिकाएँ और योगदान

  • Go प्रोजेक्ट की शुरुआत GCC compiler में Go frontend जोड़ने से की
  • उस समय Go के पास Inferno C compiler पर आधारित अपना compiler भी था
  • दो अलग-अलग compilers होने से भाषा की परिभाषा को अधिक स्पष्टता मिली
  • internal build system और SWIG tool में Go support जोड़ने के साथ टीम प्रबंधन की भूमिका भी निभाई
  • Robert Griesemer के साथ मिलकर language change proposals विकसित किए और Go 1.18 (2022) में generics लाने में योगदान दिया

समस्या सुलझाने का तरीका और सीमाएँ

  • वर्तमान और निकट भविष्य की स्पष्ट समस्याओं को जल्दी पहचानकर उनके समाधान में योगदान दिया
  • लेकिन जिन समस्याओं को लोगों ने अभी तक आजमाया नहीं था और इसलिए जिनका प्रत्यक्ष अनुभव नहीं था, जैसे Go module proxy, Go vulnerability database जैसी innovative ideas, उन तक पहुँचने में अपेक्षाकृत धीमा रहा
  • फिर भी मानता हूँ कि प्रोजेक्ट की सफलता में मेरा अपना काम करने का तरीका कुल मिलाकर उपयोगी रहा

बदलाव और विदाई का निर्णय

  • Google, Go और पूरा computer programming environment—तीनों में बड़ा बदलाव आया
  • पिछले एक साल में महसूस हुआ कि अब मैं Google के Go प्रोजेक्ट के लिए उपयुक्त नहीं रह गया हूँ
  • इसलिए जीवन के अगले चरण की ओर बढ़ने की ज़रूरत को स्वीकार किया

आगे की योजनाएँ और Go के बारे में विचार

  • Go के प्रति रुचि और लगाव अब भी बना हुआ है
  • कोई भी programming language पूरी तरह अंतिम रूप में स्थिर नहीं रहती; बदलते माहौल के साथ उसका विकसित होना ज़रूरी है
  • Go जैसी समृद्ध standard library वाली languages इस बदलाव के प्रति खास तौर पर संवेदनशील होती हैं
  • फिलहाल कुछ समय आराम करूँगा, लेकिन आगे चलकर फिर से Go में योगदान देना चाहूँगा

1 टिप्पणियां

 
GN⁺ 2025-05-12
Hacker News टिप्पणियाँ
  • जब मैं Google में काम करता था, Ian Lance Taylor मेरे रैंडमली असाइन किए गए code reviewers में से एक थे। वह हमेशा विनम्र, स्पष्ट और जानकारीपूर्ण रहते थे। Taylor और प्रोजेक्ट दोनों के बारे में मेरी बहुत अच्छी छाप बनी, और यह कुछ वैसा लगा जैसा YC संस्थापकों को खुद customer support करने की सलाह देता है। सच कहूँ तो, मेरे code review पर उनके initials दिखाई देना ही रोमांचक लगता था। golang पर किए गए आपके सारे काम के लिए धन्यवाद
    • ऐसी प्रशंसा सुनना सचमुच शानदार है। किसी को “विनम्र व्यक्ति” के रूप में याद किया जाना ताज़गीभरा लगता है। मैंने भी जीवन का एक बहुत महत्वपूर्ण सबक सीखा है। बुद्धिमान या 10x engineer कहलाने से कहीं बेहतर है कि लोग आपको विनम्र, दयालु और अच्छा इंसान कहें
    • Go में एक “अहमियतहीन” बाहरी contributor के नज़रिए से कहूँ तो (करीब छह proposals और PRs पर काम किया), मैं उन मामलों के बारे में भी यही कह सकता हूँ जो अंत में drop या reject हो गए। वह विनम्र, स्पष्ट, जानकारीपूर्ण और जिज्ञासु थे। इस प्रोजेक्ट में योगदान देना बेहद अच्छा अनुभव था, और उसमें Ian का बड़ा योगदान था। Go जैसे बड़े प्रोजेक्ट में ऐसा अनुभव देना बहुत बड़ी बात है
    • मुझे Go की code Readability प्रक्रिया भी बहुत पसंद थी। इस प्रक्रिया ने मुझे कहीं बेहतर programmer बनाया। पहले Google में Python code readability approval भी लिया था, और “यह बड़ा बदलाव (CL) संभालो, और अगर प्रक्रिया के अंत तक बेहतर हो जाए तो pass” वाला तरीका Go जितना उपयोगी नहीं था। Go के अपने नियम बनाकर उन्हें लागू करना मेरे लिए बहुत मददगार रहा (हालाँकि जब देर रात call आती थी, तब बस यही लगता था कि इस code को जल्दी check in करके सो जाऊँ)
    • मेरा अनुभव भी ऐसा ही था, बस मेरे आख़िरी c++ code readability change के समय सामने Titus Winters थे। मैंने उनकी एक टिप्पणी पर अपनी राय भी दी थी। सच में, इतना सक्षम व्यक्ति मेरे काम को acknowledge करे, यह बहुत अच्छा लगा
  • Go community और व्यापक programming community के लिए Ian की सेवाओं को बढ़ा-चढ़ाकर बताना भी कम होगा। उन्होंने सिर्फ gccgo ही नहीं, gold linker भी बनाया, compiler toolchain पर बहुत-से ब्लॉग लिखे, और gcc codebase के बहुत बड़े हिस्से को maintain किया। और शायद बहुत-सी ऐसी चीज़ें भी कीं जिनके बारे में मुझे पता नहीं। मुझे Ian के साथ कई बार email पर बातचीत करने का मौका मिला, और वह हमेशा मेरे लिए बड़ी प्रेरणा रहे। Google में व्यस्त रहने के बावजूद, उन्होंने मेरी emails और patches पर हमेशा insightful feedback दिया। Go भाषा को लेकर मेरी भावनाएँ मिश्रित हैं, लेकिन मुझे यक़ीन है कि Ian के जाने से भाषा पर भी बुरा असर पड़ेगा। मूल Go team में Bell Labs जैसा माहौल था — कुछ लोग, जो कंप्यूटर को अंदर तक समझते थे, assembler, linker, दो compilers, language spec, documentation generator, build system, और एक विशाल standard library तक सब कुछ बना रहे थे। अब Google का महत्व बढ़ने के साथ चीज़ें कुछ फीकी और ज़्यादा corporate लगने लगी हैं। Ian के इस्तीफ़े के संदेश में मुझे यही सांस्कृतिक बदलाव महसूस हुआ, और सोचता हूँ कि इसके पीछे कौन-सा trigger रहा होगा। उम्मीद है Ian अच्छी तरह आराम करेंगे, और आगे वह जो भी प्रोजेक्ट करें, मैं उसे follow करूँगा
    • मेरा मानना है कि Go के compiler toolchains का ठीक से काम करना redundancy और functionality verification दोनों के लिए बेहद महत्वपूर्ण है। लेकिन मैं यह जानने को उत्सुक हूँ कि क्या लोग या organizations वास्तव में gcc-go का इस्तेमाल किसी विशेष purpose के लिए करते हैं
  • "Gooogle बदल गया है, Go बदल गया है, और पूरा programming environment भी बदल गया है। पिछले एक साल में यह साफ़ हो गया है कि अब मैं Google में Go project के लिए उपयुक्त नहीं हूँ। मुझे जाना चाहिए" यह हिस्सा थोड़ा चौंकाने वाला था। वह इसे छोड़ भी सकते थे या कुछ और कह सकते थे, इसलिए इसे इस तरह लिखने का मतलब है कि कोई असली वजह ज़रूर रही होगी
    • पिछले कुछ सालों में मैंने Google से बहुत-से senior engineers को जाते देखा है। managers का दबाव बहुत बढ़ गया है और trust बहुत कम हो गया है। L7 और उससे ऊपर के engineers के लिए “पर्याप्त impact” दिखाने का मतलब अब AI projects में जाना हो गया है। दबाव बढ़ने के साथ internal conflicts भी बढ़ गए हैं, और सिर्फ trust काफी नहीं — अब ज़रूरी है कि संबंधित documents के शीर्ष पर आपका नाम हो। 2023 से पहले L7/L8 स्तर के engineers आम तौर पर नई opportunities या retirement के कारण जाते थे, लेकिन अब ज़्यादातर लोग काम के माहौल से थककर जा रहे हैं। हालात वाकई खराब हैं
    • अगर मैं कहूँ... असली बुनियाद तो पहले ही उत्साही engineers ने तैयार कर दी थी। अब big tech बस पैसे कमाने की जगह है, long-term vision में कोई रुचि नहीं। न जुनून है, न कल्पनाशीलता; लोग बस रटकर नौकरी पाते हैं, फिर PIP या layoff के बाद दूसरी बड़ी कंपनी में चले जाते हैं। ऐसे लोगों से भरा पड़ा है। पुराने Google जैसे startups में बेहतर अवसर हो सकते हैं
    • जिस क्षण Sundar Pichai जैसे औसत व्यक्ति को Google का प्रमुख बनाया गया, उसी समय साफ़ हो गया कि Google को सिर्फ profit-generating company में बदलना और उसकी मूल संस्कृति मिटाना उद्देश्य था
    • जब भी मैं ऐसे “FAANG में 20 साल काम करके जा रहा हूँ” वाले पोस्ट देखता हूँ, मुझे लगता है कि असल कहानी यह है कि कंपनी के कई गुना बढ़ने से वह इतने अमीर हो चुके हैं कि अब अगर ऑफिस जाने का मन न हो तो न भी जाएँ — इसलिए जा रहे हैं
    • engineering और PhD-स्तर के researchers के प्रति सम्मान खत्म हो गया है, और CEO केवल profit, revenue और commercialism पर अटका हुआ है। जैसा कहा गया, Sundar Pichai की vision की कमी और शुरुआती Google culture को बनाए रखने में अरुचि ही समस्या रही है
    • दूसरी बार पढ़ने पर लगा कि “Gooogle” में एक extra o शायद typo नहीं, बल्कि पुराने Google search results page की उस pagination का जानबूझकर संदर्भ हो सकता है जहाँ o बढ़ते जाते थे
    • मुझे तो यह देखकर हैरानी होती है कि किसी को यह चौंकाने वाला लगता है। Google के Emerald Sea के समय पूरी तरह बदल जाने की बात पूर्व Googlers के बीच पहले से जानी-पहचानी है। इतने बड़े संगठन में यहाँ-वहाँ कुछ अच्छे teams अब भी हैं, लेकिन कंपनी दस साल से ज़्यादा समय से ठहराव और गिरावट की राह पर है
    • मेरा मानना है कि management ने अब सचमुच दबाव बनाना शुरू कर दिया है। अब non-technical managers का बोलबाला है
    • पिछले 10 सालों से यही कहानी दोहराई जा रही है। 2010s के उत्तरार्ध की massive hiring और 2020s की शुरुआत की hiring boom के बाद, जब असाधारण प्रतिभा dilute हो गई, Google लगातार नीचे गया है। engineers के औसत स्तर में इस गंभीर गिरावट ने compensation, benefits और सबसे बढ़कर autonomy में कमी ला दी है। bureaucracy और political infighting हर जगह है। 10 साल पहले जब मैं निकला था, तब 20% project time में Gmail जैसी service बनाना सोच से बाहर था। 20% rule लगभग गायब हो चुका है, और निकम्मे PMs ने अपनी turf wars में नए projects को मार डाला। अब Google B, C, D-grade talent से भर गया है, पूरी तरह irrecoverable हो चुका है, और Intel, Cisco, IBM जैसे रास्ते पर है। कुछ शानदार लोग औसत कर्मचारियों की भीड़ में धीरे-धीरे टूट रहे हैं
    • Ian Yale से हैं और संभवतः पहले से अरबपति हैं, और आम लोगों के लिए उनमें कोई खास सहानुभूति नहीं होगी। उन्होंने बस अपना FatFIRE लक्ष्य हासिल किया और निकल गए
  • 2016 में जब मैं Google में काम कर रहा था, हमारी पूरी team golang इस्तेमाल करती थी। अपने पहले प्रोजेक्ट के दौरान मुझे Ian से कई बार code readability approval मिला। एक दिन approval के साथ कुछ follow-up requests भी थीं, लेकिन मैं उन्हें देखे बिना ही changes लागू कर बैठा। Ian ने फिर से message करके मुझे उन्हें ठीक करने को कहा। बाद में पता चला कि वह core Golang developers में से एक थे। उन्हें इतना करने की ज़रूरत नहीं थी, फिर भी वह बेहद विनम्र रहे, और इसी वजह से वह याद रह गए। जिस तरह उन्होंने वास्तविक usage को देखकर मूल समस्याएँ खोजने में इतना समय लगाया, वह सचमुच प्रशंसनीय है
  • एक Go developer के रूप में, मैं इस भाषा और community के लिए आपके विशाल योगदान के लिए गहरी कृतज्ञता व्यक्त करना चाहता हूँ। आपके काम की वजह से Go आज इतनी productive और आनंददायक भाषा बन सकी है, और इसने मेरे सहित अनगिनत engineers को बेहतर software बनाने के लिए प्रेरित किया है। आपकी प्रतिबद्धता के लिए धन्यवाद, और Go developers की अगली पीढ़ी के लिए नए रास्ते खोलने के लिए आभार। आगे की आपकी यात्रा के लिए शुभकामनाएँ
  • "Gooogle बदल गया है, Go बदल गया है, और पूरा computer programming environment बदल गया है। पिछले एक साल में यह स्पष्ट हो गया है कि अब मैं Google के Go project के लिए उपयुक्त नहीं हूँ। मुझे जाना चाहिए" इस हिस्से पर थोड़ी और व्याख्या होती तो अच्छा होता। लगता है कि कोई वास्तविक बदलाव हुआ है, और Ian ने उसे पहचान लिया है
    • शायद उनसे कहा गया होगा कि इसे और AI-जैसा बनाइए। कुछ ऐसा, “Go compiler errors में Gemini जोड़ो, नहीं तो चले जाओ”
    • मुझे नहीं लगता कि और व्याख्या की ज़रूरत है। यह सब पहले से सार्वजनिक रूप से जाना-पहचाना है। antitrust मुद्दे, short-term profit पर केंद्रित leadership, लंबे समय तक tech leader रही कंपनी का Microsoft/IBM जैसी साधारण corporation में बदलना, अब trends set करने के बजाय सिर्फ trends (AI सहित) का पीछा करना, विवादास्पद governments के साथ काम करके “Do no evil” सिद्धांत छोड़ देना, और अंततः झूठ तथा निंदक माहौल से तंग आकर stock options vest होने के समय निकल जाना
  • यहाँ असली सवाल यह है कि क्या 2005 वाले Google जैसी कोई कंपनी आज भी मौजूद है। क्या सचमुच OpenAI वह भूमिका निभा रहा है, या फिर ऐसी कोई चीज़ है ही नहीं? और यह भी सवाल है कि जिस दौर को इतने engineers स्वर्णयुग की तरह याद करते हैं, वह वास्तव में कितने समय तक चला था
    • मेरे हिसाब से 2005 वाला Google फिर कभी नहीं आ सकता। उस समय बुनियादी तकनीक तेज़ी से अधिक शक्तिशाली हो रही थी, और जिन्होंने उस दौर में रचनात्मक निवेश किया, वे बेहद अमीर बन गए। मैं 2022 में Google में शामिल हुआ और जल्द ही निकल गया, लेकिन एक newcomer के तौर पर भी साफ़ दिख रहा था कि सिर्फ golden age ही खत्म नहीं हुई, उसके बाद का दौर भी समाप्ति पर है। माहौल “बेहतर products बनाओ” वाला नहीं था, बल्कि “कोई समस्या मत पैदा करो, बस 1~2% सुधार कर दो” जैसा था
    • Google जैसी कंपनी इस युग में मौजूद नहीं है। Bell Labs जैसे समकक्ष team भी नहीं हैं
    • मौजूद नहीं है। नया बनाना संभव है। इस पीढ़ी की कंपनियों की समस्या technology नहीं, culture है
    • एक बाहरी दर्शक के हिसाब से, golden age लगभग 2013~2014 में खत्म हो गई थी। tech company culture में capitalism इतना हावी हो चुका है कि वैसी innovation और experimentation की भावना का लौटना मुश्किल है। अब बस मौजूदा मशीन पर तेल लगाने जैसा काम है
    • ऐसी कंपनी अभी नहीं है / शायद हमें अभी दिख नहीं रही। आप एक ऐसे उद्योग की बात कर रहे हैं जो $1 trillion से अधिक तक बढ़े, और search जैसी अनिवार्य tool देने वाली company हो
    • अब भी Google ही है
  • दिलचस्प बात यह है कि ब्लॉग पर लगभग कुछ भी नहीं लिखा है। जिस पोस्ट को मैं सच में पढ़ना चाहूँगा, वह “The 2016 Election” का follow-up है
  • जब key लोग chrome और golang projects से जा रहे हैं, तो साफ़ है कि management अच्छा काम नहीं कर रहा
    • और भी संकेत हो सकते हैं, लेकिन यह तथ्य कि यह व्यक्ति 19 साल काम करने के बाद जा रहा है, नज़रअंदाज़ नहीं किया जा सकता
    • सब कुछ AI पर दाँव पर लगाया जा रहा है। management भी जानता है कि यह अस्तित्व की लड़ाई है
  • मैं कोई conspiracy theory गढ़ना नहीं चाहता, लेकिन सोच रहा हूँ कि क्या यह मामला Ian Hickson के Google/Flutter team छोड़ने से जुड़ा हो सकता है। Hickson ने बहुत स्पष्ट रूप से कहा था कि मूल समस्या Sundar Pichai की visionहीन leadership, शुरुआती Google culture को बनाए रखने में उनकी अरुचि, और अक्षम middle managers का फैलाव है। उदाहरण के लिए Jeanine Banks कहती थीं कि उनके पास strategy है, लेकिन वर्षों तक सुनने के बाद भी मैं एक बार भी समझ नहीं पाया कि उसका वास्तविक मतलब क्या था। उन्होंने team की expertise से कोई संबंध न होने पर भी engineers को parts की तरह replace किया, और feedback बिल्कुल नहीं लिया। सुना है कि दूसरे organizations ने Banks जैसे लोगों से होने वाले नुकसान को सीमित रखने के लिए अधिक politically savvy leaders के ज़रिए उन्हें manage करना सीख लिया था। जिसने Google का सर्वश्रेष्ठ दौर देखा हो, उसके लिए यह नई वास्तविकता बेहद निराशाजनक रही होगी
    • engineers को अमानवीय तरीके से सिर्फ resources की तरह treat किया जाता है, और team members की इच्छा की परवाह किए बिना उन्हें उनकी skills से असंगत जगहों पर डाल दिया जाता है। सिर्फ वही नहीं — एक दूसरे executive ने core Python team को निकालकर उसकी जगह कम वेतन वाली TypeScript team रख दी, और बाद में उसे भी उससे कम वेतन वाले local नए hires से भर दिया
    • उनकी division दावा करती थी कि उसके पास “strategy” है, लेकिन वास्तव में चाहे जितना समझाया जाए, कुछ समझ नहीं आता था। यह बात मेरे अनुभव से भी मेल खाती है। Google में upper middle management से VP, और कभी-कभी SVP तक की communication अत्यंत अबूझ होती है — सब कुछ कहती हुई लगती है, लेकिन वास्तव में कुछ नहीं कहती। जैसे यह बताना कि बदलाव बहुत बड़ा है, और साथ ही यह ज़ोर देना कि कुछ भी नहीं बदला। मेरे हिसाब से यह direction, vision या goals की भाषा नहीं, बल्कि दूसरे managers पर प्रभाव डालने की packaging language है। इसका इस्तेमाल performance reviews में credit लेने के लिए होता है। Google में एक मज़ाक भी है: “अगर आप 5 सेकंड में यह नहीं बता सकते कि आप किस team में हैं, तो आप Googler हैं।” engineers बेहद सक्षम हैं (इसी वजह से impostor syndrome भी बहुत है), लेकिन व्यवहार में लगता है कि सब बिना दिशा के अलग-अलग दिशाओं में जा रहे हैं। मुझे नहीं पता बड़ी companies कैसे चलाई जाती हैं, लेकिन शुरुआत शायद चीज़ों को आसान भाषा में समझाने से होनी चाहिए। यहाँ तक कि इस corporate language का अनुवाद करने वाले लोग भी शायद साझा वास्तविकता बना नहीं पाते
    • लोग कंपनी में शामिल होते हैं, लेकिन छोड़ते किसी अनुचित (या खराब) manager की वजह से हैं
    • यह अनुभव साझा करने के लिए धन्यवाद। मेरी industry में सबसे बड़ा डर यही है कि शायद हमें शुरुआती Google जैसी company फिर कभी देखने को न मिले। Pichai के company head बनने तक तो शायद नाम भी बदल देना चाहिए था। अब अधिकांश ex-Googlers ने एक बिल्कुल अलग organization के तहत काम किया है
    • हाँ, वही policy जिसमें लोगों को सिर्फ “resources” माना जाता है
    • मेरा अनुभव Google का नहीं, लेकिन इसी आकार की एक अमेरिकी company का था। strategy वाली बातें वहाँ भी हूबहू लागू होती हैं। अक्षम middle management पर आलोचना भी वैसी ही है। अंदरूनी तौर पर उस स्थिति को पैदा करने वाली politics के लिए एक औपचारिक शब्द है, लेकिन अगर मैं यहाँ लिखूँ तो निश्चित रूप से आलोचना होगी, इसलिए नहीं लिख रहा। यह ऐसी व्यवस्था है जिसमें strategy न रखने की policy, project outcomes को मापने की policy न होना, job roles और responsibilities की अवधारणा को खत्म करना, और “हर किसी को ज़रूरत के मुताबिक कूद पड़ना चाहिए” जैसा ढाँचा शामिल है