Developer sering memberi tahu kami bahwa sulit untuk mengikuti perubahan di web dan memahami alasan perubahan ini terjadi. Hari ini, kami memulai seri baru bernama Chrome Dev Insider yang akan menyampaikan (1) Apa yang keren dan layak diberitakan, (2) Insight tentang cara kami membuat keputusan terkait topik utama (misalnya mengubah FLOC) atau menangani kerja sama kami dengan ekosistem (misalnya Interop 2022), dan (3) hal-hal yang sangat penting dari string pengguna yang perlu Anda ketahui (misalnya perubahan).
Saat menyampaikan upaya yang sedang kami lakukan, hal tersebut akan terkait dengan empat prioritas kami di tahun 2022:
- Memungkinkan pengalaman pengguna yang menyenangkan: membuat segala sesuatunya menjadi intuitif bagi pengguna; performa, transaksi, identitas, atau transisi.
- Memajukan kemampuan web: mendukung peran web yang terus berkembang dari platform konsumsi konten, hingga platform untuk berbagai pengalaman termasuk yang memerlukan integrasi tingkat hardware dan OS mendalam.
- Menyederhanakan pengembangan web: mempermudah pengambilan keputusan dan meningkatkan produktivitas developer.
- Meningkatkan privasi web: melayani pengguna web harapan akan perlindungan privasi data yang lebih baik dalam menghadapi kecanggihan developer yang terus meningkat dalam hal pelacakan dan penargetan.
Dalam berita: Interop 2022
Saat merencanakan roadmap, kami melihat masukan developer untuk memahami permasalahan dan kebutuhan utama developer web, di antara hal-hal lainnya. Tema utama yang muncul berulang kali adalah kompatibilitas browser, yang membuat pengalaman berfungsi sama di semua browser. Selama setahun terakhir, kami telah bekerja sama dengan ekosistem untuk menjawab tema ini sebagai bagian dari prioritas kami untuk "menyederhanakan pengembangan web".
Tahun lalu, Microsoft, Chrome, dan pelaku ekosistem mengumumkan Compat 2021 yang membuat semua mesin browser populer (Chromium, Gecko, dan Webkit) mencapai skor 90+% dalam lima area fokus utama yang diidentifikasi untuk tahun ini. Di antara hal-hal lainnya, Compat 2021 menciptakan fondasi yang kuat untuk fitur-fitur canggih seperti CSS Grid (12% penggunaan dan terus bertambah) dan CSS Flexbox (77% penggunaan).
Bulan lalu, Apple, Bocoup, Google, Igalia, Microsoft, dan Mozilla bekerja sama sebagai pendukung untuk mengatasi masalah kompatibilitas browser teratas yang diidentifikasi oleh developer web serta menyepakati tolok ukur umum. Hasilnya adalah Interop 2022, sebuah project dengan sasaran untuk memberikan lebih banyak homogenitas ke platform. Tolok ukur berfokus pada 15 area prioritas yang diidentifikasi oleh developer sebagai kunci untuk meningkatkan produktivitas mereka.
Informasi eksklusif: Bekerja sama dengan rekan browser kami
Sebagai inti dari Interop 2022, saya berbincang dengan Robert Nyman dan Philip Jägenstedt yang telah terlibat dalam diskusi ini untuk mendapatkan informasi selengkapnya. Berikut ini versi editor tentang pembuatannya.
Apa asal inisiatif ini?
Robert: Semuanya dimulai pada tahun 2019, saat kami melakukan survei MDN DNA 2019. Masalah kompatibilitas terlihat jelas sebagai masalah utama bagi developer yang membangun aplikasi untuk web, dan kami menindaklanjutinya dengan lebih detail dalam Laporan Kompatibilitas Browser MDN 2020. Hal ini memberi kami cukup informasi dan data yang dapat ditindaklanjuti untuk memulai upaya Compat 2021, yang pada akhirnya menyebabkan melanjutkan pekerjaan tersebut dan juga memperluas cakupan tersebut dengan Interop 2022.
Philip: Saya juga ingin menyebutkan web-platform-tests dan State of CSS 2021. Kami memiliki kolaborasi kuat dengan vendor browser lain dalam pengujian menggunakan WPT beberapa tahun yang lalu, dan kami benar-benar ingin memanfaatkannya. Sebagian besar pengujian untuk fitur ini sudah ditulis, jadi kita hanya perlu meninjau pengujian dan menambahkan beberapa cakupan yang tidak ada. Google telah banyak berinvestasi di wpt.fyi, tetapi kami juga berterima kasih kepada Mozilla untuk berterima kasih karena telah membuat WPT sukses seperti sekarang. Mozilla tentu saja juga memiliki andil besar dalam survei DNA MDN. Selain itu, ada juga Negara Bagian CSS 2021. Untuk mengadakan upaya seperti Interop 2022, kami memerlukan masukan baru terkait kebutuhan developer web. Jadi, kami bekerja sama dengan pengelola survei Sacha untuk menyertakan beberapa pertanyaan baru tentang masalah kompatibilitas browser. Hal tersebut sangat membantu kami dalam proses perencanaan Interop 2022.
Apakah ada pembelajaran atau masukan dari Compat 2021?
Robert: Kami senang mengukur dan memiliki skor dan insight tentang performa setiap mesin browser. Dengan begitu, kami dapat mengikuti progres dan memastikan untuk mendiskusikan dan mengatasi masalah yang tidak jelas atau perlu diprioritaskan. Kita juga segera menyadari bahwa "Interop" adalah nama yang lebih baik untuk inisiatif tersebut. Istilah kompatibilitas dan interoperabilitas biasanya dibedakan berdasarkan vendor browser, yang mana compat mengacu pada compat situs, dan interop mengacu pada dua browser atau lebih yang berperilaku sama. Dalam terminologi tersebut, upaya ini adalah tentang interoperabilitas sehingga proyek telah selaras dengan penamaan tersebut.
Apa visi kami di sini?
Robert: Agar web tetap terbuka, browser dan rendering keberagaman mesin sangatlah penting. Sayangnya, saat ini harga ini tinggi bagi developer kami yang harus mengimbangi tingkat dukungan yang berbeda untuk fitur di setiap mesin. Visi kami adalah agar developer melihat platform web sebagai opsi yang paling layak dan pilihan paling menarik untuk kebutuhan mereka, dan bahwa mereka dapat fokus pada pembangunan pengalaman terbaik daripada menghabiskan banyak waktu untuk mengatasi masalah interoperabilitas. Dan sangat jelas bahwa untuk mencapai sasaran tersebut, fitur yang paling banyak diminta harus mendarat di semua mesin browser utama agar benar-benar memungkinkan pengembang untuk sukses di platform web.
Bagaimana kita secara kolektif bergerak maju saat browser dengan (terkadang) sasaran yang berbeda bersatu?
Philip: Pendekatan kami adalah mencari area yang memiliki minat yang sama, serta menemukan kolaborasi yang saling menguntungkan dan kurang lebih memiliki kesamaan tujuan. Dengan memprioritaskan sejumlah kecil hal yang perlu dikerjakan secara bersamaan, kami berfokus pada area tersebut, dan bergerak maju lebih cepat serta mendapatkan kualitas yang lebih tinggi daripada jika kami bekerja secara terpisah. Begitulah konsepnya.
Saya rasa, kita perlu menyadari bahwa ada batasan untuk pendekatan berbasis konsensus ini, di mana tujuan tidak cukup selaras sehingga kita harus melangkah maju dengan cara lain. Terkadang menunjukkan lebih banyak bukti tentang kebutuhan pengembang web atau pengguna dapat membantu, namun pada akhirnya vendor browser dapat mengirimkan hal-hal yang tidak memiliki kesepakatan luas. Dalam kasus terbaik, nilai fitur tersebut kemudian didemonstrasikan oleh developer web yang mencoba fitur tersebut, dan mendapati bahwa fitur tersebut memenuhi kebutuhan mereka, lalu meminta fitur yang sama di semua browser.
Kembali ke Interop 2022, apakah kami melihat fitur non-desain atau tata letak masuk ke dalam pipeline pada suatu saat?
Philip: Tentu saja! Interop 2022 tidak terbatas pada fitur gaya visual dan tata letak, tetapi pada akhirnya sangat condong ke CSS. Sebagian karena State of CSS 2021 masih baru, tetapi juga karena developer web memberi tahu kami bahwa di sinilah mereka mengalami masalah paling besar dengan perbedaan antar-browser. Beberapa area fokus, seperti elemen bentuk dan dialog, tidak hanya dilakukan di CSS, dan kami juga memiliki beberapa upaya investigasi seputar pengeditan API serta peristiwa pointer dan mouse. Semoga untuk Interop 2023, kami akan memiliki lebih banyak data baru terkait kebutuhan developer di seluruh web, dan menyertakan lebih banyak fitur semacam itu dalam upaya ini.
Perubahan penting yang akan datang
Salah satu maksud dari seri ini adalah untuk memberikan informasi kepada developer tentang perubahan penting yang akan datang; hal-hal yang penting untuk meningkatkan {i>user experience<i} dan kemampuan platform.
Linimasa yang disebutkan di bawah ini adalah waktu perkiraan perubahan ini akan terjadi. Namun, versi rilis untuk fitur dapat berubah.
pengurangan Agen Pengguna
Header User-Agent—dan antarmuka JS yang terkait—tidak hanya mengirimkan informasi browser dan perangkat yang berguna, tetapi juga membawa warisan silsilah dan informasi yang tidak akurat. Lebih bermasalah daripada pasokan bug penguraian string UA yang hampir tak ada habisnya adalah fakta bahwa file tersebut secara pasif dikirim ke server untuk semua permintaan navigasi dan sub-resource. Nilai ini mewakili sekitar 10 bit entropi yang dapat digunakan server untuk membuat ID pelacakan yang stabil saat pengguna menavigasi web.
Rencana kami saat ini adalah mengurangi string UA yang ada dengan terus mengirimkan versi utama browser dengan entropi rendah, nama platform, dan tingkat seluler, sehingga membekukan info entropi tinggi. Untuk kasus penggunaan yang memerlukan informasi tambahan selain yang tercantum di header, kami telah mengirimkan API User-Agent Client Hints API sejak Chrome 89.
Kami menjalankan Uji Coba Origin selama 6 bulan untuk eksperimen dan masukan. Kami senang tidak menerima masukan terkait kerusakan meskipun memiliki lebih dari 200 peserta.
- Linimasa: Di Chrome 101, kami melanjutkan fase 4: mengurangi informasi
MINOR.BUILD.PATCH
di string UA menjadi0.0.0
. Selain itu, kami akan terus memberikan persiapan serta waktu bagi situs untuk melakukan persiapan untuk fase 5 dan seterusnya. Kami juga telah membuat kebijakan perusahaan untuk memilih tidak mengikuti perubahan ini, dan akan menjalankan uji coba penghentian penggunaan hingga Chrome 113 agar situs memiliki lebih banyak waktu agar siap untuk menghadapi perubahan ini. - Pesan ajakan (CTA): Migrasikan situs Anda ke Client Hints UA atau berpartisipasi dalam uji coba penghentian penggunaan.
API Akses Font Lokal
Chrome meluncurkan Local Font Access API. Meskipun situs telah lama dapat menggunakan font lokal, API ini mencantumkan daftar font lokal dan memberikan akses ke data font itu sendiri. Fungsi ini memberi pengguna kemampuan untuk menggunakan semua font mereka dengan desain berbasis web dan aplikasi lainnya.
{i>Font<i} lokal telah lama dikenal sebagai vektor pelacakan sidik jari. Meskipun API baru ini tidak meningkatkan kemampuan penggunaan font untuk pelacakan sidik jari, Chrome mewajibkan pengguna memberikan izin "local-fonts"
baru untuk situs sebelum dapat menggunakan Local Font Access API yang baru.
Di masa mendatang, kami berencana mewajibkan "font lokal" yang sama yang diizinkan sebelum menggunakan API lain yang menyediakan akses ke font lokal.
- Linimasa: Menargetkan Chrome 103 (Juni '22)
- Pesan ajakan (CTA): Pelajari lebih lanjut API dan cara menggunakannya untuk mulai menerapkan.
Membuat BFCache berfungsi dengan Cache-control: no-store
Kami telah mengidentifikasi peluang signifikan untuk meningkatkan seberapa sering Back/Forward cache dapat memberikan navigasi kembali/maju instan. Hal ini memerlukan perubahan pada perilaku BFCache di halaman yang ditayangkan dengan header HTTP Cache-control: no-store. Kami memiliki proposal publik yang dirancang untuk mencegah kejutan yang signifikan dengan memantau berbagai sinyal (misalnya mengeluarkan halaman dari BFCache setiap kali cookie khusus HTTP berubah), dan penerapan (misalnya kebijakan grup untuk pelanggan Enterprise/Edu) untuk konteks yang unik. Ini adalah peluang yang kompleks tetapi menarik, dan kami mengharapkan peninjauan serta masukan tambahan.
- Jadwal: Menargetkan Chrome 104 (Juli 2022), dengan asumsi tidak ada kejutan besar.
- Pesan ajakan (CTA): Lihat proposal untuk mengetahui detail lebih lanjut, termasuk cara mengaktifkan implementasi yang masih dalam proses, dan cara untuk memberikan masukan seperti skenario sebenarnya yang pendekatan kami akan menciptakan rintangan baru.
Melalui seri ini, saya berharap dapat memberikan rasa fokus dan hubungan kepada komunitas developer dengan mendekatkan mereka dengan tim saya dan pekerjaan mereka. Jadi, pantau terus dan pantau halaman ini untuk mendapatkan info terbaru lainnya.
Sampai jumpa lagi.
Apa pendapat Anda tentang edisi pertama The Chrome Dev Insider? Beri masukan.