Web Standards

เมื่อ Semantic กำลังใกล้เข้ามา (ภาค2)

จากครั้งก่อน ผมแนะนำสิ่งที่เรียกว่า Google-Apple Cloud ไปแล้ว เมื่อ Google มองการไกลถึงขนาดที่จะสร้าง Network ของ Super Computer (หรือ ที่เรียกว่า Cloud) วางไว้ทุกสารทิศทั่วโลกใบนี้ เพื่อเก็บข้อมูลทุก ๆ อย่าง เพื่อวาง Application ที่เราสามารถเข้าใช้ได้ทุกเมื่อ ซึ่งในอนาคตเราอาจจะไม่จำเป็นต้องมี Standalone PC อยู่ที่บ้านเพื่อทำงาน เราไม่จำเป็นต้องลง OS และ Software ต่าง ๆ มากมาย เพียงแต่เข้าไปใน Google ก็จะมีสิ่งต่าง ๆ ที่เราจำเป็นต้องใช้เตรียมพร้อมรออยู่ คุณผู้อ่านที่เป็นแฟน ๆ ของ Google App น่าจะทราบดีว่ามันมีเพิ่มมาทุกวัน ทุกวัน ให้เราได้เลือก ได้ลองใช้ ซึ่งผมคิดว่ามันเป็นของฟรีที่ดีเยี่ยมหลาย ๆ อย่าง

ทีนี้เรามาดูกันว่า ทำไม Google ส่งผู้บริหารบางคน ไปอยู่ใน Board ของ Apple ทีนี้เรามามองดูกันว่า ทำไม Google ถึงอยากให้ Apple สร้าง Super Computer ให้ เพราะ Apple ขึ้นชื่อว่าเป็น บริษัทที่เข้าใจหลักกายภาพของ user มากที่สุด และ สามารถผลิตนวัตกรรมที่หักล้างสิ่งที่ใคร ๆ ต่างคิดว่า คงไม่มีใครจะทำมันได้ มาแล้วนักต่อนัก ผมเพิ่งถึงบางอ้อเมื่อไม่กี่สัปดาห์มานี้ (หลายท่านอ่านจะ อ้อ ก่อนผมมาหลายเดือนแล้วก็ได้) ว่าทำไมถึงมี iPhone และ ทำไมถึงมี MacBook Air ออกมา ผมคิดว่ามันเป็นอนาคต อนาคตอะไร อนาคตที่กำลังจะใกล้เข้ามา (อ้างอิงจาก บทความของ : Nicholas Carr) ถ้าสิ่งต่าง ๆ ที่ว่ามานี้เกิดขึ้นจริง นั่นหมายความว่า MacBook Air และ iPhone นั้นอาจจะทำมาเพื่อรอ Project นี้ก็ได้เป็นแน่แท้ เราไม่ต้องการอุปกรณ์อะไรมากมายอีก เพียงแค่อุปกรณ์สำหรับเชื่อมต่อเข้าไปยัง Account ที่เรามีอยู่ของ Google ไม่ต้องมีรูปร่างใหญ่มาก พกพาสะดวกสบาย ที่เก็บข้อมูลก็ไม่จำเป็นต้องมีมากนัก เพราะว่าเรามีพื้นที่อยู่ในอากาศอยู่แล้ว (ต่อไปก็จะเกิดธุรกิจ ค้าขายพื้นที่บนอากาศ อากาศจะมีราคาแล้ว) เพียงแต่จ่ายค่าบริการรายเดือนเท่านั้นเอง ต่อไปพวก Computer ที่เป็น Standalone และ มีอุปกรณ์ และ Software ที่เพียบพร้อมนั้นอาจจะใช้เฉพาะกับงานเฉพาะทางเพียงเท่านั้น อาทิ การตัดต่อหนัง, การ render 3D และ งานหนัก ๆ ใหญ่ ๆ อื่น ๆ ที่ต้องกินทรัพยากรณ์ และ visual memory ที่ต้องเตรียมพร้อมหลาย ๆ อย่าง

เมื่อ Semantic กำลังใกล้เข้ามา (ภาค1)

60 ปีที่แล้ว Digital Computer ทำให้ข้อมูลของเราอ่านได้ 20 ปีที่แล้ว Internet ทำให้ข้อมูลเหล่านั้นง่ายต่อการเข้าถึง 10 ปีที่แล้ว search engine crawler ตัวแรกถือกำเนิดขึ้นจาก database เพียงตัวเดียว Google ทำให้หลาย ๆ องค์ประกอบ ทฤษฎีในทัศนคติเป็นจริง Google ในทุก ๆ วันนี้กลายเป็นอีกหนึ่งวัฒนธรรม ไม่ว่าใครต่อใครก็ต้องใช้ Google ฝังลึกหยั่งรากลงไปมากกว่าที่เราจะทันรู้ตัว

ข้อมูลมากมายมหาศาลเหล่านั้น ที่ Google เก็บมาไว้ใน database ของตน เมื่อ 10 ปีที่แล้วหลาย ๆ คนคงอาจจะมองว่ามันเป็นเรื่องธรรมดาไร้สาระ แต่ในทุกวันนี้ผมคิดว่าแม้กระทั่ง 1 ตัวอักษร Google ก็ขายได้ มองย้อนกลับไปในยุคของ Kilobytes ข้อมูลจะถูกจัดเก็บบันทึกลงใน Floppy Disk ผมยังจำได้เวลาไปโรงเรียนเราจะพกแผ่น Floppy Disk ทั้งหลายเหล่านี้ไว้สำหรับ class ที่ต้องเรียน Computer ตั้งแต่ยังต้องท่องจำ Command Line ต่าง ๆ เพื่อที่จะสั่งให้เครื่องคอมพิวเตอร์ทำงานได้ตามที่ใจเราอยาก ต่อมาเป็นยุคของ Megabytes ข้อมูลทุก ๆ อย่างถูกเก็บลงใน Hard Disk และ มันก็ถูกพัฒนาไปเรื่อย ๆ จนสามารถเก็บข้อมูลได้เป็น Terabytes โดยที่ตัวมันเองก็เท่าเดิม แต่ใช้ Disk Array ในการจัดเก็บข้อมูลลงไป แล้วยุคของ Petabytes ล่ะจะจัดเก็บลงไปที่ไหน? มันจะถูกจัดเก็บลงไปใน Cloud (Cloud ในที่นี้คือ กลุ่มของ Supercomputer ที่จัดเก็บ Application และ ข้อมูลที่ถูกติดตั้งไว้ในทุกที่ ทุกมุมของโลก) ลองนึกดูว่ามันจะเกิดอะไรขึ้น ถ้าข้อมูลขนาด 1 Petabytes ถูกเก็บลงในฐานข้อมูลของ Google ทุก ๆ 72 นาที

สร้าง Findability Website ด้วย Web Standards

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

วันนี้ผมจะพูดถึงอะไร ผมจะพูดถึง Findability website ชื่อมันดูโก้เก๋ดีไหมครับ มันเป็นแนวคิดใหม่ของ Aaron Walter จริง ๆ แล้วก็ไม่ใช่อะไรใหม่ไปเลยทีเดียวเพียงแต่แนวคิดเหล่านี้ยังไม่มีใครบัญญัติชื่อให้มัน ลักษณะการทำงานของมันอย่างเป็นรูปธรรม ทีนี้เรามาดูกันว่า ไอ้ Findability Web มันคืออะไร ซึ่งโดยการทำงานของมันแล้วมันก็คือ Website ที่มีเป้าหมายมุ่งเน้นช่วยเหลือผู้ใช้ให้

  • เจอ website ที่พวกเขาค้นหา
  • เจอ content ที่ต้องการใน website นั้น ๆ
  • หรือ รับรู้ถึงคุณค่า ของ content ใหม่ ๆ ที่พวกเขาค้นเจอ

SEO ผลพลอยได้จากการทำ Website ให้เกิด Accessibility สูง ๆ

เจ้าของ Website หลาย ๆ คนต่างก็อยากได้ผลลัพธ์ทาง SEO ที่สูง ๆ บางคนใช้วิธีการโกงต่าง ๆ นานา เพื่อให้ Website ของพวกเขานั้นได้ผลลัพธ์ทาง SEO อย่างที่คาดหวังไว้ ในทางเดียวกัน ด้วยเหตุผลเดียวกันนี้จึงทำให้เกิดอาชีพ search engine optimizer เพื่อสนองตอบความต้องการ เจ้าของ Website ต่าง ๆ ที่ต้องการผลลัพธ์ทาง SEO สูง ๆ เช่นนี้ ซึ่งหลาย ๆ ผู้ให้บริการในส่วนนี้ใช้เทคนิคที่ไม่ค่อยจะดีต่าง ๆ นานา อาทิ การ spam ตัวอย่างเช่น เอา Link ไปแปะไว้ในเวปที่มี page ranking สูง ๆ ซึ่งสร้างความเดือดร้อนให้กับคนอื่นมาก หรือ การซ่อนข้อมูล ที่ไม่เกี่ยวข้องกับเนื้อหาใน Website (User มองไม่เห็นแต่ Search Engine นั้นมองเห็น) หรือ Trick อื่น ๆ ต่าง ๆ ที่เยอะแยะมากมายอธิบายไม่หมด เหล่านี้เรียกว่า Black Hat ผมคิดว่าบางท่านที่กำลังอ่านนั้นก็คงใช้กันอยู่ด้วยความเคารพจะขอเอ่ยไว้ ก่อนว่าผมไม่ได้ต้องการโจมตี หรือ แฉใคร เพียงแต่อยากให้หันมาลองพิจารณาวิธีนี้ที่ผมจะเขียนให้ท่านอ่านกันบ้าง

การทำ SEO แบบ Black Hat นั้นเป็นอันตรายทั้งต่อ User และ Search Engine อธิบายคร่าว ๆ ง่าย ๆ สั้น ๆ ว่า การกระทำแบบนี้จะส่งผลให้ Search Engine นั้นต้องทำงานหนักมากขึ้น และ User อาจจะได้รับข้อมูลที่ไม่ถูกต้องอีกด้วย สิ่งที่ผมกำลังจะกล่าวถึงนั้นคือ White Hat SEO ซึ่งเป็นการพัฒนา Website ของคุณง่าย ๆ ด้วยการเขียน code ให้สนับสนุนกับระบบของ Search Engine เช่น แยก Style ออกจาก html code ลดการใช้ JavaScript ที่ไม่จำเป็น และ ลดความหนาแน่นของ code (ใช้เท่าที่จำเป็น) เหล่านี้ จะทำให้ง่ายต่อการ Spider ของ Search Engine ง่ายต่อการ index และ ง่ายต่อการจัดอันดับ Page Rank

12 ข้อคิดสำหรับผู้ที่กลัว CSS และ Standard (จบ)

เมื่อคุณย่างก้าวที่จะเข้าสู่โลกของการ design แบบ tableless layout นั้น สิ่งที่คุณต้องคิดถึงไม่ใช่แต่เพียงคิดว่าจะจัดวาง container elements ของคุณอย่างไรแต่สิ่งที่คุณไม่ควรมองข้ามคือการจัดการ selector ของคุณด้วย

12 ข้อคิดสำหรับผู้ที่กลัว CSS และ Standards (3)

ข้อที่4: ความสุดยอดไม่ใช่ Desgin จนไม่มีอะไรจะใส่ลงไปแล้ว หากแต่ความสุดยอดนั้น คือ ไม่มีอะไรจะตัดออกไปแล้วต่างหาก

การที่จะเขียน code markup ขึ้นมาให้สนับสนุนกับมาตรฐานเต็ม ๆ นั้นมันขัดแย้งกับการที่เราใช้ table ที่เป็น container elements บรรจุทุก ๆ สิ่ง ทุก ๆ อย่าง แบบเมื่อก่อนโดยสิ้นเชิง เราจะใช้ container elements ให้เหมาะสมกับข้อมูล และ ไม่เอามาบรรจุ content ของเรามากมายซับซ้อนเหมือนแต่ก่อน คิดง่าย ๆ เลยให้คิดว่าเราจะเขียนหนังสือสักเล่มเราจะจัดระบบ content ของเราอย่างไรเริ่มและจบด้วยอะไร
อย่าเพิ่งคิดว่าจะปรุงเสริมเติมแต่งมันอย่างไร ให้เริ่มที่ content ของเราก่อน ดูว่าเราจะใช้อะไรร่วมกัน อะไรที่ต้องใช้แยกกัน (หมายถึง CSS properties ของ elements ต่าง ๆ)  ใช้เท่าที่จำเป็น และ ประหยัด (design อย่างพอเพียง) อย่ากลัวที่จะต้องใช้ divs  หรือ spans หรือ p หรือ อื่น ๆ ที่มี class ร่วมกันให้คิดเสียว่ามันเป็นการจัดหมวดหมู่ข้อมูล ก็เหมือนกับที่คุณจัดเอกสาร หรือ จัดรูปเล่มหนังสือนั่นแหละ เรียงลำดับ priority ของข้อมูลเริ่ม coding จากสิ่งที่สำคัญที่สุดไปหาสิ่งที่สำคัญน้อยที่สุด (เลือก tag ให้เหมาะสม) ตัด tag ที่ไม่จำเป็นออกไป ใช้เท่าที่ควรจะใช้ (ผมเริ่มอย่างนี้น่ะนะ) แล้วก็มาคิดว่าเราจะ design หน้าตาออกมาอย่างไร ข้อนี้มันจะเกี่ยวเนื่องไปถึงข้อต่อไป …

ข้อที่5: สำหรับ site ใหญ่ ๆ ที่มีทีมดูแล หรือ สร้างหลายคน (website องค์กรใหญ่ ๆ หรือ web portal ต่าง ๆ หรืออะไรก็ตามแต่)

website ขององค์กรใหญ่ ๆ หรือ website ที่มีความหนาแน่นของข้อมูลมาก ๆ หรือ บริษัทที่มีการแยกแยะหน้าที่เป็นระบบเป็นหมวดหมู่ บางที designer อาจจะยังไม่เข้าใจถึง content ที่เราต้องการจะใช้ หรือ โครงสร้างลำดับขั้นของข้อมูลอาจจะทำให้ design ที่ออกแบบออกมานั้นไม่เอื้อต่อการที่จะทำเป็น มาตรฐานเท่าไหร่ (ปัญหานี้เคยประสบกันบ้างไหมครับ) เพราะฉะนั้นทุก ๆ ครั้งก่อนจะเริ่มลงมือทำอะไรให้ทีมพัฒนานั้นมีการประชุมตกลงกันก่อน คุยกันให้แล้วเสร็จในทุก ๆ สิ่งทุก ๆ อย่าง เพราะการคิดไปเรื่อยโดยไม่มีการกำหนดขอบเขต หรือ การกำหนดแนวทางเดิน และ/หรือ การเจริญเติบโตของ site ทำไปเพียงวันวันนั้น จะเกิดการสะสมของข้อมูลที่ใช้ไม่ได้ หรือ Link ที่เสียก็ได้ รวมไปถึงการสิ้นเปลือง class หรือ tag ที่ไม่จำเป็นต้องใช้ก็ได้

Back to Top