Screen Shot 2557-12-31 at 9.53.58 AM
อ่านบทความจาก sitepoint เรื่อง Average Page Weight Increases 15% in 2014
ซึ่งได้ทำการสรุปข้อมูลของขนาด web page ที่ใช้งานโดยเฉลี่ยทุกปี
โดยนำข้อมูลมากจาก HTTP Archive Report
มาดูกันว่าปี 2014 มีผลอย่างไรบ้าง ?

HTTP Archive Report เป็น web ที่ทำการรวบรวมข้อมูลข้อมูล

การใช้งานของ web ที่ได้รับความนิยมมากกว่า 500,000 แห่งทั่วโลก

ในปี 2014 ได้ข้อสรุปว่า
ขนาดโดยเฉลี่ยของ web จะเพิ่มขึ้น 15% จากปี 2013 ( เพิ่มจาก 1,701 KB มาเป็น 1,953 KB )
นั่นคือเกือบจะ 2MB แล้วนะ
ในแต่ละหน้า web ทำการสร้าง request จำนวนเฉลี่ย 95 request

แต่ถ้าเทียบในปี 2013 แล้วนั้นอัตราการเติบโตในปีนี้จะน้อยกว่า
แล้วสิ่งที่เราในฐานนะนักพัฒนา ต้องสนใจอะไรล่ะ ?

จำนวน URL ที่ทำการจัดเก็บข้อมูล

พบว่ามีข้อมูลของ URL หรือ web จำนวนกว่า 500,000 แห่ง
ยิ่งข้อมูลเยอะเท่าไร ความถูกต้องของรายงานก็จะถูกต้องมากขึ้นเท่านั้น
Screen Shot 2557-12-31 at 7.51.38 AM

ขนาดของการ transfer ข้อมูล และจำนวน request ของแต่ละ web

สิ่งที่น่าสนใจก็คือ ขนาดของการ transfer ข้อมูลที่มีขนาดใหญ่ขึ้นกว่าเดิม 15%
และเมื่อดูจากแนวโน้มแล้ว พบว่า มันจะยังขึ้นต่อไปอีกเรื่อยๆ

Screen Shot 2557-12-31 at 7.53.48 AM

จากขนาดข้อมูลที่ใหญ่ขึ้นนั้น เรามาดูในรายละเอียดสิว่าเป็นอย่างไร

  • HTML มีขนาดใหญ่ขึ้น 4% จาก 57KB เป็น 59KB
  • CSS มีขนาดใหญ่ขึ้น 24% จาก 46KB เป็น 57KB
  • JavaScript มีขนาดใหญ่ขึ้น 7% จาก 276KB เป็น 295KB
  • Image มีขนาดใหญ่ขึ้น 21% จาก 1,030KB เป็น 1,243KB
  • Flash มีขนาดเล็กลง 13%
  • อื่นๆ มีขนาดใหญ่ขึ้น 9% เช่นพวก font

ทำให้ผลโดยรวมมีอัตราที่สูงขึ้น 15%

สิ่งที่น่าสนใจสำหรับรายงานนี้คือ

ขนาดของ CSS ที่เพิ่มขึ้น 11KB

มันบอกอะไรเราล่ะ ?
ในการออกแบบ web แบบ responsive มีการใช้งาน CSS3 annimation มากขึ้นหรือไม่ ?
แต่พบว่าขนาดของ JavaScript กลับไม่ลดลง มันยังไงกัน ?
รวมทั้งในปัจจุบันมีเครื่องมือช่วยจัดการ CSS และช่วยลดขนาดของ CSS อีกต่างหาก
แต่ขนาดของ CSS ดันเพิ่มขึ้นซะงั้น

และพบว่าในแต่ละ web มีการส่ง request ไปดึงข้อมูลโดยเฉลี่ย 6 ครั้ง
เพิ่มขึ้นจากเดิมประมาณ 1 ครั้งเลยนะ

Screen Shot 2557-12-31 at 8.05.10 AM

ส่วนที่น่าตกใจก็คือ ขนาดของ JavaScript ที่ใหญ่ขึ้น 19KB

อย่างที่อธิบายไป ว่ามันขัดแย้งกับ CSS นะ
ยังไม่พอ พบว่ามีการส่ง request เพื่อดึงข้อมูล JavaScript โดยเฉลี่ย 18 ครั้ง
มันบอกอะไรเราล่ะ ?
พบว่ามีการเขียน JavaScript มากขึ้น ?
พบว่ามีการใช้งาน script ต่างๆ ของ Social network มากขึ้น ?

Screen Shot 2557-12-31 at 8.12.41 AM

ขนาดของรูปที่ใหญ่ขึ้น แต่จำนวน request กลับเท่าเดิม

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

  • แต่ละหน้าดึงข้อมูลรูปกว่า 50 รูป มันเยอะไปนะ ลดได้ไหม ?
  • สามารถใช้ SVG, Icon font และ CSS3 มาแทนที่รูปภาพได้นะ
  • มีเครื่องมือช่วยลดขนาดรูปได้นะ เช่น TinyPNG

Screen Shot 2557-12-31 at 8.15.35 AM

จากรายงานข้างต้นคิดว่า ปัญหาหลักๆ คืออะไร ?

ในรอบ 12 เดือน bandwidth ของ internet ที่เราใช้งานใหญ่ขึ้น 15% ไหม ?
ผู้ใช้งานกลุ่มที่ 3 มาจาก mobile ใช่ไหม ? และเยอะด้วย
แล้วทำไมขนาดของ web จึงใหญ่ขึ้นล่ะ ?
ถ้าขนาดของ web ยังโตในลักษณะนี้มันจะส่งผลอย่างไรบ้างล่ะ ?

  • ผู้ใช้งานจะเข้าถึง web ช้าลง นั่นคือ ประสบการณ์การใช้งานที่แย่ๆ มันไม่ดีเนาะ ที่ให้ผู้ใช้งานรอ
  • ถ้าขนาด web คือ 2MB ลองคิดดูสิ เข้าผ่าน mobile มันจะช้าไหม ? แสดงว่า Responsive Web Design มันไม่เท่ากับ Responsive web นะ คุณอาจจะต้องเสียลูกค้ากลุ่ม mobile ไปเลยนะ
  • ถ้า web คุณช้าแล้ว Google ก็จะลดความสำคัญของ web ใน SEO ลงไปแน่นอน
  • แสดงว่าคุณต้องซื้อ bandwidth สูงขึ้น นั่นคือค่าใช้จ่ายที่สูงขึ้น
  • code ที่คุณเขียนเยอะขึ้น ความซับซ้อนสูงขึ้น การแก้ไขก็ใช้เวลาและค่าใช้จ่ายสูงขึ้น

ปัญหาเหล่านี้มันมาจากสาเหตุอะไรล่ะ ?

สรุปด้วยคำสั้นๆ ง่ายๆ คือ ความขี้เกียจ ไงล่ะ

นักพัฒนาไม่ได้สนใจ และ ใส่ใจ ในรายละเอียดเลย
และนักพัฒนาจะมีคำแก้ตัวไว้เสมอ ดังนี้

  • ไม่มีเวลา
  • ลูกค้าเขาต้องการแบบนี้
  • ทั้งงบ และ ตารางเวลา ของการพัฒนามันบีบรัดมากๆ
  • ระบบเดิมมันเป็นอย่างนี้นะ
  • เราไม่มีเครื่องมือที่ดีพอ
  • Framework หรือ Library ที่เราใช้มันจัดการให้แบบนี้เอง

ไม่ว่าจะมีเหตุผลใดๆ มาอ้างก็ตาม เรานั่นแหละที่ขี้เกียจเอง

ทำไมเรายังสร้างปัญหาขึ้นมาล่ะ ?

ทั้งๆ ที่มันมีวิธีทำที่ง่ายแสนง่าย เช่น The Complete Guide to Reducing Page Weight
ทำไมเราถึงไม่ทำกันล่ะ มันใช้เวลามากนักหรือไง ?

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

มาทำให้มันดีขึ้นเถอะครับ

Tags: