- कई services app install करने के लिए मजबूर करती हैं और web accessibility को सीमित करती हैं, जिससे users थकान और असुविधा महसूस करते हैं
- browser में extensions और scripts के ज़रिए environment को control किया जा सकता है, लेकिन app ऐसी संरचना है जिसमें निर्माता के लिए control को मज़बूत करना आसान होता है
- ज़्यादातर apps सिर्फ़ साधारण text·media rendering के स्तर के होते हैं, फिर भी अत्यधिक size और permissions मांगते हैं
- थोपा गया app experience अक्सर unstable interface और response delay की वजह से native पर भरोसा कम कर देता है
- कंपनियाँ app install conversion metrics बढ़ाने के लिए web quality को जानबूझकर गिराती हैं, जिससे web की openness और user choice कमज़ोर होने का एक दुष्चक्र बनता है
app download को जबरन थोपने के प्रति असहजता
- web पसंद करने वाले users ज़्यादातर services द्वारा app install के लिए मजबूर किए जाने की हक़ीक़त से थक चुके हैं
- social media से parking payment तक, app को प्राथमिकता दी जाती है और web को द्वितीयक माना जाता है
- web version में app install के लिए उकसाने वाले popup, modal, top banner बार-बार दिखाई देते हैं
- कुछ services तो केवल app के ज़रिए ही उपलब्ध हैं, इसलिए public services या essential utilities के मामले में यह असुविधा गंभीर हो जाती है
browser और app में control का अंतर
- browser में user scripts, ad blockers, extensions आदि के माध्यम से user खुद environment को control कर सकता है
- जिस site में dark mode नहीं है, उसे भी script से ठीक किया जा सकता है
- Reddit के sidebar बदलाव को भी personal extension से सुधारा जा सकता है
- दूसरी ओर app में user control सीमित होता है, और निर्माता के लिए control को मज़बूत करना आसान होता है
- app push notifications, tracking telemetry collection, closed ecosystem बनाए रखने के लिए अनुकूल हैं
- ऊपर से यह “बेहतर user experience” का दावा करते हैं, लेकिन असली मक़सद user retention सुनिश्चित करना होता है
साधारण संरचना वाले apps और अत्यधिक माँगें
- ज़्यादातर apps text और media feed, या multi-step input forms जैसी साधारण संरचना से बने होते हैं
- 3D game या LiDAR-आधारित AR जैसी hardware integration की ज़रूरत वाले मामलों को छोड़ दें, तो अधिकांश सिर्फ़ API से JSON data लेकर render करने वाले thin clients हैं
- इसके बावजूद कंपनियाँ 100MB से बड़े app install, location permission, background execution allowance की माँग करती हैं
- केवल home screen share हासिल करने के लिए basic content को native app के रूप में फिर से बनाने के कई उदाहरण हैं
कमज़ोर native experience
- अगर browser की जगह app को मजबूरन इस्तेमाल कराया जा रहा है, तो कम-से-कम उच्च-गुणवत्ता वाला native experience दिया जाना चाहिए
- लेकिन हक़ीक़त में अक्सर unstable या awkward interface देखने को मिलते हैं
- उदाहरण के तौर पर, शुरुआती Flutter apps में iOS shader compilation delay की समस्या का उल्लेख किया गया है
- Skia engine के दौर में animation पहली बार चलने पर UI अटक जाता था, और Impeller पर switch होने से पहले shader को manually precompile करना पड़ता था
- ऐसे सूक्ष्म scroll speed, gesture response delay, timing mismatch users को अप्रिय लगते हैं
- इंसान system response में बारीक अंतर महसूस कर सकता है, और यह XZ backdoor detection case या FPS games में delay detection जैसी घटना से मिलता-जुलता है
- अगर ऐसी बारीक interactions पूरी तरह polished न हों, तो native experience पर भरोसा टूट जाता है
- यह सिर्फ़ कुछ apps की समस्या नहीं, बल्कि काफ़ी आम घटना है जो समग्र धारणा पर बुरा असर डालती है
Enshittification का दुष्चक्र
- full-screen modal के ज़रिए app install के लिए मजबूर करने पर, ज़्यादातर users विरोध करने के बजाय install करना चुनते हैं
- ऐसा व्यवहार PM के performance metrics पर सकारात्मक असर डालता है, जिससे web experience को और खराब करने वाला incentive बनता है
- services शुरुआत में open web पर user base बनाती हैं, लेकिन बाद में web version को जानबूझकर सीमित करके users को app की ओर धकेलती हैं
- app के अंदर ads exposure और tracking के लिए खुला बंद वातावरण बन जाता है
- नतीजतन web सिर्फ़ एक acquisition channel बनकर रह जाता है, और browser की universal platform वाली भूमिका कमज़ोर पड़ती है
- कंपनियों के नज़रिए से web quality बनाए रखने की financial motivation समाप्त हो जाती है
- data दिखाता है कि यह रणनीति वास्तव में असरदार है, यानी user conversion rate ऊँचा बना रहता है
1 टिप्पणियां
Hacker News की राय
ज़्यादातर लोग यह नहीं समझते, लेकिन युवा पीढ़ी के लिए स्मार्टफ़ोन ही इंटरनेट है
हमारी पीढ़ी ने पहले डेस्कटॉप पर इंटरनेट देखा, फिर वह स्मार्टफ़ोन तक फैला
लेकिन आज के किशोर शुरू से ही स्मार्टफ़ोन स्क्रीन पर इंटरनेट का अनुभव करते हैं। यहाँ तक कि होमवर्क भी उसी छोटी स्क्रीन पर करते हैं
मैं अब भी बड़ी स्क्रीन पर ज़्यादा जानकारी देखना पसंद करता हूँ। इसलिए घर पर लैपटॉप इस्तेमाल करता हूँ और चलते-फिरते ही फ़ोन का उपयोग करता हूँ
फ़ोन पर होमवर्क करना कल्पना से परे लगता है, लेकिन आजकल के बच्चों के लिए यह स्वाभाविक है
मुझे लगता है Apple का “What’s a computer?” विज्ञापन इस पीढ़ी की सोच को बिल्कुल सही पकड़ता है
ज़्यादातर लोग power user हैं, इसलिए आम उपयोगकर्ताओं की दुनिया से बिल्कुल अलग हैं
इससे जुड़ा HN thread भी है
बल्कि सालों तक कंपनियों ने apps को धक्का दिया, उसी का नतीजा है कि आज की पीढ़ी ऐसी हो गई है
“स्मार्टफ़ोन स्क्रीन = native app” जैसी धारणा ही ग़लत मान्यता है
मैं ‘app इस्तेमाल थोपने वाली कंपनियों के बदनामी हॉल ऑफ़ फ़ेम’ जैसा कुछ बनाना चाहता हूँ
Reddit, PayPal, Robinhood, Instagram, SeatGeek आदि web functionality रोककर app install करने पर मजबूर करते हैं
NBC लेख देखें तो दुख होता है
ऐसी hostile UX इस्तेमाल करने वाली किसी कंपनी का app मैं कभी install नहीं करूँगा
ऐसे सिस्टम की वजह से बड़े शो के बजाय छोटे club shows ज़्यादा अच्छे लगते हैं
मैंने website को wrap करने वाला एक साधारण app wrapper बनाया था, और हैरानी की बात है कि उसके downloads बहुत तेज़ी से बढ़ गए
paid conversion rate 10 गुना बढ़ गया, और app users के metrics भी काफ़ी बेहतर थे
आख़िरकार सिर्फ app होना भी business के लिए क़ीमती है
users app store पर भरोसा करते हैं, इसलिए Android और iOS को PWA को app store से जोड़ना चाहिए
अगर PWA standard बन जाएँ तो बहुत सुविधा होगी, यही अफ़सोस है
यह जानना है कि क्या साधारण React Native wrapper app को भी store registration में कोई समस्या नहीं हुई
मैं भी मूल रूप से web-first सोच वाला हूँ
जब तक site पूरी तरह टूटी हुई न हो या features block न करे, मैं app install नहीं करता
responsive design की वजह से ज़्यादातर काम browser में हो जाते हैं
बस अच्छा होता अगर mobile browser में console feature भी होता
web app में onboarding friction कम होता है, और install थोपना नहीं पड़ता, इसलिए वह ज़्यादा efficient है
native app की असली ख़ासियत लगभग सिर्फ़ device API access तक सीमित है
मेरे अनुभव में native apps अक्सर web से बेहतर quality देती हैं
web apps धीमे, bug से भरे और उलझाऊ होते हैं
लेकिन कौन-सा तरीका पसंद आएगा, यह उपयोग के उद्देश्य पर निर्भर करता है
यहाँ तक कि cross-platform apps भी कुछ अटपटे लगते हैं
अगर app install थोपें, तो मैं सेवा ही छोड़ देता हूँ
New York Times mobile web पर app install थोपने वाले popup की वजह से बेहद चिढ़ पैदा करता है
news sites तो web के लिए सबसे उपयुक्त services हैं, फिर भी app थोपते हैं
अब मैं सिर्फ़ link से खुले articles ही पढ़ता हूँ
web browser मूल रूप से sandbox environment है, इसलिए security के लिहाज़ से सुरक्षित है
apps background access, location, contacts जैसी ज़्यादा permissions माँगते हैं
जबकि apps में hash verification संभव है, और app store जैसा मध्यस्थ verifier भी मौजूद होता है
उदाहरण के लिए Signal app में server पर भरोसा न करें तब भी end-to-end encryption सुनिश्चित रहती है
cookies और cross-tracking की वजह से web apps apps से ज़्यादा data भी इकट्ठा कर सकते हैं
मुझे लगता है असली user experience आख़िरकार native apps ही देते हैं
कई बार यह उपयोगी भी होती है
browser में ad blocking, notifications पर नियंत्रण, और बिना approval deployment संभव है, इसलिए कंपनियों के नज़रिए से यह नुकसानदेह है
लेकिन user के नज़रिए से ये सब फ़ायदे हैं
आख़िरकार app vs browser का सवाल कंपनी बनाम उपयोगकर्ता का टकराव है
Chrome spam notifications को block कर देता है, इसलिए वह उल्टा ज़्यादा सुरक्षित है
मैं माँ के iPhone SE पर app install कर रहा था, और 2 घंटे तक storage साफ़ करनी पड़ी
app cache और duplicate data बहुत ज़्यादा थे, और माँ को यह भी नहीं पता था कि आधे apps क्या करते हैं
ऐसी app bloat संस्कृति बंद होनी चाहिए। ज़्यादातर तो बस web app को लपेटने वाली पतली परत हैं
मैं भी web को पसंद करता हूँ, लेकिन युवा पीढ़ी app-केंद्रित माहौल में पली-बढ़ी है, इसलिए browser का इस्तेमाल उन्हें सहज नहीं लगता
यह WhatsApp, YouTube, TikTok तक सीमित पीढ़ी है
जुड़े हुए meme की तरह, कई बार उन्हें फ़ाइल सिस्टम की बुनियादी समझ भी नहीं होती
2010 के बाद Google के platform-केंद्रित बदलावों की वजह से असली web ग़ायब-सा हो गया