पेश है Chrome Dev Insider

बेन गालब्रेथ
बेन गालब्रेथ

डेवलपर अक्सर हमें बताते हैं कि वेब पर होने वाले बदलावों के बारे में जानना और इन बदलावों की वजह समझना मुश्किल है. आज, हम Chrome Dev Insider नाम की एक नई सीरीज़ लॉन्च करने जा रहे हैं. इसमें हम (1) मज़ेदार और खबरें देने वाले कॉन्टेंट के बारे में अहम जानकारी देंगे, (2) किसी अहम विषय पर हमने क्या फ़ैसला लिया (उदाहरण के लिए, FLOC को बदलना) या नेटवर्क को लेकर अपने काम को कैसे पूरा किया. (उदाहरण के लिए, Interop 2022) में आपके एजेंट के बारे में ज़रूरी जानकारी (उदाहरण के लिए) एजेंट के बारे में ज़रूरी बदलाव.

हम यह शेयर कर रहे हैं कि हम किन चीज़ों पर काम कर रहे हैं और साल 2022 के लिए हमारी इन चार प्राथमिकताओं पर काम होगा:

  • बेहतरीन उपयोगकर्ता अनुभव देने की सुविधा: उपयोगकर्ताओं को उनके अनुभव को बेहतर बनाएं. फिर चाहे परफ़ॉर्मेंस, लेन-देन, पहचान या ट्रांज़िशन हो.
  • वेब की क्षमताओं को बेहतर बनाना: यह वेब की लगातार बदलती भूमिका को आसान बनाने में मदद करता है. जैसे, कॉन्टेंट के इस्तेमाल वाला प्लैटफ़ॉर्म. इससे कई तरह के अनुभव मिल सकते हैं. इनमें वे प्लैटफ़ॉर्म भी शामिल हैं जिनके लिए ओएस और हार्डवेयर लेवल के डीप इंटिग्रेशन की ज़रूरत होती है.
  • वेब डेवलपमेंट को आसान बनाना: फ़ैसले लेने की प्रक्रिया को आसान बनाएं और डेवलपर के काम को बेहतर बनाएं.
  • वेब की निजता को बेहतर बनाना: डेटा की निजता को बेहतर तरीके से सुरक्षित रखने के लिए, वेब उपयोगकर्ताओं की उम्मीदों को पूरा किया जा सकता है. ऐसा डेटा को ट्रैक करने और टारगेटिंग (विज्ञापन के लिए सही दर्शक चुनना) में लगातार होने वाली डेवलपर की ज़रूरतों को पूरा करने के लिए किया जाता है.

चर्चा में: इंटरऑप 2022

हम अपने रोडमैप की योजना बनाते समय डेवलपर के सुझाव को देखते हैं, ताकि अन्य चीज़ों के साथ-साथ वेब डेवलपर की मुख्य समस्याओं और ज़रूरतों को भी समझा जा सके. एक मुख्य थीम जो बार-बार दिखती है वह है ब्राउज़र के साथ काम करने की सुविधा. इस वजह से, सभी ब्राउज़र पर एक जैसा अनुभव उपलब्ध होता है. पिछले साल से, हम इस विषय पर काम करने के लिए नेटवर्क के साथ काम कर रहे हैं. हमारी यह प्राथमिकता है कि "वेब डेवलपमेंट को आसान बनाना" हमारी प्राथमिकता है.

पिछले साल, Microsoft, Chrome, और नेटवर्क कंपनियों ने Compat 2021 का एलान किया था. इसकी वजह से, सभी लोकप्रिय ब्राउज़र इंजन (Chromium, Gecko, और Webkit) ने साल के लिए तय किए गए पांच अहम क्षेत्रों में 90% से ज़्यादा स्कोर हासिल किया. इसके अलावा, Compat 2021 ने CSS Grid (12% इस्तेमाल और लगातार बढ़ रहा) और CSS Flexbox (77% इस्तेमाल) जैसी बेहतरीन सुविधाओं के लिए मज़बूत आधार तैयार किया है.

पिछले महीने Apple, Bocoup, Google, Igalia, Microsoft, और Mozilla मददगार के रूप में मिलकर काम कर रहे थे. इनकी मदद से, वेब डेवलपर ने ब्राउज़र के साथ काम करने में होने वाली उन समस्याओं को हल किया था जिनके बारे में वेब डेवलपर ने पहचाना था और जो एक सामान्य मानदंड पर सहमत थे. इसी वजह से हमने Interop 2022 नाम का एक प्रोजेक्ट तैयार किया. इसका मकसद, YouTube पर सभी को एक जैसा अनुभव देना है. इस मानदंड में, प्राथमिकता वाले 15 क्षेत्रों पर ध्यान दिया जाता है. डेवलपर अपनी उत्पादकता को बेहतर बनाने के लिए अहम होते हैं.

खास जानकारी: अपने जैसे ब्राउज़र के साथ काम करना

इंटरऑप 2022 के सबसे पहले मैं रॉबर्ट नीमन और फ़िलिप जेगेन्स्टेड के साथ बात कर पाई. ये लोग इन खास पलों के बारे में जानने के लिए, इन बातचीत में शामिल रहे हैं. यहां एक साथ काम करने के तरीके के बारे में बताया गया है.

इस पहल की वजह क्या है?

रॉबर्ट: इसकी शुरुआत 2019 में हुई, जब हमने एमडीएन डीएनए 2019 सर्वे किया. वेब पर काम करने से जुड़ी समस्याएं, उन डेवलपर के लिए सबसे बड़ी समस्या रही हैं जो वेब पर काम करते हैं. इसके बारे में, हमने MDN ब्राउज़र के साथ काम करने की रिपोर्ट 2020 में ज़्यादा जानकारी दी है. इससे हमें Compat 2021 की कोशिश को शुरू करने के लिए, ज़रूरी जानकारी और कार्रवाई करने लायक डेटा मिला. इसकी वजह से, इस काम को जारी रखा जा सका और इंटरऑप 2022 की मदद से, इस दायरे को बढ़ाया गया.

Philip: मुझे web-platform-tests और State of CSS 2021 के बारे में भी बताना है. हमने पिछले कई सालों में WPT का इस्तेमाल करके टेस्टिंग करने को लेकर, दूसरे ब्राउज़र वेंडर के साथ मिलकर बहुत काम किया है. हम वाकई में इस पर काम करना चाहते थे. इन सुविधाओं के लिए जांच ज़्यादातर पहले से ही लिखे जा चुके थे, इसलिए हमें सिर्फ़ जांच की समीक्षा करनी थी और कुछ ऐसे कवरेज को जोड़ने की ज़रूरत थी जो उपलब्ध नहीं थे. Google ने wpt.fyi में बहुत निवेश किया है, लेकिन WPT को आज की सफलता के लिए धन्यवाद देने के लिए Mozilla का भी इस्तेमाल किया जाता है. एमडीएन के डीएनए सर्वे में मोज़िला का भी बड़ा योगदान रहा है. इनके अलावा, हमने 2021 में सीएसएस का स्टेटस भी उपलब्ध कराया है. इंटरऑप 2022 जैसा एक काम करने के लिए, हमें वेब डेवलपर की ज़रूरतों पर नए इनपुट की ज़रूरत है. इसलिए, हमने ब्राउज़र के साथ काम करने से जुड़ी समस्याओं के बारे में कुछ नए सवाल शामिल करने के लिए, सर्वे मैनेज करने वाली कंपनी Sacha के साथ मिलकर काम किया. इससे हमें इंटरऑप 2022 की योजना बनाने में मदद मिली.

Comat 2021 से कुछ सीखने या सुझाव देने हैं?

रॉबर्ट: ब्राउज़र के हर इंजन के काम करने के तरीके को मापना और इसके बारे में अहम जानकारी देना बहुत काम का था. ऐसा इसलिए किया गया, ताकि हम प्रोग्रेस पर नज़र रख सकें और उन समस्याओं पर चर्चा कर सकें और उन्हें हल कर सकें जो पहले से साफ़ नहीं थीं या जिन्हें प्राथमिकता देने की ज़रूरत थी. हमें जल्द ही यह एहसास भी हुआ कि इस पहल के लिए "Interop" एक बेहतर नाम है. कम्पैटबिलटी और इंटरऑपरेबिलिटी शब्दों को आम तौर पर ब्राउज़र वेंडर अलग-अलग दिखाते हैं. यहां कंपैट का मतलब साइट के साथ कम्पैट के साथ-साथ इंटरऑपरेबिलिटी से है और इंटरऑप का मतलब ऐसे दो या दो से ज़्यादा ब्राउज़र से है जो एक जैसा व्यवहार करते हैं. उस शब्दावली में, यह कोशिश इंटरऑपरेबिलिटी के बारे में है और इसलिए प्रोजेक्ट उस नाम के मुताबिक है.

यहां हमारा विज़न क्या है?

रॉबर्ट: वेब को चालू रखने के लिए, ब्राउज़र और रेंडरिंग इंजन में अलग-अलग तरह की सुविधाएं देना ज़रूरी है. माफ़ करें, फ़िलहाल हमारे डेवलपर को हर इंजन की सुविधाओं के लिए, अलग-अलग लेवल की मदद लेनी पड़ती है. हालांकि, यह शुल्क ज़्यादा है. हमारा विज़न है कि डेवलपर अपनी ज़रूरतों के हिसाब से वेब प्लैटफ़ॉर्म को सबसे सही विकल्प और सबसे आकर्षक विकल्प के तौर पर देखें. साथ ही, वे इंटरऑपरेबिलिटी की समस्याओं पर बहुत समय खर्च करने के बजाय, बेहतरीन अनुभव बनाने पर फ़ोकस कर सकें. इस लक्ष्य तक पहुंचने के लिए, यह बात बिलकुल साफ़ है कि डेवलपर को वेब प्लैटफ़ॉर्म पर सफल होने में मदद करने के लिए, सबसे ज़्यादा मांगी गई सुविधाओं को सभी मुख्य ब्राउज़र इंजन का इस्तेमाल करना होगा.

जब अलग-अलग लक्ष्यों वाले ब्राउज़र एक साथ काम करते हैं, तब हम चीज़ों को एक साथ कैसे आगे बढ़ाते हैं?

फ़िलिप: हमारा मकसद, ऐसी चीज़ों पर फ़ोकस करना है जिनमें लोगों की दिलचस्पी हो. इससे उन लोगों के साथ मिलकर काम करने का पता लगाया जा सकता है जिनसे मिलने वाले फ़ायदे पहले से ही मिलते-जुलते हैं. एक ही समय में सीमित चीज़ों पर काम करने को प्राथमिकता देकर, हम उन चीज़ों पर फ़ोकस करते हैं. साथ ही, तेज़ी से आगे बढ़ते हैं और अलग से काम करने पर हमारी क्वालिटी बेहतर होती है. यही आइडिया है.

मुझे लगता है कि यह पहचान लेना अहम है कि सहमति पर आधारित इस नज़रिए की सीमाएं होती हैं. यहां लक्ष्य काफ़ी रूप से अलाइन नहीं होते हैं, इसलिए हमें किसी और तरीके से आगे बढ़ने की ज़रूरत है. कभी-कभी वेब डेवलपर या उपयोगकर्ता की ज़रूरतों के बारे में और सबूत लाने से मदद मिल सकती है, लेकिन आखिरकार ब्राउज़र वेंडर उन चीज़ों को शिप कर सकते हैं जिनके लिए व्यापक कानूनी समझौता नहीं होता है. सबसे बेहतर मामलों में, इसके बाद सुविधा का इस्तेमाल करने वाले वेब डेवलपर, सुविधा की अहमियत बताते हैं. साथ ही, उन्हें पता चलता है कि यह सुविधा उनकी ज़रूरतों को पूरा करती है और वे सभी ब्राउज़र में उससे जुड़ी उन सुविधाओं की मांग भी करते हैं.

इंटरऑप 2022 में फिर से, क्या हमें सिस्टम से अलग डिज़ाइन या लेआउट वाली सुविधाएं भी उपलब्ध होंगी?

फ़िलिप: बिलकुल! इंटरऑप 2022, स्टाइल और लेआउट सुविधाओं तक सीमित नहीं था, लेकिन इसने सीएसएस का इस्तेमाल बहुत ज़्यादा किया. इसकी वजह यह भी हो सकती है कि State of CSS 2021 नया था. हालांकि, यह भी हो सकता है कि वेब डेवलपर ने हमें बताया हो कि अलग-अलग ब्राउज़र के बीच अंतर की वजह से, उन्हें यहीं पर सबसे ज़्यादा परेशानी होती है. फ़ॉर्म और डायलॉग एलिमेंट जैसे कई अहम क्षेत्र, सीएसएस के अलावा किसी और जगह पर दिए जाते हैं. साथ ही, हम एपीआई और पॉइंटर और माउस इवेंट में बदलाव करने के तरीकों की जांच करने की कोशिश करते हैं. मुझे उम्मीद है कि इंटरऑप 2023 के लिए, हमारे पास वेब पर डेवलपर की ज़रूरतों के बारे में ज़्यादा नया डेटा होगा. साथ ही, हम कोशिश में इस तरह की और सुविधाएं शामिल करेंगे.

आने वाले समय में होने वाले अहम बदलाव

इस सीरीज़ का एक मकसद, डेवलपर को आने वाले अहम बदलावों के बारे में जानकारी देना है. इसमें ऐसी चीज़ें शामिल हैं जो उपयोगकर्ता अनुभव और प्लैटफ़ॉर्म की सुविधाओं को बेहतर बनाने के लिए ज़रूरी हैं.

ये बदलाव कब तक लागू होंगे, इसके बारे में नीचे बताया गया है. हालांकि, ऐसा हो सकता है कि सुविधाओं के रिलीज़ वर्शन में बदलाव हो.

उपयोगकर्ता-एजेंट को कम करना

उपयोगकर्ता-एजेंट हेडर—और इससे जुड़े JS इंटरफ़ेस—न सिर्फ़ ब्राउज़र और डिवाइस की काम की जानकारी देते हैं, बल्कि इसमें लीनेज और गलत जानकारी की लेगसी जानकारी भी मौजूद होती है. UA स्ट्रिंग पार्स करने वाले बग की अंतहीन ज़रूरत से ज़्यादा समस्या यह है कि इसे सभी नेविगेशन और सब-रिसॉर्स अनुरोधों के लिए सर्वर पर बेअसर भेजा गया है. यह करीब 10 बिट एंट्रॉपी को दिखाता है, जिसका इस्तेमाल करके सर्वर, वेब पर नेविगेट करने के दौरान स्थायी ट्रैकिंग आइडेंटिफ़ायर बना सकते हैं.

हमारा मौजूदा प्लान, मौजूदा UA स्ट्रिंग को कम करने के लिए, लो-एंट्रॉपी ब्राउज़र के मेजर वर्शन, प्लैटफ़ॉर्म का नाम, और मोबाइलनेस को शिप करना जारी रखना है. साथ ही, ज़्यादा एंट्रॉपी की जानकारी को फ़्रीज़ करना जारी रखना है. Chrome 89 से, हम ऐसे मामलों के लिए User-Agent Client बचे API भेज रहे हैं जिनमें हेडर में दी गई जानकारी के बजाय अतिरिक्त जानकारी की ज़रूरत होती है.

हमने एक्सपेरिमेंट और सुझावों के लिए, छह महीनों तक ऑरिजिन ट्रायल को चलाया. इस प्रोग्राम में 200 से ज़्यादा लोग होने के बावजूद, हमें ब्रेकेज से जुड़ा कोई सुझाव नहीं मिला.

लोकल फ़ॉन्ट ऐक्सेस एपीआई

Chrome, Local Font Access API लॉन्च कर रहा है. साइटें लंबे समय से लोकल फ़ॉन्ट का इस्तेमाल कर सकती हैं. हालांकि, यह एपीआई लोकल फ़ॉन्ट की सूची की गिनती करता है और फ़ॉन्ट डेटा को ऐक्सेस देता है. इस फ़ंक्शन की मदद से उपयोगकर्ता, अपने सभी फ़ॉन्ट को वेब-आधारित डिज़ाइन और अन्य ऐप्लिकेशन के साथ इस्तेमाल कर सकते हैं.

लोकल फ़ॉन्ट को लंबे समय से फ़िंगरप्रिंटिंग वेक्टर के रूप में जाना जाता है. इस नए एपीआई से, फ़िंगरप्रिंटिंग के लिए फ़ॉन्ट इस्तेमाल करने की सुविधा नहीं बढ़ती है. हालांकि, Chrome के लिए यह ज़रूरी है कि कोई उपयोगकर्ता, Local Font Access API का इस्तेमाल करने से पहले, उस साइट को "local-fonts" की नई अनुमति दे.

आने वाले समय में, हमारी योजना है कि लोकल फ़ॉन्ट का ऐक्सेस देने वाले किसी भी दूसरे एपीआई का इस्तेमाल करने से पहले, इसी तरह की "local-fonts" की अनुमति दी जाए.

Cache-control: no-store की मदद से BFcache काम कर रहा है

हमें पता चला है कि एक बड़े अवसर की मदद से, यह बेहतर बनाया जा सकता है कि बैक/फ़ॉरवर्ड कैश मेमोरी से, कितनी बार बैक-फ़ॉरवर्ड कैश मेमोरी की सुविधा तुरंत बैक-फ़ॉरवर्ड नेविगेशन के लिए इस्तेमाल की जा सकती है. इसके लिए, कैश-कंट्रोल: नो-स्टोर एचटीटीपी हेडर के साथ दिखाए गए पेजों पर BFकैश के काम करने के तरीके में बदलाव करना ज़रूरी है. हमारे पास एक सार्वजनिक प्रस्ताव है, जिसे खास समस्याओं से बचने के लिए डिज़ाइन किया गया है. इसके लिए, कई सिग्नल की निगरानी की जाती है. उदाहरण के लिए, सिर्फ़ एचटीटीपी कुकी बदलने पर, BFcache से पेजों को हटाना और खास कॉन्टेक्स्ट के लिए अलग-अलग दस्तावेज़ (उदाहरण के लिए, Enterprise/Edu ग्राहकों के लिए ग्रुप की नीति) बनाना. यह एक मुश्किल, लेकिन रोमांचक अवसर है. इसके लिए, हम ज़्यादा जांच-परख और सुझाव, शिकायत या राय जानना चाहेंगे!

  • समयावधि: इस वर्शन में, Chrome 104 (जुलाई 2022) को टारगेट किया गया है, जिसमें कोई बड़ी समस्या नहीं है.
  • कॉल-टू-ऐक्शन: ज़्यादा जानकारी के लिए, प्रपोज़ल देखें. इसमें, काम जारी है इसे लागू करने का तरीका और सुझाव, शिकायत या राय शेयर करने के तरीके शामिल हैं. उदाहरण के लिए, उन असल स्थितियों को जिनमें हमारे तरीके की वजह से नई रुकावटें आ सकती हैं.

इस सीरीज़ के ज़रिए, मुझे उम्मीद है कि मैं डेवलपर कम्यूनिटी को अपनी टीम और उनके काम के बारे में ज़्यादा करीब लाकर, उनसे जुड़े रहने का एहसास बना पाऊंगा. इसलिए, हमारे साथ बने रहें और ज़्यादा अपडेट के लिए इस स्पेस पर नज़र रखें.

तब तक, वेबिंग का आनंद लें.

Chrome Dev Insider के पहले वर्शन के बारे में आपकी क्या राय है? अपना सुझाव/राय दें या शिकायत करें.