- मुख्य बिंदु:
- YouTube वेब डेवलपमेंट टीम को IE6 सपोर्ट के कारण अत्यधिक maintenance burden और तकनीकी समस्याओं का सामना करना पड़ा।
- औपचारिक support बंद करने के बजाय, IE6 users के लिए upgrade के लिए प्रेरित करने वाला एक जानबूझकर अस्पष्ट warning banner चुपचाप deploy किया गया।
OldTuber नामक special privilege का दुरुपयोग करके internal approval process को bypass किया गया और code deploy करने में सफलता मिली।
- मीडिया और Google की दूसरी internal teams (Google Docs) ने इस कदम की नकल की या इसे सकारात्मक रूप से लिया, जिससे IE6 हटाने का अभियान तेज़ हुआ और एक महीने में YouTube के IE6 users आधे रह गए।
परिचय
- पृष्ठभूमि: YouTube की चौंकाने वाली growth के पीछे 10 साल पहले की एक घटना है, जिसमें वेब डेवलपमेंट टीम ने अंदरूनी तौर पर IE6 (Internet Explorer 6) सपोर्ट खत्म करवाने की योजना बनाई थी।
- समस्या की जड़: IE6 property selectors या खाली
src attribute वाले <img> tags जैसी चीज़ों के कारण browser crash या server load बढ़ने जैसी समस्याएँ पैदा करता था, और डेवलपमेंट टीम के लिए तकनीकी आपदा था।
- maintenance burden: मुख्य sprint cycle के 1–2 हफ्ते IE6 bug fixes में चले जाते थे, और उस समय कुल users में लगभग 18% IE6 इस्तेमाल कर रहे थे, इसलिए आधिकारिक रूप से support बंद करना संभव नहीं था।
- साज़िश की शुरुआत: डेवलपमेंट टीम ने लंबे समय की भारी परेशानी के बाद users की नाराज़गी के बिना IE6 को हटाने का तरीका ढूँढना शुरू किया, और औपचारिक बंदी के बजाय उसे 'धमकाने' का विचार सामने आया।
मुख्य भाग
1. IE6 upgrade banner रणनीति की योजना और क्रियान्वयन
- banner योजना: वीडियो प्लेयर के ऊपर एक छोटा banner लगाने का फैसला किया गया, जो सिर्फ IE6 users को दिखे।
- message: "आपके browser का support जल्द ही चरणबद्ध तरीके से समाप्त किया जाएगा। कृपया किसी अधिक modern browser में upgrade करें।"
- विशेषता: text को जानबूझकर अस्पष्ट रखा गया था और कोई deadline नहीं दी गई थी, ताकि बिना वास्तविक बंदी का वादा किए users को upgrade के लिए प्रेरित किया जा सके।
- browser links: इसमें Chrome, Firefox, IE8 आदि शामिल थे, और इन्हें random order में दिखाने के लिए implement किया गया था।
OldTuber privilege का दुरुपयोग:
- privilege की पृष्ठभूमि: Google द्वारा अधिग्रहण के तुरंत बाद, शुरुआती YouTube engineers ने नए Google code policies को bypass करके तेज़ी से code commit करने के लिए एक special privilege (
OldTuber) बनाया था, और लेखकों में से कुछ के पास यह अधिकार था।
- गुप्त deployment: टीम के सदस्यों ने इसी
OldTuber privilege का उपयोग करके management की औपचारिक code review process को bypass किया और banner code को production environment में deploy कर दिया।
2. अप्रत्याशित परिणाम और फैलाव को तेज़ करने वाले कारक
- PR team की प्रतिक्रिया: banner जारी होते ही प्रमुख IT मीडिया ने इस मामले को कवर किया और YouTube को 'तेज़ और सुरक्षित web' का अग्रणी बताने वाली सकारात्मक कहानी बन गई।
- परिणाम: PR team अप्रत्याशित सकारात्मक media reaction से संतुष्ट थी और बाद की briefings में सहयोग करने लगी।
- legal team की चिंता और स्पष्टीकरण: घबराए हुए वकीलों ने चिंता जताई कि Chrome के प्रति पक्षपात anti-competitive behavior जैसा लग सकता है, और उन्होंने banner हटाने की मांग की।
- समाधान: लेखक ने दिखाया कि browser order randomly तय होता है, जिससे यह चिंता दूर हो गई।
- Google Docs team द्वारा नकल: managers की डाँट की उम्मीद थी, लेकिन कोई नहीं आया; उल्टे Google Docs टीम ने YouTube का banner देखकर अपने managers को मनाया और ऐसा ही IE6 warning banner खुद launch कर दिया।
- प्रभाव: Google Docs टीम के इस कदम ने उल्टे YouTube banner की उत्पत्ति को धुंधला बना दिया, और दूसरी Google teams के IE6 हटाने की मुहिम में शामिल होने का trigger बन गया।
- management की मौन स्वीकृति: बाद में YouTube engineering management को पूरी बात पता चली, लेकिन उसने 'परिणाम साधनों को सही ठहराते हैं' मानते हुए अनौपचारिक रूप से इस कार्रवाई को स्वीकार कर लिया।
3. IE6 users में तेज़ गिरावट
- तेज़ हुआ हटाव: YouTube, Google Docs और कई अन्य Google services द्वारा IE6 banner दिखाने से पूरे web में IE6 हटाने की लहर फैल गई।
- सांख्यिकीय सफलता: banner launch होने के सिर्फ एक महीने के भीतर YouTube का IE6 user base आधा रह गया, और दुनियाभर का IE6 traffic 10% से अधिक घट गया।
- नतीजा: डेवलपमेंट टीम ने बिना किसी सज़ा या औपचारिक कार्रवाई के अपनी योजना सफल बना ली, और बाद में वादा किया कि फिर कभी ऐसा unauthorized deployment नहीं करेंगे।
निष्कर्ष
- अंतिम आकलन: YouTube वेब डेवलपमेंट टीम ने तकनीकी कठिनाइयों से उपजी निराशा को दूर करते हुए, internal special privileges और अप्रत्याशित बाहरी प्रतिक्रिया का उपयोग कर IE6 जैसे तकनीकी अवरोध को हटाने में सफलता पाई।
- मुख्य सीख: यह घटना दिखाती है कि जोखिम उठाकर काम करने वाली छोटी टीम की कार्रवाई विशाल संगठन और पूरे web ecosystem में तेज़ और सकारात्मक बदलाव ला सकती है।
8 टिप्पणियां
कमाल है
फिर भी, आखिरकार लगता है कि उन्होंने अच्छा काम किया।
असल में, IE7 को हटाने के लिए (जिसे MS अब सपोर्ट नहीं करता था) हमारे देश की बड़ी साइटों ने भी यह तरीका इस्तेमाल किया था—IE7 से एक्सेस करने पर बैनर दिखाना। मुझे याद है कि इसका असर काफी जबरदस्त था।
> इसमें Chrome, Firefox, IE8 आदि शामिल थे, और इसे इस तरह लागू किया गया था कि वे रैंडम क्रम में दिखें।
खैर, यह तो एक तरह से अचानक किया गया कदम था, तो कंपनी के नज़रिए से इसमें ऐसा क्या फ़ायदा था कि उन्होंने इसे अनदेखा किया, यह जानने की जिज्ञासा है।
चूंकि यह लोगों को Chrome पर माइग्रेट कराने के लिए भी नहीं था, इसलिए Google को कोई खास फ़ायदा हुआ हो, ऐसा नहीं लगता।
या फिर क्या उन्होंने यह माना होगा कि IE यूज़र्स में से सभी नहीं तो कुछ हिस्से को भी अपने पास खींच लेना ही पर्याप्त फ़ायदा है?
मेंटेनेंस भी एक resource है, और resource बचाया गया तो कंपनी के नज़रिए से यह फ़ायदेमंद ही नहीं होगा क्या।
> मुख्य sprint cycle के 1~2 हफ्ते IE6 bug fixes पर लगाए जाते थे
ऐसा कहा गया है, हालांकि मुझे नहीं पता Google का sprint cycle कैसा होता है, लेकिन अगर एक महीना मानें तो कम से कम 25% की बचत...
यह सोचें कि दूसरे teams ने भी इसे अपनाया, तो साफ है कि web development करने वाली लगभग सभी teams अपना समय बर्बाद कर रही थीं।
असल में इसे उस काम के तौर पर भी देखा जा सकता है जो किसी न किसी समय management को करना ही था, लेकिन YouTube team ने इसकी जिम्मेदारी उठाकर कर दिखाया lol
नतीजे साधनों को जायज़ ठहराते हैं।
इजाज़त लेने से माफ़ी मांगना आसान है।
ग्रेस हॉप्पर:
"If it's a good idea, go ahead and do it. It's much easier to apologize than it is to get permission."
"अगर कोई अच्छा आइडिया सूझे, तो पहले उसे कर डालो। अनुमति लेने की तुलना में पहले कर के बाद में माफ़ी माँगना कहीं आसान है।"