डेवलपर अक्सर हमें बताते हैं कि वेब पर होने वाले बदलावों के बारे में जानकारी रखना और ये बदलाव क्यों हो रहे हैं, यह समझना मुश्किल है. आज हम Chrome Dev Insider नाम की एक नई सीरीज़ लॉन्च कर रहे हैं. इसमें हम शेयर करेंगे (1) दिलचस्प और खबरों में क्या अहम है, (2) किसी मुख्य विषय पर फ़ैसला कैसे लिया गया (जैसे कि FLOC में बदलाव करना) या नेटवर्क के साथ काम करने के तरीके को लेकर अहम जानकारी (उदाहरण के लिए, Interop 2022) और (3) उपयोगकर्ता की ज़रूरी जानकारी (उदाहरण के लिए) उपयोगकर्ता की जानकारी में बदलाव.
इस बारे में जानकारी देते हुए कि हम आगे क्या काम कर रहे हैं, साल 2022 में हमारी चार प्राथमिकताओं के बारे में बात की जाएगी:
- उपयोगकर्ताओं को बेहतरीन अनुभव देना: उपयोगकर्ताओं के लिए चीज़ों को आसान बनाना; चाहे वह परफ़ॉर्मेंस, लेन-देन, पहचान या ट्रांज़िशन हो.
- वेब की क्षमताओं को बेहतर बनाना: वेब की उभरती हुई भूमिका को इस्तेमाल करके, इस प्लैटफ़ॉर्म को कॉन्टेंट इस्तेमाल करने का प्लैटफ़ॉर्म बनने से लेकर अलग-अलग तरह के अनुभवों के लिए प्लैटफ़ॉर्म बनाने में मदद मिलती है. इनमें ऐसे प्लैटफ़ॉर्म भी शामिल हैं जिन्हें डीप ओएस और हार्डवेयर लेवल पर इंटिग्रेशन की ज़रूरत होती है.
- वेब डेवलपमेंट को आसान बनाना: फ़ैसला लेना आसान बनाएं और डेवलपर को बेहतर तरीके से काम करें.
- वेब की निजता को बेहतर बनाना: वेब उपयोगकर्ताओं को हम ट्रैकिंग और टारगेटिंग में, डेवलपर के लगातार बेहतर हो रहे बदलावों को ध्यान में रखते हुए, डेटा की निजता सुरक्षा को बेहतर बनाने की उम्मीद रखते हैं.
जानकारी: इंटरऑप 2022
जब हम अपने रोडमैप की योजना बनाते हैं, तब हम डेवलपर के सुझावों को देखते हैं. इससे हम वेब डेवलपर की मुख्य समस्याओं और ज़रूरतों को समझने के साथ-साथ, दूसरी चीज़ों को भी समझते हैं. एक मुख्य थीम जो बार-बार दिखाई देती है, वह है ब्राउज़र के साथ काम करना. इससे अनुभव सभी ब्राउज़र पर एक जैसा काम करता है. पिछले साल से, हम इस थीम पर काम करने के लिए नेटवर्क के साथ काम कर रहे हैं. ऐसा "वेब डेवलपमेंट को आसान बनाने" की हमारी प्राथमिकता के तौर पर किया जा रहा है.
पिछले साल, Microsoft, Chrome, और नेटवर्क बनाने वाली कंपनियों ने Compat 2021 का एलान किया था. इस साल सभी लोकप्रिय ब्राउज़र इंजन (Chromium, Gecko, और Webkit) को पांच मुख्य फ़ोकस एरिया में 90% से ज़्यादा स्कोर मिला. इसके अलावा, Compat 2021 की मदद से, सीएसएस ग्रिड (12% इस्तेमाल और लगातार बढ़ रहा है) और CSS Flexbox (77% इस्तेमाल) जैसी बेहतरीन सुविधाओं को आधार बनाया गया.
पिछले महीने Apple, Bocoup, Google, Igalia, Microsoft, और Mozilla एक साथ मिलकर काम करने वाले बन गए. इनका मकसद, ब्राउज़र के साथ काम करने से जुड़ी उन समस्याओं को हल करना है जिनकी पहचान वेब डेवलपर ने की है. साथ ही, वे एक जैसे मानदंड पर सहमत हैं. इसी वजह से, हमने Interop 2022 नाम का एक प्रोजेक्ट तैयार किया है. इस प्रोजेक्ट का मकसद, YouTube पर एक जैसा माहौल बनाने का है. यह मानदंड, प्राथमिकता के 15 मामलों पर फ़ोकस करता है. इन 15 चीज़ों की पहचान, डेवलपर अपनी उत्पादकता को बढ़ाने के लिए करते हैं.
इनसाइडर स्कूप: अपने ब्राउज़र के साथ काम करना
साल 2022 के इंटरऑप की सुविधा को ध्यान में रखते हुए, मैंने रॉबर्ट निमन और फ़िलिप जेगन्स्टेड से बातचीत की. ये लोग, बातचीत की खास जानकारी हासिल करने के लिए इनका इस्तेमाल कर रहे हैं. यह रहा संपादक ने इसका इस्तेमाल कैसे किया, इसके बारे में यहां बताया गया है.
यह पहल शुरू होने की क्या वजह है?
रॉबर्ट: इसकी शुरुआत साल 2019 में हुई थी, जब हमने MDN DNA 2019 सर्वे किया था. वेब वर्शन बनाते समय डेवलपर के लिए, ऐप्लिकेशन के साथ काम करने से जुड़ी समस्याओं की सबसे बड़ी समस्या थी. इसके बारे में हमने एमडीएन ब्राउज़र कम्पैटिबिलिटी रिपोर्ट 2020 में विस्तार से बताया है. इससे हमें Compat 2021 का इस्तेमाल शुरू करने के लिए ज़रूरी जानकारी और कार्रवाई करने लायक डेटा मिला. इससे हमें कंपनी का काम जारी रखने में मदद मिली और 2022 के लिए इंटरऑपरेबिलिटी की सुविधा का दायरा भी बढ़ा दिया गया.
Philip: मैं web-platform-tests और सीएसएस की स्थिति 2021 के बारे में भी बताना चाहता/चाहती हूं. पिछले कुछ सालों में WPT का इस्तेमाल करके टेस्टिंग के लिए, हमने दूसरे ब्राउज़र वेंडर के साथ अच्छा सहयोग किया है और हम वाकई इसी पर फ़ोकस करना चाहते थे. इन सुविधाओं की जांच पहले ही लिखी जा चुकी थी. इसलिए, हमें सिर्फ़ जांच की समीक्षा करनी थी और कुछ अधूरी जानकारी शामिल करनी थी. Google ने wpt.fei में बहुत निवेश किया है, लेकिन WPT को आज की सफलता के लिए हम Mozilla को भी धन्यवाद देते हैं. बेशक MDN DNA सर्वे में भी मोज़िला का बड़ा हाथ था. इनके अलावा, साल 2021 में सीएसएस की स्थिति भी तय की गई है. इंटरऑप 2022 की तरह ही काम करने के लिए, हमें वेब डेवलपर से जुड़ी ज़रूरतों के बारे में नए इनपुट की ज़रूरत है. इसलिए, हमने सर्वे में भाग लेने वाले सचा के साथ मिलकर ब्राउज़र के साथ काम करने से जुड़ी समस्याओं के बारे में कुछ नए सवाल शामिल किए हैं. इससे हमें इंटरऑप 2022 की प्लानिंग प्रोसेस में काफ़ी मदद मिली.
Comat 2021 से कोई जानकारी या सुझाव?
रॉबर्ट: हर ब्राउज़र इंजन की परफ़ॉर्मेंस को मेज़र करना और इस बारे में स्कोर और अहम जानकारी पाना बहुत काम का था. इससे हम प्रोग्रेस को समझ सके और उन समस्याओं पर चर्चा कर पाए जिनके बारे में हमें पता नहीं था या जिन्हें प्राथमिकता देने की ज़रूरत थी. हमें जल्द ही एहसास हुआ कि "इंटरऑप" पहल के लिए एक बेहतर नाम था. आम तौर पर, कंपैटबिलिटी और इंटरऑपरेबिलिटी शब्द, ब्राउज़र वेंडर की मदद से अलग-अलग होते हैं. यहां कंपैट का मतलब साइट कंपैट से है, जबकि इंटरऑपरेबिलिटी का मतलब है कि एक जैसे काम करने वाले दो या दो से ज़्यादा ब्राउज़र. इस शब्दावली में, इंटरऑपरेबिलिटी (दूसरे सिस्टम के साथ काम करना) के बारे में बात की गई है. इसलिए, प्रोजेक्ट ने इस सुविधा के साथ काम किया है.
हमारा मकसद क्या है?
रॉबर्ट: वेब को चालू रखने के लिए, ब्राउज़र और रेंडरिंग इंजन में विविधता ज़रूरी है. माफ़ करें, फ़िलहाल यह शुल्क हमारे उन डेवलपर के लिए काफ़ी ज़्यादा है जिन्हें हर इंजन की सुविधाओं के लिए, अलग-अलग लेवल पर सपोर्ट करना पड़ता है. हमारा विज़न है कि डेवलपर, वेब प्लैटफ़ॉर्म को अपनी ज़रूरतों के हिसाब से सबसे बेहतर विकल्प और सबसे आकर्षक विकल्प के तौर पर देखें. साथ ही, वे इंटरऑपरेबिलिटी से जुड़ी समस्याओं को हल करने में ज़्यादा समय देने के बजाय, सबसे अच्छे अनुभव देने पर ध्यान दे सकें. साथ ही, यह साफ़ है कि इस लक्ष्य को हासिल करने के लिए, सबसे ज़्यादा पूछी जाने वाली सुविधाएं सभी प्रमुख ब्राउज़र इंजन पर उपलब्ध होनी चाहिए. इससे डेवलपर को वेब प्लैटफ़ॉर्म पर सफल होने में मदद मिलती है.
जब ब्राउज़र (कभी-कभी) अलग-अलग लक्ष्यों को पूरा करते हैं, तब हम चीज़ों को एक साथ कैसे आगे बढ़ाते हैं?
फ़िलिप: हमारा मकसद ऐसे क्षेत्रों पर ध्यान देना है जिनमें सबकी दिलचस्पी एक जैसी हो. ऐसा करके हम उन सहयोगों का पता लगा रहे हैं जिनके साथ मिलकर काम करने के लक्ष्य पहले से ही करीब-करीब एक हैं. और एक ही समय में काम करने के लिए सीमित चीज़ों को प्राथमिकता देकर, हम उन क्षेत्रों पर ध्यान देते हैं और तेज़ी से आगे बढ़ते हैं और अलग से काम करने पर पहले की तुलना में बेहतर क्वालिटी पाते हैं. यही आइडिया है.
मुझे लगता है कि सहमति पर आधारित इस तरीके की सीमाएं हैं कभी-कभी वेब डेवलपर या उपयोगकर्ता की ज़रूरतों के बारे में ज़्यादा जानकारी उपलब्ध कराने से मदद मिलती है. हालांकि, ब्राउज़र वेंडर ऐसी चीज़ें शिप कर सकते हैं जिनके लिए अलग-अलग तरह के समझौते नहीं होते. ऐसी स्थिति में, वे वेब डेवलपर इस सुविधा की अहमियत दिखाते हैं जिन्हें वे आज़मा रहे हैं. साथ ही, उन्हें पता चलता है कि वह सुविधा उनकी ज़रूरतों को पूरा करती है और वे सभी ब्राउज़र में एक जैसी सुविधा मांगते हैं.
साल 2022 में इंटरऑपरेबिलिटी की शुरुआत से, क्या हमें किसी ऐसे समय पर प्रोसेस में, बिना डिज़ाइन वाली या लेआउट वाली सुविधाएं दिख रही हैं?
फ़िलिप: बिलकुल! इंटरऑप 2022 में स्टाइल और लेआउट से जुड़ी सुविधाओं तक सीमित नहीं था, लेकिन इसने बहुत ज़्यादा सीएसएस का इस्तेमाल किया. कुछ हद तक, क्योंकि सीएसएस 2021 की स्थिति हाल ही में बनी हुई है. हालांकि, यह इसलिए भी ज़रूरी है, क्योंकि वेब डेवलपर ने हमें बताया है कि अलग-अलग ब्राउज़र के डेटा में सबसे ज़्यादा समस्या इसी जगह पर होती है. फ़ॉर्म और डायलॉग एलिमेंट जैसे कई फ़ोकस एरिया, सीएसएस से आगे जाते हैं. साथ ही, हम एडिटिंग एपीआई और पॉइंटर और माउस इवेंट को बेहतर बनाने से जुड़ी जांच की कोशिश भी करते हैं. मुझे उम्मीद है कि इंटरऑप 2023 के लिए, हमारे पास वेब पर डेवलपर की ज़रूरतों के बारे में ज़्यादा नया डेटा होगा. साथ ही, हम कोशिश करते हैं कि इसमें ऐसी और सुविधाएं शामिल की जाएं.
आने वाले समय में होने वाले मुख्य बदलाव
इस सीरीज़ का मकसद, डेवलपर को आने वाले अहम बदलावों के बारे में जानकारी देना है; जो उपयोगकर्ता अनुभव और प्लैटफ़ॉर्म की क्षमताओं को बेहतर बनाने के लिए ज़रूरी हैं.
नीचे बताई गई टाइमलाइन ये बदलाव हैं. हमें उम्मीद है कि ये बदलाव कब होंगे. हालांकि, सुविधाओं के लिए रिलीज़ वर्शन बदल सकते हैं.
यूज़र-एजेंट रिडक्शन
User-Agent हेडर और इससे जुड़े JS इंटरफ़ेस, न सिर्फ़ ब्राउज़र और डिवाइस की काम की जानकारी देते हैं, बल्कि अपने साथ वंशावली और गलत जानकारी भी ले जाते हैं. UA स्ट्रिंग को पार्स करने वाली करीब अंतहीन गड़बड़ियों से ज़्यादा समस्या यह है कि इसे सभी नेविगेशन और सब-रिसॉर्स अनुरोधों के लिए सर्वर पर गलत तरीके से भेजा जाता है. यह एंट्रॉपी के करीब 10 बिट का प्रतिनिधित्व करता है. इसका इस्तेमाल करके सर्वर, वेब पर नेविगेट करने वाले उपयोगकर्ताओं के लिए स्थायी ट्रैकिंग आइडेंटिफ़ायर बना सकते हैं.
फ़िलहाल, हमारी योजना मौजूदा UA स्ट्रिंग को कम करने के लिए है. इसके लिए, लो-एंट्रॉपी वाले ब्राउज़र के मेजर वर्शन, प्लैटफ़ॉर्म का नाम, और मोबाइल वर्शन को शिप करना जारी रखना है. साथ ही, हाई एंट्रॉपी की जानकारी को फ़्रीज़ करना है. इस्तेमाल के ऐसे मामलों में जहां हेडर में शामिल जानकारी से ज़्यादा जानकारी की ज़रूरत होती है, उनके लिए हम Chrome 89 से User-Agent Client hints API को भेज रहे हैं.
हमने एक्सपेरिमेंट और सुझाव देने के लिए, छह महीने के लिए ऑरिजिन ट्रायल चलाया. हमें खुशी है कि 200 से ज़्यादा लोगों के मौजूद होने के बावजूद, हमें ब्रेकेज से जुड़ा कोई सुझाव नहीं मिला.
- टाइमलाइन: Chrome 101 में, हम आगे बढ़ रहे हैं और इसके लिए हम चौथा चरण: UA स्ट्रिंग में
MINOR.BUILD.PATCH
की जानकारी को घटाकर0.0.0
कर रहे हैं. साथ ही, हम साइटों को पांचवे और उसके बाद के चरणों की तैयारी करने के लिए, ज़रूरी समय और सूचना देते रहेंगे. हमने इन बदलावों से ऑप्ट आउट करने के लिए, एंटरप्राइज़ नीतियां भी बनाई हैं. हम साइटों को Chrome 113 तक बंद करने का ट्रायल भेजेंगे, ताकि साइटों को इन बदलावों के लिए तैयार रहने के लिए ज़्यादा समय मिल सके. - कॉल-टू-ऐक्शन: अपनी साइट को UA क्लाइंट हिंट पर माइग्रेट करें या सुविधा बंद करने के ट्रायल में हिस्सा लें.
स्थानीय फ़ॉन्ट ऐक्सेस API
Chrome, लोकल फ़ॉन्ट ऐक्सेस एपीआई को लॉन्च कर रहा है. हालांकि, साइटें लंबे समय से स्थानीय फ़ॉन्ट का इस्तेमाल कर रही हैं, लेकिन यह एपीआई, स्थानीय फ़ॉन्ट की सूची की गिनती करता है और फ़ॉन्ट डेटा को ऐक्सेस देता है. इस सुविधा की मदद से, उपयोगकर्ता अपने सभी फ़ॉन्ट को वेब-आधारित डिज़ाइन और दूसरे ऐप्लिकेशन के साथ इस्तेमाल कर सकते हैं.
स्थानीय फ़ॉन्ट को लंबे समय से फ़िंगरप्रिंट वेक्टर के तौर पर जाना जाता है. इस नए एपीआई से फ़िंगरप्रिंट की सुविधा के लिए फ़ॉन्ट का इस्तेमाल नहीं किया जा सकता. हालांकि, Chrome के लिए यह ज़रूरी है कि उपयोगकर्ता नए लोकल फ़ॉन्ट ऐक्सेस एपीआई का इस्तेमाल करने से पहले, किसी साइट के लिए "local-fonts"
को नई अनुमति दें.
आने वाले समय में, हमारी कोशिश है कि एक जैसे "स्थानीय-फ़ॉन्ट" स्थानीय फ़ॉन्ट का ऐक्सेस देने वाले किसी भी दूसरे एपीआई का इस्तेमाल करने से पहले अनुमति लेनी होगी.
- टाइमलाइन: Chrome 103 को टारगेट करना (जून 2022)
- कॉल-टू-ऐक्शन: एपीआई को लागू करने के लिए, इसके इस्तेमाल के तरीके और इसके बारे में ज़्यादा जानें.
Cache-control: no-store
के साथ BFcache काम कर रहा है
बैक/फ़ॉरवर्ड कैश मेमोरी की सुविधा को बेहतर बनाने के लिए, हमने एक खास अवसर की पहचान की है. इसकी मदद से, तेज़ी से बैक/फ़ॉरवर्ड नेविगेशन की सुविधा का इस्तेमाल किया जा सकता है. इसके लिए ज़रूरी है कि कैश-कंट्रोल: नो-स्टोर एचटीटीपी हेडर के साथ दिखाए जाने वाले पेजों पर BFकैश मेमोरी कैसे काम करती है. हमने एक सार्वजनिक प्रस्ताव तैयार किया है, ताकि अलग-अलग सिग्नल पर नज़र रखी जा सके. इससे हैरान करने वाली चीज़ों से बचा जा सकता है. उदाहरण के लिए, सिर्फ़ एचटीटीपी कुकी में बदलाव होने पर, BFकैश से पेजों को हटाना. साथ ही, अलग-अलग कॉन्टेक्स्ट के लिए नई-नई चीज़ें जोड़ना (उदाहरण के लिए, Enterprise/Edu ग्राहकों के लिए ग्रुप नीति). यह एक मुश्किल लेकिन रोमांचक मौका है. हम चाहते हैं कि इस बारे में ज़्यादा जानकारी और सुझाव दें!
- टाइमलाइन: बिना किसी रुकावट के Chrome 104 (जुलाई 2022) को टारगेट किया जा रहा है.
- कॉल-टू-ऐक्शन: ज़्यादा जानकारी के लिए प्रपोज़ल देखें. इसमें, इस्तेमाल किए जा रहे किसी काम के लागू होने की प्रोसेस को चालू करने और सुझाव/राय देने या शिकायत करने के तरीके शामिल हैं. जैसे, ऐसे असल मामले जिनमें हमारे काम करने के हमारे तरीके से नई रुकावटें पैदा होंगी.
मुझे उम्मीद है कि इस सीरीज़ के ज़रिए, मुझे अपने डेवलपर कम्यूनिटी को अपनी टीम और उनके काम के बारे में ज़्यादा जानकारी देने में मदद मिलेगी. इसलिए, हमारे साथ बने रहें और ज़्यादा अपडेट के लिए इस स्पेस पर नज़र रखें.
तब तक, वेबिंग की शुभकामनाएं.
Chrome Dev Insider के पहले एडिशन के बारे में आपकी क्या राय है? अपना सुझाव/राय दें या शिकायत करें.