Apple डेवलपर्स का ‘Feedback Assistant’ बॉयकॉट
(lapcatsoftware.com)- Apple डेवलपर कम्युनिटी में Feedback Assistant बॉयकॉट का प्रस्ताव आया है, जिसमें समस्या सुलझने तक आधिकारिक bug reporting system में नए bugs सबमिट न करने की कार्ययोजना रखी गई है
- भाग लेने का तरीका यह है कि पहले Feedback Assistant की अपनी समस्याओं की report करें, फिर नए Feedback सबमिट करना बंद करें और मौजूदा requests पर बॉयकॉट में हैं ऐसा जवाब दें
- नाराजगी मुख्य रूप से bug reporting system के संचालन के तरीके पर केंद्रित है—reproduction status न बताना, बिना सूचना बंद करना, reopen न कर पाना, जरूरत से ज्यादा sysdiagnose मांगना, web submissions बंद करना, search न होना आदि
- WebKit, GitHub पर Apple के open source projects, और social media·blogs·podcasts में bugs शेयर करना बॉयकॉट के दायरे से बाहर है
- लक्ष्य यह दिखाना है कि Apple बाहरी developers के unpaid QA श्रम पर निर्भर है, और यह पुष्टि करना है कि developers Feedback Assistant के बिना भी अपना काम और आजीविका जारी रख सकते हैं
बॉयकॉट में भाग लेने का तरीका
- Apple के Feedback Assistant का बॉयकॉट तुरंत शुरू किया जा रहा है, और सभी Apple developers को इसमें शामिल होने की सलाह दी गई है
- प्रस्तावित प्रक्रिया तीन चरणों में है
- Feedback Assistant के Developer Tools & Resources सेक्शन में नया Feedback सबमिट करें और समस्याओं की सूची के साथ बताएं कि समाधान होने तक बॉयकॉट करेंगे
- Apple द्वारा समस्या हल किए जाने तक कोई अन्य नया Feedback सबमिट न करें
- यदि Apple मौजूदा Feedback पर जवाब मांगता है, तो बताएं कि आप बॉयकॉट में हैं और पहले चरण में सबमिट किए गए Feedback नंबर का संदर्भ दें
- पहले चरण का Feedback जितना संभव हो, हर व्यक्ति अपने तरीके से अलग लिखे, यह बेहतर माना गया है
- उद्देश्य यह है कि Apple बॉयकॉट से जुड़े Feedback को process करे और समझे कि developers गंभीरता से कार्रवाई कर रहे हैं
बॉयकॉट का दायरा और अपवाद
- बॉयकॉट केवल Feedback Assistant तक सीमित है
- bugs के बारे में social media, blogs, podcasts पर बात करना जारी रखा जा सकता है
- Apple के दूसरे public bug reporting systems इसमें शामिल नहीं हैं
- दूसरे bug reporting systems को कई मायनों में Feedback Assistant से बेहतर माना गया है
- पहला लक्ष्य Feedback Assistant को ही बदलना है, जिसे अब तक देखे गए सबसे hostile bug reporter के रूप में आलोचना मिली है
Feedback Assistant में बार-बार आने वाली समस्याएं
- Apple सटीक reproduction steps और sample Xcode project मिलने के बाद भी यह नहीं बताता या बताने से इनकार करता है कि reported bug को reproduce किया जा सकता है या नहीं
- developer के लिए यह तय करना मुश्किल हो जाता है कि Apple Feedback को गंभीरता से ले रहा है या bureaucracy के जरिए समय खींच रहा है
- अतिरिक्त जानकारी मांगे बिना या बंद करने की सूचना दिए बिना Feedback
Investigation complete - Unable to diagnose with current informationstatus में बंद कर दिया जाता है - submitter की सहमति के बिना Feedback बंद कर दिया जाता है, और अभी तो ऐसा लगता है कि Apple employees भी बंद Feedback को फिर से खोल नहीं सकते—जैसे यह system की “feature” हो
- यदि Apple गलती से ऐसे bug का Feedback बंद कर देता है जो अभी fix नहीं हुआ है, तो उसी bug के लिए Apple नया Feedback बनाकर नंबर देने के बजाय developer से उसे फिर से खोलने को कहता है
- bug को fix किए बिना या fix/reproduce करने की कोशिश किए बिना भी latest beta में Feedback को verify करने के लिए कहा जाता है
- यदि developer verify नहीं करता, तो वह Feedback बंद कर दिया जाता है
- इस प्रक्रिया को developer के समय की बड़ी बर्बादी माना जाता है
- duplicate के रूप में बंद हुए Feedback के मामले में, original Feedback के status changes हमेशा आगे नहीं बताए जाते
- Apple अक्सर intrusive sysdiagnose reports मांगता है, और उन्हें सबमिट न करने पर Feedback देखने को तैयार नहीं होता
- कई developers अपने personal devices पर काम करते हैं
- sysdiagnose को privacy का बड़ा उल्लंघन माना जाता है, जिसे Apple खुद basic human right कहता है
- Apple की आलोचना है कि उसने जानकारी इकट्ठा करने और diagnosis के लिए छोटे, targeted और कम intrusive तरीके बनाए नहीं हैं या छोड़ दिए हैं
- हाल में web से Feedback सबमिट करना बंद हो गया है
- अब केवल macOS या iOS के native Feedback Assistant app से ही submission करने की मांग की जाती है
- कहा गया कि web app से वर्षों तक Feedback सबमिट किए गए थे, और आखिरी web submission 26 अक्टूबर को हुआ था
- developers Feedback Assistant में bugs search नहीं कर सकते
- Apple employees database search कर सकते हैं, लेकिन external developers केवल अपने सबमिट किए गए Feedback देख सकते हैं
- कुछ Feedback को secret रखना जरूरी हो सकता है, लेकिन बहुत सारे Feedback के लिए ऐसा जरूरी नहीं है; opt-in searchable bug database को external developers और Apple platform software quality के लिए मददगार माना गया है
“Apple के पास भी समय नहीं है” वाली दलील पर जवाब
- इस बचाव से सहमति नहीं है कि Apple के पास Feedback का सही जवाब देने का समय नहीं है
- priorities, schedules और staffing कंपनी leadership के फैसलों से तय होते हैं
- Apple पर आलोचना है कि वह बाहरी developers के समय की तुलना में अपना समय ज्यादा महत्व देता है और developers का समय लगातार बर्बाद करने पर उसे guilt नहीं दिखता
- अगर Apple यह तय कर सकता है कि उसके पास Feedback का जवाब देने का समय नहीं है, तो developers भी तय कर सकते हैं कि उनके पास Feedback सबमिट करने का समय नहीं है
- लंबे समय से Apple user के नजरिए से हर साल दोहराए जाने वाले OS updates जरूरी नहीं हैं; Mac OS X Snow Leopard के दौर की तरह लगभग 2 साल के अंतराल वाले updates bug fixing के लिए ज्यादा समय छोड़ते थे, ऐसा याद किया गया है
निशाना individual engineers नहीं, system है
- यह बॉयकॉट अलग-अलग Apple engineers को निशाना नहीं बनाता
- माना जाता है कि कई Apple engineers भी Feedback Assistant में सुधार चाहते हैं
- Feedback Assistant में सुधार Apple engineers और external developers के संबंधों को नुकसान पहुंचाने के बजाय मजबूत कर सकता है
- बॉयकॉट का लक्ष्य bug reporting system है, और मकसद Apple leadership को लगातार बनी समस्याओं से अवगत कराकर प्रतिक्रिया देने के लिए मजबूर करना है
unpaid QA श्रम और developers की पसंद
- बॉयकॉट को labour strike भी कहा जा सकता है
- Apple developers को बड़े पैमाने पर unpaid QA labour के रूप में इस्तेमाल कर रहा है
- एक Feedback में कई घंटे या कई दिन का श्रम लग सकता है
- Apple और developers दोनों जानते हैं कि Apple software और products को test और refine करने में developers की महत्वपूर्ण भूमिका है
- Apple पर आलोचना है कि वह developers के Feedback को अपना स्वाभाविक अधिकार मानता है, लेकिन bug reporting system में developers को सम्मान या basic courtesy नहीं देता
- developers को यह मानने के लिए conditioned किया गया है कि platform के लिए Feedback सबमिट करना उनका कर्तव्य है, लेकिन Apple platform कोई charity case नहीं है
- Apple platforms ने Apple को दुनिया की सबसे profitable कंपनियों में से एक बनाया है, और external developers Apple employees नहीं हैं, इसलिए unpaid labour को सामान्य नहीं माना जाना चाहिए
बॉयकॉट के दो लक्ष्य
- पहला लक्ष्य यह दिखाना है कि developers की bug reporting Apple के लिए जरूरी है और उसके बिना Apple को नुकसान होगा, ताकि Feedback Assistant में सुधार के लिए दबाव बने
- दूसरा लक्ष्य यह है कि developers खुद समझें कि उन्हें वास्तव में Apple को bugs report करने की जरूरत नहीं है
- माना जाता है कि submit किए गए bugs में से कई अंततः fix नहीं होते, और अगर fix होते भी हैं तो अक्सर bug के असर से बचने के लिए बहुत देर हो चुकी होती है
- यह सच है कि Apple bugs apps को प्रभावित करते हैं, लेकिन Apple समय पर fix करेगा, ऐसी उम्मीद करना मुश्किल है; इसलिए developers आम तौर पर apps में workarounds डालकर release करते हैं
- workaround शामिल हो जाने के बाद Apple के लिए bug fix करने की urgency घट जाती है, और bug reporting अनिवार्य के बजाय charity जैसी हो जाती है
Feedback Assistant की भूमिका की पुनर्परिभाषा
- Feedback Assistant को developers को customer service देने वाला system नहीं माना जाता
- इसके उलट, developers ही Feedback Assistant को service देते आए हैं, और system में सुधार होने तक उस service को रोकने का विकल्प चुन रहे हैं
- उम्मीद है कि Apple Feedback Assistant की समस्याएं हल करेगा, लेकिन सुधार न होने पर स्थायी रूप से बॉयकॉट करने की इच्छा है
- Apple सकारात्मक प्रतिक्रिया देता है या नहीं, इससे अलग, अगर कई developers शामिल होते हैं और यह पुष्टि होती है कि Feedback Assistant उनके काम और आजीविका के लिए जरूरी नहीं है, तो बॉयकॉट को सफल माना जाएगा
7 नवंबर 2023 का अपडेट
- Feedback Assistant बॉयकॉट के लिए official webpage बन गया है
- उस page पर email address, RSS feed और Mastodon account भी दिए गए हैं
- बॉयकॉट में भाग लेने वालों की public list भी संपादित की जा रही है, और अधिक जानकारी उसी page पर देखी जा सकती है
1 टिप्पणियां
Hacker News की राय
Feedback Assistant से भेजी गई रिपोर्टों में से जिन पर जवाब या पुष्टि मिली, उनका अनुमान लगभग 10% है
यह iOS में 100% दोबारा होने वाला bug था, और मैंने एक isolated sample project भी दिया था। सोच-समझकर और विस्तार से bug report बनाने में समय लगता है, लेकिन जब कोई जवाब नहीं मिलता तो यह सच में बहुत निराशाजनक होता है, और मैं इस लेख से बहुत सहमत हूँ
इसे test करने, reproduce करने और document करने में समय और मेहनत लगती है। मुझे कुछ नहीं चाहिए था, बस यह ठीक हो जाए, क्योंकि मेरे बच्चे भी iPhone इस्तेमाल करते हैं
दूसरी कंपनियाँ भी बहुत अलग नहीं हैं। मैंने Cisco को remote code execution vulnerability भेजी, तो उन्होंने जवाब दिया कि उन्हें पहले से पता है, लेकिन product lifecycle के अंत के करीब होने के कारण वे इसे ठीक नहीं करेंगे
सालों में मैंने बहुत सी vulnerabilities देखी हैं, लेकिन अगर उन्हें ढूँढ़ने के पैसे नहीं मिल रहे हों, तो आम तौर पर बस उन्हें नज़रअंदाज़ करना ही आसान लगता है। इतना निराश होने लायक नहीं
reproduce steps, अपनी जाँच, और पूरी details के साथ सही bug report भेजने के बाद भी पूरी चुप्पी रहती है। लगता है जैसे app bugs को बस
/dev/nullमें भेज देता हैboycott या strike तभी असरदार होते हैं जब ज़्यादातर, या लगभग सभी लोग, उसमें शामिल हों। क्योंकि मैं भी तभी शामिल होऊँगा जब मुझे यकीन हो कि लगभग सब शामिल होंगे
अगर इस blog post की वजह से सिर्फ 0.1% developers ही strike करें, तो Apple को इसकी परवाह भी नहीं होगी
developer strike का विचार अपने आप में शानदार है, लेकिन अगर यह सिर्फ Jeff Johnson जैसे एक व्यक्ति की call to action से शुरू हो, तो आम तौर पर इससे व्यवहार में बदलाव लाना मुश्किल होता है
इसे organize करने के लिए पहले जाने-माने और सम्मानित 50~200 प्रमुख developers से सीधे संपर्क करना होगा, उनसे co-sign लेना होगा, और फिर एक open letter जारी करना होगा। तभी लोग समझेंगे कि यह किसी एक व्यक्ति की निजी इच्छा नहीं, बल्कि जानकार लोगों की गंभीर strike है
इसे प्रमुख tech media में भी कवर होना चाहिए ताकि Apple और developers दोनों इसे देखें
और उस पत्र में शिकायतों की लंबी सूची नहीं, बल्कि strike खत्म करने के लिए Apple को उठाने वाले ठोस और सत्यापित किए जा सकने वाले कदम होने चाहिए। माँगें अंतहीन नहीं होनी चाहिए, और "सब कुछ अभी ठीक करो" जैसे अवास्तविक wish list की बजाय तारीखों और milestones के साथ यथार्थवादी प्रगति होनी चाहिए
strike करनी है तो सच में organize करना होगा। "मैं सभी Apple developers से साथ आने की अपील करता हूँ" जैसी blog post organization नहीं है, और सिर्फ यह लिख देने से कोई जादुई तरीके से आपकी ओर से संगठन नहीं कर देगा
जैसा कि लेखक ने मूल लेख के नीचे कहा, यह खरीद बंद करने वाला boycott कम और मुफ्त labor देना बंद करने जैसा ज़्यादा है, इसलिए यहाँ इसे strike कहा जा रहा है
यह ज़्यादा कमाई के लिए लड़ाई जैसी साफ़ तौर पर महत्वपूर्ण बात नहीं है। इस strike की खूबी यह है कि लेख की शुरुआत में बताए गए step 1~3 सभी से सिर्फ कम मेहनत माँगते हैं, इसलिए जो चाहे वह आसानी से हिस्सा ले सकता है
जैसा कि लेख के अंत में भी कहा गया है, लक्ष्यों में से एक यह खुद साबित करना है कि हमें असल में Feedback Assistant की ज़रूरत ही नहीं है। खोने को लगभग कुछ नहीं है, bug reporting system में हिस्सा लेना हमारे लिए अनिवार्य नहीं है, और हम बस वहाँ से हट सकते हैं
यह ऐसी जान-मरण की लड़ाई नहीं है जिसे हर हाल में जीतना ही हो। Feedback Assistant चाहे जितना लगातार खराब और परेशान करने वाला हो, पेशेवर प्राथमिकताओं में इसका स्थान नीचे होना चाहिए
बल्कि मेरा मानना है कि यही रवैया Apple पर leverage बनता है। हम तो बस एक बेकार volunteer “opportunity” छोड़ने वाले volunteers हैं, लेकिन Apple अपने commercial products के लिए हमारे मुफ्त labor पर निर्भर है, और इसे बदलने के लिए उसे सच में और कर्मचारियों को hire करके पैसे देने होंगे
Feedback Assistant का इस्तेमाल बंद करने से किसी की salary नहीं जाएगी। इस strike में शामिल होने की लागत बहुत कम है, और ज़्यादातर लोगों के लिए इसमें शामिल होना शायद शामिल न होने से भी कम costly हो सकता है
इसलिए यह पारंपरिक labor disputes में मुश्किल रहने वाले तरीके से, समय के साथ असरदार strike में बदल सकता है
और अगर सच हो भी, तो Apple के पास निपटाने के लिए दूसरी reports या features इतने अधिक हैं कि बाहर से आने वाली bug reports पूरी तरह गायब हो जाएँ तब भी शायद कोई खास असर न पड़े
काश Apple का bug management करने का तरीका बदल जाए। मैं bug reproduce करता हूँ, वैसी quality की bug report लिखता हूँ जैसी मैं खुद पाना चाहूँगा, और minimum test case तक तैयार करता हूँ, लेकिन फिर सालों तक कुछ खबर नहीं आती, और अंत में या तो report बंद हो जाती है या मुझसे पूछा जाता है कि क्या यह अभी भी समस्या है और कुछ और काम करो — यह सच में मनोबल तोड़ देता है
सोचता हूँ कि क्या Apple के आसपास के scale पर कोई कंपनी यह काम अच्छी तरह करती है
मैं इसके मुश्किल होने के कई कारण सोच सकता हूँ, और यह भी समझता हूँ कि staffing कठिन होगी। लेकिन Apple को इस समस्या को हल करने के लिए पैसे मिलते हैं, और वह इसे हल नहीं कर पा रहा है
इसलिए आम तौर पर मुझे लगता है कि bug report करते समय कम काम करना बेहतर है। बस जो डालें, वह सावधानी से और साफ़ होना चाहिए
सहमत। Apple के अंदर भी Radar submit करने पर अक्सर ऐसा ही व्यवहार मिलता है। हाँ, Radar status देखा जा सकता है
यानी bug fixes, fine-tuning, और codebase को बगीचे की तरह सँभालने वाले लोग
काम शब्दों से ज़्यादा बोलते हैं। Apple अपने कामों से दिखा रहा है कि वह डेवलपर्स के बारे में क्या सोचता है
Apple के व्यवहार को बदलने के लिए काफ़ी बड़ा हंगामा खड़ा करना होगा। नकदी के पहाड़ पर बैठी कंपनी के पास बदलने की लगभग कोई प्रेरणा नहीं है
Apple बाहरी डेवलपर्स को किसी तरह के कीट की तरह देखता हुआ लगता है। डेवलपर्स पर थोपी गई इसकी systems और प्रक्रियाएँ ऐसी लगती हैं मानो उन्हें सक्रिय रूप से हतोत्साहित करने के लिए डिज़ाइन की गई हों
पिछली पोस्ट: https://news.ycombinator.com/item?id=3947903
अब खुद को बहुत बूढ़ा महसूस कर रहा हूँ
अतिरिक्त: आखिरकार पूरा form letter मिल गया [1]. मैंने उस समय उसकी एक कॉपी जमा की थी, और वह आज भी Feedback Assistant में अनदेखी पड़ी दिखती है
[1]: https://gist.github.com/mysteriouspants/1989061
ऐसे समय होते हैं जब Feedback Assistant के ज़रिए bug report की ज़रूरत पड़ती है। जब आप किसी Apple internal developer तक पहुँच जाते हैं, वह कहता है कि वह bug ठीक करेगा, और internal work tracking के लिए उसे सिर्फ़ feedback number चाहिए होता है
बिना माँगे bug report जमा करना बस समय की बर्बादी है। मैं इसे ठीक-ठीक Feedback Assistant का “बहिष्कार” नहीं कहूँगा; मैंने इसका इस्तेमाल इसलिए बंद किया क्योंकि यह बिल्कुल भी कोई उपयोगी काम नहीं करता
एक developer के रूप में मैं Apple से किसी भी तरह जुड़ने से पूरी तरह इनकार करता हूँ। वजह है $100 annual fee
हर बार जब ऐसी बात सामने आती है, मुझे लगता है कि मेरा फ़ैसला और भी सही था
ज़रा सोचिए, दुनिया की सबसे अमीर कंपनी आपसे उसके platform में योगदान देने का विशेषाधिकार पाने के लिए पैसे लेती है
यह पूरी तरह पागलपन है, और कोई भी बात मेरी राय नहीं बदलेगी
फिर भी, Google की तरह इसे one-time बनाया जा सकता है, और इससे सस्ता भी
एक मिनट, क्या अब इसका मतलब है कि आप web पर feedback submit नहीं कर सकते? यह सचमुच बेहिसाब बेवकूफ़ी है
Feedback app खुद भी आधी टूटी हुई रहती है, इसलिए शायद Apple चाहे भी तो मेरी report नहीं ले पाएगा
मैंने पहले blog पर लिखा था कि Apple, Safari के मामले में web developers की कितनी अनदेखी करता है [1]
इसे देखकर लगता है कि Apple दूसरे developers की भी अनदेखी करता है, और सच कहूँ तो यह चौंकाने वाला नहीं है
[1] https://www.construct.net/en/blogs/ashleys-blog-2/safari-rel...
Apple सिर्फ़ cutting-edge features ही नहीं, basic features भी नियमित रूप से तोड़ देता है। इसकी testing practices बहुत अच्छी नहीं लगतीं