ขอแนะนำ Chrome Dev Insider

เบน กัลเบรด
Ben Galbraith

นักพัฒนาซอฟต์แวร์มักแจ้งให้เราทราบว่าการติดตามการเปลี่ยนแปลงในเว็บและทำความเข้าใจว่าเหตุใดการเปลี่ยนแปลงเหล่านี้จึงเกิดขึ้นเป็นเรื่องยาก วันนี้เราจะเปิดตัวซีรีส์ใหม่เรื่อง Chrome Dev Insider ซึ่งเราจะมาแชร์ (1) อะไรเจ๋งๆ และน่าสนใจในข่าว (2) ข้อมูลเชิงลึกเกี่ยวกับวิธีตัดสินใจของเราในหัวข้อสำคัญ (เช่น การเปลี่ยน FLOC) หรือแนวทางการทำงานของเรากับระบบนิเวศ (เช่น Interop 2022) และ (3) สิ่งที่มีความสำคัญจริงๆ (เช่น สำหรับการเปลี่ยนแปลงสตริง

เมื่อเราแชร์สิ่งที่กำลังดำเนินการอยู่ สิ่งนี้จะเกี่ยวข้องกับสิ่งสำคัญ 4 ประการสำหรับปี 2022 ดังต่อไปนี้

  • ช่วยให้ผู้ใช้ได้รับประสบการณ์การใช้งานที่ยอดเยี่ยม: ช่วยให้ผู้ใช้เข้าใจได้ง่าย ไม่ว่าจะเป็นประสิทธิภาพ ธุรกรรม ข้อมูลระบุตัวตน หรือการเปลี่ยนแปลง
  • การยกระดับความสามารถของเว็บ: สนับสนุนบทบาทที่เปลี่ยนแปลงไปของเว็บจากการเป็นแพลตฟอร์มการบริโภคเนื้อหา ไปจนถึงแพลตฟอร์มสำหรับประสบการณ์ที่หลากหลาย รวมถึงผู้ที่ต้องการการผสานรวมระบบปฏิบัติการและฮาร์ดแวร์ในระดับลึก
  • ทำให้การพัฒนาเว็บง่ายขึ้น: ตัดสินใจได้ง่ายขึ้นและปรับปรุงประสิทธิภาพการทำงานของนักพัฒนาซอฟต์แวร์
  • การปรับปรุงความเป็นส่วนตัวของเว็บ: ตอบสนองต่อความคาดหวังของผู้ใช้เว็บให้มีการคุ้มครองความเป็นส่วนตัวของข้อมูลได้ดียิ่งขึ้นเมื่อนักพัฒนาซอฟต์แวร์ยังคงติดตามและกำหนดเป้าหมายได้อย่างเชี่ยวชาญยิ่งขึ้น

ข่าวสาร: การทำงานร่วมกันปี 2022

เมื่อวางแผนแผนกลยุทธ์ เราจะศึกษาความคิดเห็นจากนักพัฒนาซอฟต์แวร์เพื่อทำความเข้าใจจุดที่เป็นปัญหาและความต้องการของนักพัฒนาเว็บ รวมถึงปัจจัยอื่นๆ ธีมหลักที่ปรากฏขึ้นซ้ำๆ คือความเข้ากันได้กับเบราว์เซอร์ ทำให้การใช้งานเหมือนกันในทุกเบราว์เซอร์ ตลอดปีที่ผ่านมา เราได้ทำงานร่วมกับระบบนิเวศนี้เพื่อรับมือกับแนวคิดนี้ ซึ่งถือเป็นเรื่องสำคัญในการ "พัฒนาเว็บให้ง่ายขึ้น"

เมื่อปีที่แล้ว Microsoft, Chrome และผู้เล่นในระบบนิเวศได้ประกาศเปิดตัว Compat 2021 ซึ่งส่งผลให้เครื่องมือเบราว์เซอร์ยอดนิยมทั้งหมด (Chromium, Gecko และ Webkit) ได้รับคะแนนสูงกว่า 90% ในด้านที่มุ่งเน้นหลัก 5 ด้านที่ระบุไว้ในปีนั้นๆ นอกจากนี้ Compat 2021 ยังช่วยสร้างรากฐานที่มั่นคงสำหรับฟีเจอร์ที่มีประสิทธิภาพ เช่น CSS Grid (การใช้งาน 12% และเติบโตอย่างต่อเนื่อง) และ CSS Flexbox (การใช้งาน 77%)

และในเดือนที่ผ่านมา Apple, Bocoup, Google, Igalia, Microsoft และ Mozilla ได้ร่วมมือกันเป็นผู้สนับสนุนเพื่อแก้ไขปัญหาด้านความเข้ากันได้กับเบราว์เซอร์ส่วนใหญ่ที่นักพัฒนาเว็บตรวจพบ และยอมรับเกณฑ์การเปรียบเทียบทั่วไป ผลที่ได้คือโครงการ Interop 2022 ที่มีเป้าหมายเพื่อให้แพลตฟอร์มมีความเป็นอันหนึ่งเดียวกันมากขึ้น การเปรียบเทียบมุ่งเน้นที่ประเด็นหลัก 15 ด้านที่นักพัฒนาซอฟต์แวร์ระบุว่าเป็นกุญแจสำคัญในการเพิ่มประสิทธิภาพการทำงาน

ข่าววงใน: การทำงานร่วมกับเพื่อนๆ ที่ใช้เบราว์เซอร์

ด้วยความนึกถึงการทำงานร่วมกันในปี 2022 ฉันจึงได้พูดคุยกับ Robert Nyman และ Philip Jägenstedt ที่มีส่วนร่วมในบทสนทนาเหล่านี้เพื่อฟังเรื่องราวภายใน นี่คือการตัดต่อที่ตัดต่อของตัดต่อแล้ว

อะไรคือที่มาของโครงการริเริ่มนี้

Robert: ทั้งหมดนี้เริ่มต้นในปี 2019 หลังจากที่เราทำแบบสํารวจ MDN DNA 2019 ซึ่งเห็นได้ชัดว่าเป็นปัญหาหลักสำหรับนักพัฒนาซอฟต์แวร์ที่สร้างเว็บ และเราได้ติดตามผลโดยละเอียดในรายงานความเข้ากันได้ของเบราว์เซอร์ MDN ปี 2020 ซึ่งทำให้เรามีข้อมูลเพียงพอและข้อมูลที่นำไปใช้ได้จริงในการเริ่มความพยายามในปี 2021 ซึ่งส่งผลให้การดำเนินงานของแพลตฟอร์มนี้ดำเนินต่อไปและยังขยายขอบเขตดังกล่าวด้วยการทำงานร่วมกันปี 2022

Philip: ขอแนะนำ web-platform-tests และ State of CSS 2021 เราได้ร่วมงานกับผู้ให้บริการเบราว์เซอร์รายอื่นในการทดสอบโดยใช้ WPT อย่างมีประสิทธิภาพตลอดหลายปีที่ผ่านมา และเราต้องการใช้ประโยชน์จากสิ่งนี้จริงๆ การทดสอบสำหรับฟีเจอร์เหล่านี้มักจะเขียนไว้แล้ว เราจึงเพียงแค่ต้องตรวจสอบการทดสอบและเพิ่มการครอบคลุมที่ขาดหายไปบางส่วน Google ได้ลงทุนเป็นจำนวนมากกับ wpt.fyi แต่เราก็ต้องขอบคุณ Mozilla เองที่ทำให้ WPT ประสบความสำเร็จดังเช่นทุกวันนี้ แน่นอนว่า Mozilla ยังเชี่ยวชาญในการทำแบบสำรวจ MDN DNA อีกด้วย นอกจากนี้ ยังมีสถานะของ CSS 2021 ด้วย เราต้องการข้อมูลใหม่เกี่ยวกับความต้องการของนักพัฒนาเว็บเพื่อร่วมมือกันทำงานอย่างการทำงานร่วมกันปี 2022 เราจึงร่วมมือกับผู้ดูแลแบบสำรวจอย่าง Sacha เพื่อรวมคำถามใหม่ๆ เกี่ยวกับปัญหาความเข้ากันได้ของเบราว์เซอร์ ซึ่งช่วยเราในขั้นตอนการวางแผนการทำงานร่วมกันปี 2022

ดูข้อมูลเพิ่มเติมหรือความคิดเห็นจาก Compat 2021 ไหม

Robert: การวัดและมีคะแนนและข้อมูลเชิงลึกเกี่ยวกับประสิทธิภาพการทำงานของเครื่องมือเบราว์เซอร์แต่ละตัวนั้นมีประโยชน์มาก เพื่อให้เราติดตามความคืบหน้าและอภิปรายและแก้ไขปัญหาที่ไม่ชัดเจนหรือต้องให้ความสําคัญก่อน นอกจากนี้ เรายังทราบได้อย่างรวดเร็วว่า "Interop" เป็นชื่อโครงการริเริ่มนี้มากกว่า โดยทั่วไปคำว่าความเข้ากันได้และความสามารถในการทำงานร่วมกันจะแยกความแตกต่างตามผู้ให้บริการเบราว์เซอร์ โดยการทำงานร่วมกันหมายถึงความเข้ากันได้กับเว็บไซต์ ส่วนการทำงานร่วมกันหมายถึงเบราว์เซอร์ตั้งแต่ 2 เบราว์เซอร์ขึ้นไปที่ทำงานเหมือนกัน ในความหมายว่า ความพยายามนี้เกี่ยวกับความสามารถในการทำงานร่วมกัน และเพื่อให้โปรเจ็กต์มีความสอดคล้องกับชื่อ

วิสัยทัศน์ของเราในที่นี้คืออะไร

รพีพงศ์: ความหลากหลายของเบราเซอร์และเครื่องมือแสดงผลเป็นสิ่งสำคัญในการทำให้เว็บเปิดอยู่ ขออภัยที่ในขณะนี้นักพัฒนาแอปของเรามีราคาสูงที่จำเป็นต้องติดตามระดับการสนับสนุนที่แตกต่างกันสำหรับฟีเจอร์ต่างๆ ของแต่ละเครื่องมือ วิสัยทัศน์ของเราคือ นักพัฒนาซอฟต์แวร์มองว่าแพลตฟอร์มเว็บเป็นตัวเลือกที่มีศักยภาพสูงสุดและเป็นตัวเลือกที่น่าสนใจที่สุดสำหรับความต้องการของตน และสามารถมุ่งเน้นที่การสร้างประสบการณ์ที่ดีที่สุดโดยไม่เสียเวลาไปกับการจัดการปัญหาความสามารถในการทำงานร่วมกัน และเห็นได้ชัดเจนว่า ในการบรรลุเป้าหมายนั้น ฟีเจอร์ที่มีคำถามกันเข้ามามากที่สุดจำเป็นต้องเข้าไปอยู่ในเครื่องมือเบราว์เซอร์หลักๆ ทั้งหมดเพื่อให้นักพัฒนาซอฟต์แวร์ประสบความสำเร็จบนแพลตฟอร์มเว็บได้อย่างแท้จริง

เราจะนำสิ่งเหล่านี้ไปใช้รวมกันได้อย่างไรเมื่อเบราว์เซอร์ที่มีเป้าหมายต่างกัน (บางครั้ง)

Philip: แนวทางของเราคือการมองหาสิ่งที่สนใจร่วมกัน เพื่อหาการทำงานร่วมกันที่ได้ประโยชน์ร่วมกันทั้ง 2 ฝ่ายและมีเป้าหมายเดียวกัน เราให้ความสำคัญกับสิ่งที่ต้องดำเนินการในเวลาเดียวกัน และก้าวไปข้างหน้าอย่างรวดเร็วและมีคุณภาพสูงขึ้นกว่าที่เราจะทำได้หากแยกการทำงานกันต่างหาก นั่นคือแนวคิด

ฉันคิดว่าสิ่งสำคัญคือต้องตระหนักว่ามีขีดจำกัดสำหรับแนวทางที่มีความเห็นเป็นเอกฉันท์นี้ หากเป้าหมายไม่สอดคล้องกันอย่างเพียงพอ เราต้องเดินหน้าด้วยวิธีอื่น บางครั้งการนำหลักฐานของนักพัฒนาเว็บหรือความต้องการของผู้ใช้มาช่วยก็อาจช่วยได้ แต่ในท้ายที่สุด ผู้ให้บริการเบราว์เซอร์สามารถส่งมอบสิ่งที่ไม่มีข้อตกลงกว้างๆ ได้ ในกรณีที่ดีที่สุดคือ นักพัฒนาเว็บที่ลองใช้ฟีเจอร์นี้จะแสดงให้เห็นคุณค่าของฟีเจอร์ดังกล่าว โดยพบว่าฟีเจอร์นั้นตอบโจทย์ความต้องการของตนได้ และถามถึงฟีเจอร์เดียวกันในทุกเบราว์เซอร์

เมื่อย้อนกลับไปที่การทำงานร่วมกันปี 2022 เราเห็นฟีเจอร์ที่ไม่ได้ออกแบบหรือเลย์เอาต์เข้ามาในไปป์ไลน์หรือไม่

ฟิลิป: แน่นอน การทำงานร่วมกันในปี 2022 ไม่ได้จำกัดอยู่เพียงฟีเจอร์การจัดรูปแบบและเลย์เอาต์ แต่ก็ต้องอาศัย CSS เป็นอย่างมาก ส่วนหนึ่งเป็นเพราะ State of CSS 2021 เป็นข้อมูลล่าสุด แต่ก็เป็นเพราะนักพัฒนาเว็บแจ้งให้เราทราบว่าปัญหามากที่สุดเกี่ยวกับความแตกต่างระหว่างเบราว์เซอร์คือจุดนี้ พื้นที่โฟกัสหลายด้าน เช่น องค์ประกอบแบบฟอร์มและกล่องโต้ตอบ มีมากกว่า CSS นอกจากนี้เรายังมีความพยายามในการตรวจสอบการแก้ไข API และเหตุการณ์ตัวชี้และเมาส์ เราหวังว่าสำหรับการทำงานร่วมกันปี 2023 เราจะได้รับข้อมูลที่เป็นปัจจุบันมากขึ้นเกี่ยวกับความต้องการของนักพัฒนาซอฟต์แวร์ทั่วทั้งอินเทอร์เน็ต และจะรวมฟีเจอร์ดังกล่าวเพิ่มเติม

การเปลี่ยนแปลงสำคัญที่กำลังจะเกิดขึ้น

จุดประสงค์หนึ่งของซีรีส์นี้คือเพื่อให้นักพัฒนาแอปทราบเกี่ยวกับการเปลี่ยนแปลงสำคัญที่กำลังจะเกิดขึ้น รวมถึงสิ่งสำคัญในการปรับปรุงประสบการณ์ของผู้ใช้และความสามารถของแพลตฟอร์ม

ลำดับเวลาที่ระบุไว้ด้านล่างคือช่วงเวลาที่คาดว่าจะเกิดการเปลี่ยนแปลงเหล่านี้ แต่ก็เป็นไปได้ว่าเวอร์ชันที่เผยแพร่ของฟีเจอร์ต่างๆ อาจมีการเปลี่ยนแปลง

การลด User-Agent

ส่วนหัว User-Agent และอินเทอร์เฟซ JS ที่เกี่ยวข้องไม่เพียงส่งข้อมูลเบราว์เซอร์และอุปกรณ์ที่มีประโยชน์เท่านั้น แต่ยังเก็บข้อมูลดั้งเดิมของสายงานและข้อมูลที่ไม่ถูกต้องไว้ด้วย ที่เป็นปัญหามากกว่าข้อบกพร่องในการแยกวิเคราะห์สตริง UA ที่แทบไม่มีที่สิ้นสุดก็คือระบบจะส่งไปยังเซิร์ฟเวอร์เมื่อส่งคำขอการนำทางและคำขอทรัพยากรย่อยทั้งหมดโดยไม่รู้ตัว ค่านี้แสดงถึงเอนโทรปีประมาณ 10 บิตที่เซิร์ฟเวอร์สามารถใช้เพื่อสร้างตัวระบุการติดตามที่เสถียรเมื่อผู้ใช้ไปยังส่วนต่างๆ ของเว็บ

แผนปัจจุบันของเราคือการลดสตริง UA ที่มีอยู่โดยจัดส่งเวอร์ชันหลักของเบราว์เซอร์ที่มีเอนโทรปีต่ำ ชื่อแพลตฟอร์ม และความเคลื่อนที่อย่างต่อเนื่อง ทำให้ข้อมูลเอนโทรปีสูงหยุดนิ่ง สำหรับกรณีการใช้งานที่ต้องใช้ข้อมูลเพิ่มเติมมากกว่าที่อยู่ในส่วนหัว เราได้จัดส่ง User-Agent Client Hints API มาตั้งแต่ Chrome 89 ตั้งแต่ Chrome 89 เป็นต้นไป

เราใช้ช่วงทดลองใช้จากต้นทางเป็นเวลา 6 เดือนเพื่อทำการทดสอบและรับฟังความคิดเห็น และเราดีใจที่ยังไม่ได้รับความคิดเห็นเกี่ยวกับข้อขัดข้องที่มีผู้เข้าร่วมมากกว่า 200 ราย

API การเข้าถึงแบบอักษรในเครื่อง

Chrome กำลังจะเปิดตัว API การเข้าถึงแบบอักษรในเครื่อง แม้ว่าเว็บไซต์จะใช้แบบอักษรในเครื่องมานานแล้ว แต่ API นี้จะแจกแจงรายการแบบอักษรในเครื่องและให้สิทธิ์เข้าถึงข้อมูลแบบอักษรเอง ฟังก์ชันนี้ทำให้ผู้ใช้สามารถใช้แบบอักษรทั้งหมดที่มีอยู่ในการออกแบบบนเว็บและแอปพลิเคชันอื่นๆ

แบบอักษรในเครื่องเป็นที่รู้จักกันมานานแล้วว่าเป็นเวกเตอร์การเก็บลายนิ้วมือ แม้ว่า API ใหม่นี้จะไม่เพิ่มความสามารถในการใช้แบบอักษรสําหรับการเก็บลายนิ้วมือ แต่ Chrome กําหนดให้ผู้ใช้ต้องให้สิทธิ์ "local-fonts" ใหม่สําหรับเว็บไซต์ก่อนจึงจะใช้ Local Font Access API ใหม่ได้

ในอนาคต เราวางแผนที่จะกำหนดให้ต้องให้สิทธิ์ "local-fonts" เดียวกันก่อนใช้ API อื่นๆ ที่ให้สิทธิ์เข้าถึงแบบอักษรในเครื่อง

  • ไทม์ไลน์: กำหนดเป้าหมายไปที่ Chrome 103 (มิถุนายน 2022)
  • คำกระตุ้นให้ดำเนินการ (Call-To-Action): ดูข้อมูลเพิ่มเติมเกี่ยวกับ API และวิธีใช้เพื่อเริ่มติดตั้งใช้งาน

การทำให้ BFCache ใช้งานได้กับ Cache-control: no-store

เราได้เล็งเห็นโอกาสสำคัญในการปรับปรุงความถี่ที่ Back/Forward Cache จะแสดงการนำทางย้อนกลับแบบทันทีได้ การดำเนินการนี้ต้องเปลี่ยนแปลงลักษณะการทำงานของ BFCache ในหน้าที่แสดงด้วยส่วนหัว HTTP การควบคุมแคช: ไม่เก็บ เรามีข้อเสนอแบบสาธารณะที่ออกแบบมาเพื่อป้องกันความประหลาดใจที่สำคัญ โดยตรวจสอบสัญญาณต่างๆ (เช่น การนำหน้าออกจาก BFCache ทุกครั้งที่คุกกี้ HTTP มีการเปลี่ยนแปลง) และการแก้ไข (เช่น นโยบายกลุ่มสำหรับลูกค้า Enterprise/Education) เพื่อบริบทเฉพาะ โอกาสนี้มีความซับซ้อนแต่ก็น่าตื่นเต้น เราจึงอยากให้การตรวจสอบและความคิดเห็นเพิ่มเติม

  • ลำดับเวลา: กำหนดเป้าหมายไปที่ Chrome 104 (กรกฎาคม 2022) โดยไม่มีปัญหาสำคัญ
  • คำกระตุ้นให้ดำเนินการ (Call-To-Action): ดูรายละเอียดเพิ่มเติมได้จากข้อเสนอ รวมถึงวิธีเปิดใช้การติดตั้งใช้งานที่อยู่ระหว่างดำเนินการ และวิธีแชร์ความคิดเห็น เช่น สถานการณ์จริงที่แนวทางของเราจะสร้างอุปสรรคใหม่

ผ่านซีรีส์นี้ ฉันหวังว่าจะช่วยให้ชุมชนนักพัฒนาซอฟต์แวร์ได้โฟกัสและเชื่อมโยงถึงกันมากยิ่งขึ้นด้วยการทำให้พวกเขาได้ใกล้ชิดกับทีมของฉันมากขึ้นและทำงานของพวกเขา โปรดอดใจรอและรอติดตามข้อมูลอัปเดตเพิ่มเติมในส่วนนี้

ในระหว่างนี้ ขอให้สนุกกับการใช้เว็บ

คุณคิดอย่างไรกับ The Chrome Dev Insider ฉบับแรก แชร์ความคิดเห็น