
เนื่องจากตอนที่ Firefox 58 ออกไม่มีเวลาว่างเลย โพสต์นี้เลยรวบยอดเอาของจากรุ่น 58 มาด้วย มาเริ่มกันเลยดีกว่าว่า 58 + 59 มีอะไรใหม่ ๆ บ้าง
ใช้ Firefox Screenshot ในโหมดส่วนตัวได้แล้ว และคัดลอกรูปลงไปในคลิปบอร์ดเพื่อเอาไปแปะที่อื่นได้เลย
เนื่องจากตอนที่ Firefox 58 ออกไม่มีเวลาว่างเลย โพสต์นี้เลยรวบยอดเอาของจากรุ่น 58 มาด้วย มาเริ่มกันเลยดีกว่าว่า 58 + 59 มีอะไรใหม่ ๆ บ้าง
ใช้ Firefox Screenshot ในโหมดส่วนตัวได้แล้ว และคัดลอกรูปลงไปในคลิปบอร์ดเพื่อเอาไปแปะที่อื่นได้เลย
จากช่องโหว่ที่มีในทุก CPU ในตลาดตอนนี้ ทางแก้ที่ง่ายและรวดเร็วที่สุดก็คือปิดหรือแก้ทำให้ถูกโจมตียากขึ้นในด้านซอฟท์แวร์และระบบปฏิบัติการ ทางทีม Mozilla Security ได้ทดสอบบั๊กนี้เป็นการภายใน แล้วพบว่ามีแนวโน้มที่จะถูกโจมตีได้
โดยช่องโหว่า Spectre สามารถใช้ timing-attack ได้ Mozilla เลยต้องการปัญหาอย่างเร่งด่วนด้วยการแก้ API ที่มีส่วนเกี่ยวข้องกับ high-resolution timer
เพิ่มเวลาของ performance.now() จาก 5μs ไปเป็น 20μs
ปิดการใช้งาน SharedArrayBuffer
ตอนนี้ Firefox 57 ขยับเลขรุ่นเป็น 57.0.4 แล้วจากแพทช์นี้ โดย Web API พวกนี้อาจถูกแก้กลับคืนค่าเดิม/เปิดการใช้งานเหมือนเดิม แต่คงต้องรอให้ศึกษาตัวบั๊กอย่างถ่องแท้ก่อนว่าบั๊กนี้มันทำงานอย่างไร ซึ่งก็คงต้องใช้เวลาอีกสักพักใหญ่เลย
ที่มา – Mozilla Security Blog: Mitigations landing for new class of timing attack
ไม่รู้ว่าคุณมีอาการเดียวกับผมหรือเปล่าที่เวลาเข้าดู Youtube แล้วมักจะเลื่อนลงไปดูที่คอมเม้นท์ของวิดีโอระหว่างดูคลิป ซึ่งบางคอมเม้นท์ก็มีการเปิดเผย (Spoil) เนื้อหาในวิดีโอ แน่นอนว่าถ้าเผลออ่านไปแล้วเราก็คงเสียอารมณ์น่าดู ซึ่งบางทีเราก็ห้ามพฤติกรรมตัวเองไม่ได้ เลยต้องหาทางออกด้วยการใช้ส่วนขยาย No YouTube comments
นอกจากการอัปเกรดในรอบ 10 ปีแล้ว Firefox 57 นี้ก็เพิ่มคุณสมบัติที่ผมเพิ่งค้นพบและหลายคนอาจจะรอมานานแล้ว (เพราะเป็นคุณสมบัติที่สะดวกมากใน Chrome ) คือ การโคลนแท็บหรือการทำสำเนาแท็บ (Duplicate tab) ซึ่ง Firefox มันทำได้มานานแล้วด้วยการกดคีย์ลัด Ctrl หรือ Cmd + Enter ในแถบที่อยู่ แต่นั้นก็ยังไม่สะดวกมากพอ 57 เริ่มได้เพิ่มเมนูตอนคลิกขวาเข้ามาบนแท็บเข้ามา ทำให้ผู้ใช้ทั่วไปสามารถโคลนแท็บได้ง่ายขึ้นมาก
บั๊กนี้ถูกขอมาเมื่อ 9 ปีก่อนในที่สุดก็ได้รับการใส่มาสักที https://bugzilla.mozilla.org/show_bug.cgi?id=455722
และคุณสมบัติอีกอย่างที่เพิ่มเข้ามาแต่ไม่ได้บอกกล่าวอย่างเป็นทางการคือ เพิ่มตัวเลือกในการป้องกันการติดตามในโหมดทั่วไป จากเดิมที่ใช้ได้แค่โหมดส่วนตัว ตอนนี้ก็มีตัวเลือกให้เปิดใช้งานตลอดเวลาแล้ว หรือปิดตลอด
แล้วคุณผู้ใช้ล่ะ คิดยังไงกับฟีเจอร์ใหม่ที่เพิ่มเข้ามานี้?
ตอนนี้วิดีโอส่วนใหญ่บนอินเทอร์เน็ตส่วนใหญ่จะใช้ฟอร์แมท VP9 หรือไม่ก็ H264 กันเกือบทั้งหมด ซึ่งช่วง 2 -3 ปีมานี้ก็มีความละเอียดใหม่เข้ามาเช่น 4k หรือ 8k ซึ่งตัวฟอร์แมททเดิมที่ใช้กันอยู่ก็ยังใช้ได้แต่ทว่าด้วยความละเอียดที่เพิ่มขึ้นก็ทำให้ขนาดของวิดีโอใหญ่ขึ้นตามตัว พวกผู้ผลิตและให้บริการคอนเทนท์วิดีโอเลยต้องหาฟอร์แมทใหม่ที่ลดขนาดของวิดีโอโดยที่คุณภาพต้องคมชัดเหมือนเดิม
ในส่วนของ MPEG ก็ได้ปล่อย H265 หรือในอีกชื่อหนึ่งว่า HEVC ออกมาเป็นที่เรียบร้อย ซึ่ง Apple ใช้ฟอร์แมทนี้ในระบบปฏิบัติการตัวล่าสุดของตัวเอง แต่เนื่องจาก HEVC ต้องเสียค่า license ให้ MPEG ด้วย เลยมีอีกฝั่ง (Amazon, Cisco, Facebook, Google, IBM, Intel, Microsoft, Mozilla, Netflix) ที่ต้องการฟอร์แมทวิดีโอที่ไม่มีค่าใช้จ่าย ซึ่งส่วนใหญ่ก็เป็นคนที่สนับสนุน WebM อยู่แล้วได้รวมกลุ่ม Alliance for Open Media และทางกลุ่มนี้ก็ได้ออกวิดีโอฟอร์แมทตัวใหม่ที่ดีกว่า VP9 และลดขนาดวิดีโอได้เทียบเท่า HEVC ที่ชื่อว่า AV1 หรือ AOMedia Video 1 ออกมา
ซึ่งสเป็คทั้งหมดของ AV1 จะถูกทำให้เสร็จเรียบร้อยในปีนี้ เพื่อให้ผู้ผลิต/บริการคอนเทนท์ คนทำซอฟท์แวร์และฮาร์ดแวร์ได้เอาไปใช้กัน Mozilla ก็ไม่รอช้า นำฟอร์แมท AV1 ไปใส่ใน Nightly เป็นที่เรียบร้อยแล้วโดยจับมือกับ Bitmovin ผู้ให้บริการโฮสต์วิดีโอชื่อดัง สร้างไซต์ใหม่ https://demo.bitmovin.com/public/firefox/av1/ เพื่อโชว์ให้ดูว่า AV1 นั้นใช้ได้แล้ว หลังจากที่ผมได้ลองเปิดดูแล้ว AV1 นี้ค่อนข้างคมชัดมากในบิทเรทที่ค่อนข้างต่ำ ซึ่งค่อนข้างน่าตื่นตาตื่นใจมากกับฟอร์แมทตัวล่าสุดนี้
อ่านเพิ่มเติมเกี่ยวกับ AV1 ใน Nightly ได้ที่ Mozilla Hacks: DASH playback of AV1 video in Firefox
ส่วนขยายด้านความปลอดภัยชื่อดังอย่าง HTTPS Everywhere ก็ถูกปรับให้รองรับ Firefox 57 แล้ว ส่วนขยายยอดนิยมไม่แพ้กันอย่าง NoScript ก็ถูกทำให้รองรับใน Firefox 57 เป็นที่เรียบร้อยแล้ว ถึงแม้ว่าจะตามมาหลังจากที่ Firefox 57 ออกแล้วก็เถอะ
คนที่ใช้ NoScript อยู่แล้วน่าจะเห็นว่า NoScript ได้กลับมาเป็นที่เรียบร้อยแล้ว แนะนำให้ไปดูที่การตั้งค่าของ NoScript อีกทีครับ เผื่อมีการตั้งค่าบางอย่างที่ถูกเปลี่ยนจากการเปลี่ยนมาเป็น WebExtension
ดาวน์โหลด NoScript Security Suite
และในที่สุด Firefox ที่ได้รับการปรับปรุงสิทธิภาพตั้งแต่ภายในยันหน้าตาใหม่ ก็ได้เผยโฉมออกมาสู่ชาวโลก การเปลี่ยนในครั้งนี้เป็นแปลงครั้งมโหฬารที่สุดในรอบหลายปี โดย Firefox 57 มีชื่อเรียกอีกชื่อนึงว่า Firefox Quantum ซึ่งก็มาจากโปรเจ็ค Quantum นี้เอง
ส่วนของการอัปเดตนั้นโดยส่วนตัวแล้วผมแนะนำให้ติดตั้งใหม่หมด โดยเริ่มจาก
แต่ถ้าจะกดหรือรออัปเดตผ่านทางช่องทางปกติก็ได้ครับ ได้เหมือนกัน แต่การล้างติดตั้งใหม่หมดจะทำให้มีปัญหาความเข้ากันได้น้อยกว่า
เรามาเริ่มดูกันดีกว่าว่า Firefox Quantum นี้มีอะไรมาใหม่บ้าง
เป็นที่แน่นอนแล้วว่าส่วนขยายแบบเก่าที่เขียนด้วย XUL + XPCOM และ Addon SDK ไม่สามารถใช้ในรุ่นนี้ได้ (อ่านเพิ่มเติม) จะใช้ได้ก็แต่ส่วนขยายที่เขียนด้วย WebExtension เท่านั้น ใครที่อยากรู้ว่ามีส่วนขยายตัวไหนที่ใช้ได้กับ Firefox 57 บ้างให้ไปที่หน้านี้เลย ตอนนี้ที่ใช้ได้ก็มี 6,252 ตัวและคิดว่าน่าจะเพิ่มอีกหลายพันในอนาคตอันใกล้นี้ครับ
Photon คือดีไซน์ของ Firefox แบบใหม่ที่เริ่มใช้ในรุ่นนี้ และ Firefox iOS และ Android รุ่นล่าสุด การเปลี่ยนก็เริ่มตั้งแต่
อ่าน Photo Design System เพื่อความเข้าใจที่มากขึ้น แถมไซต์นี้มีแนวทางการดีไซน์ที่เขียนไว้อย่างละเอียดยิบ ค่อนข้างมีประโยชน์สำหรับนักพัฒนาเว็บครับ แนะนำให้อ่านจริง ๆ
Continue reading …
หลาย ๆ คนคงได้ข่าวกันมาบ้างแล้วว่า Firefox 57 นี้จะใช้ส่วนขยายแบบเดิมที่เขียนขึ้นด้วย XUL + XPCOM และ Add-on SDK จะใช้ไม่ได้อีกต่อไป และจะรองรับส่วนขยายที่เขียนด้วย WebExtensions แทน ซึ่งวันนี้จะเล่าถึงเหตุผลว่าทำไม Mozilla ถึงยอมทิ้ง XUL + XPCOM แล้วไปใช้ WebExtensions
XUL + XPCOM เป็นเทคโนโลยีที่ใช้มาตั้งแต่ Firefox ได้ถือกำเนิดขึ้นมาใหม่ๆ ซึ่งนับตั้งแต่ตอนนั้นถึงตอนนี้ก็ 10 กว่าปีแล้ว ข้อดีของการใช้เทคโนโลยีตัวนี้คือ เข้าถึงระบบของ Firefox ได้ลึกมาก ๆ และสามารถเชื่อมต่อกับภาษาอื่นได้ด้วย นั้นก็คือจุดแข็งและจุดเริ่มต้นของเบราว์เซอร์ที่สามารถติดตั้งส่วนขยายได้ จนความสามารถของ Firefox นั้นก็กินขาด IE6 ในสมัยนั้นเพราะส่วนขยายที่เพิ่มได้ไม่จำกัด และเป็นมาตรฐานของเบราว์เซอร์ตัวอื่น ๆ ว่าต้องรองรับส่วนขยายในตัว
หลายคนคงเห็นภาพนี้ มีคนเคยพยายามติดตั้งส่วนขยายนับร้อยอัน
แต่ด้วยความสามารถที่เยอะเกินไป ทำให้ Firefox นั้นบวม ช้า และถูกเจาะง่ายมาก อย่างที่หลายคนเคยบ่นกัน หนำซ้ำยังไม่พอ XUL + XPCOM เป็นอุปสรรคก้อนโตที่ทำให้การแยกโพรเซส Firefox หรือโปรเจ็ค Electrolysis นั้นล่าช้าไปหลายปีจนถึงขั้นต้องหยุดโปรเจ็คนี้ไป 2 ปีเต็ม (ข้อมูลจาก Ars Technica)
เนื่องจาก Firefox นั้นเสียส่วนผู้ใช้ไปเยอะ โดยส่วนใหญ่ก็หนีไปใช้ Google Chrome กัน โดยเหตุผลหลัก ๆ เลยคือ เร็วกว่าอย่างเห็นได้ใช้ แถมหนำซ้ำ Firefox OS ที่ปั้นมาอย่างดีก็ต้องล้มเลิกไปเพราะสู้เจ้าตลาดอย่าง Android กับ iOS เพราะฉะนั้น Mozilla ก็เลยต้องหวนกลับมาโฟกัสที่ Firefox เหมือนเดิม แต่คราวนี้ต้องคิดใหม่ทำใหม่ให้ Firefox นั้นต้องเร็ว ไฉไล เสถียร และปลอดภัย
และเพื่อการจะไปถึงเป้าหมายนั้นให้ได้ก็ต้องยอมทิ้งสิ่งที่ตัวเองภาคภูมิใจที่สุดอย่างเทคโนโลยี XUL + XPCOM แล้วเปลี่ยนไปใช้ WebExtensions ที่ด้อยกว่า และแน่นอนว่าการทำอย่างนี้ก็ต้องถูกนักพัฒนาและผู้ใช้ก่นด่า แต่ก็แลกกับการใช้ WebExtensions ที่เบราว์เซอร์ในตลาดส่วนใหญ่อย่าง Chrome Opera และ Edge ใช้เทคโนโลยีตัวเดียวกันทำให้การพอร์ทโค้ดไปเบราว์เซอร์ตัวอื่น ๆ นั้นไม่ยากเย็นนัก แถมการถอดเทคโนโลยีตัวเก่าออกไปก็ทำให้ใส่เทคโนโลยีตัวใหม่อย่าง Quantum เข้ามาได้ง่ายขึ้น
สรุปสั้นง่าย ๆ คือ Firefox จำเป็นต้องถอดเทคโนโลยีเก่าอย่าง XUL + XPCOM เพื่อเปิดทางไปสู่การพัฒนาที่เข้ากับยุคสมัยใหม่ เพื่ออัปเกรดตัวเองให้เร็ว เสถียร ทันสมัย และปลอดภัยกว่าเดิม
ส่วนขยายด้านความปลอดภัยที่ชาวเน็ตใช้กันมานานนม (อ่าน HTTPS ดีจริงหรือ? แล้วทำไมเราถึงควรใช้แทน HTTP) ที่มีข่าวมาสักพักแล้วว่าจะปรับไปใช้ WebExtensions แต่ยังไม่มีกำหนดว่าเมื่อไหร่ แต่ตอนนี้คงไม่ต้องกังวลกันแล้วเพราะทางเจ้าของส่วนขยายอย่าง Electronic Frontier Foundation ได้ปล่อยรุ่นล่าสุดให้รองรับ Firefox 57 หรือรุ่นที่สูงกว่านี้แล้ว
ภาพด้านล่างเป็นอันที่ผมติดตั้งใน Nigthly 58 ครับ
ดาวน์โหลด HTTPS Everywhere
เมื่อ 12 ปีก่อน Joe Hewitt ได้สร้างส่วนขยายตัวนึงของ Firefox ขึ้นมาที่ชื่อว่า Firebug เพื่อเป็นตัวดีบั๊กหน้าเว็บ HTML CSS และ JavaScript ซึ่งตอนแรกนาย Joe กะจะสร้างเป็นซอฟต์แวร์เพื่อการค้า แต่ตัดสินใจภายหลังว่า เปิดเป็นโอเพนซอร์สเลยดีกว่า
Firebug รุ่นแรก
หลังจากนั้น Firebug ก็ได้รับความนิยมมากจนกลายเป็นส่วนที่ขยายที่ขาดไม่ได้สำหรับนักพัฒนาเว็บ และด้วยแนวคิดนี้ทำให้เบราวเซอร์ดัง ๆ อย่าง Chrome Safari หรือแม้กระทั่งตัว Firefox ได้เพิ่มฟีเจอร์เดียวกัน (Developer Tools) แบบ Firebug เข้ามา
ด้วยการเวลาที่ผ่านไป และเนื่องจากตัว Firefox ก็มีฟีเจอร์เดียวกันแล้ว Firebug จึงมีบทบาทน้อยลง และทีมงาน Firebug บางส่วนก็ย้ายมาทำฟีเจอร์ให้ Firefox บวกกับ Firefox 57 จะตัดการรองรับ XUL ที่เป็นพื้นฐานสำคัญของ Firebug ทางทีม Firebug เลยถือโอกาสนี้ปิดโครงการนี้เลย
ทีมงานของ Firebug ก็เลยได้เขียบล็อกอำลา ใครอยากอ่านประวัติของการพัฒนาแบบเต็ม ๆ หาอ่านได้จาก Mozilla Hacks: Saying Goodbye to Firebug และสุดท้ายนี้ผมขอขอบคุณทีมงาน Firebug ทุกคนที่ช่วยกันสร้างส่วนขยายนี้ ที่มีส่วนช่วยให้งานพัฒนาเว็บในช่วงนั้นพัฒนาและแก้ไขได้ไวขึ้นมาก ๆ ครับ