เว็บเทคโนโลยี: ศตวรรษใหม่

ไม่รู้เขียนลงคอลัมน์จะหนักไปมั้ย มาเขียนไว้แถวๆ นี้ก่อน

จากสงครามเว็บบราวเซอร์คราวก่อน (ยังกะ Clone Wars) ทำให้เทคโนโลยีทางด้านเว็บหยุดอยู่กับที่มาพักนึง เรายังใช้ HTML 3.2 กันอยู่ เว็บโปรแกรมมิ่งก็ไปในทาง Server-Side เช่น PHP/ASP/JSP ส่วน Client-Side ก็มีจาวาสคริปต์ที่ยังคงอยู่มานาน เหมือนไม่มีอะไรเปลี่ยนแปลงมาซักระยะ

ช่วงเวลา 3-4 ปีให้หลังจากเข้าสู่ศตวรรษใหม่เลยเป็นช่วงเวลาฟูมฟัก ของเทคโนโลยีที่สำคัญที่สุด นั่นคือ XML เพื่อเข้าสู่ยุค Semantic Web (เว็บที่อิงข้อมูล) ซึ่ง Tim Burners-Lee บิดาแห่ง WWW พูดไว้ตั้งแต่ปี 98

ซินแทกของ XML นั้นง่ายมาก แต่ในทางปฏิบัติแล้วมันกลับซับซ้อนพอสมควร ทั้งการ validation, transformation, parsing และเป็นอะไรที่จับต้องได้ยาก ต่างจาก HTML (XML ออกแบบมาให้ทำงานเบื้องหลัง ซึ่งผู้ใช้ทั่วไปจะต้องไม่รู้สึกว่ามีอะไรซ่อนอยู่) มาตรฐานอีกหลายๆ ประการที่จะทำให้ Semantic Web สมบูรณ์แบบก็ยังไม่เสร็จ หรือเสร็จแล้วยังไม่มีคนอิมพลีเมนต์

ยังไงเสียเราก็เห็นการใช้งาน XML เพิ่มขึ้นเรื่อยๆ ทุกวัน ใกล้ตัวหน่อยก็ RSS ที่ใช้ฟีดบล็อก, XHTML หรือ HTML 5.0 นั่นล่ะ, WML ใน WAP ของมือถือ ไกลตัวหน่อยก็เป็นภาษา XUL ใน Mozilla จนไปถึง ebXML ที่ใช้แลกเปลี่ยนข้อมูลธุรกิจ

หลังจากนี้สิ่งที่ตามมาก็คงจะเป็นเรื่องของเว็บเซิร์ฟวิส WSDL และ XAML ของไมโครซอพท์ใน Longhorn ที่ไม่ต่างอะไรนักกับ XUL (แต่ XUL มีใช้จริงๆ แล้วนะ Extension ทั้งหลายของ Firefox นี่ XUL ทั้งนั้น)

ปี 2005 ที่จะมาถึงไม่นานนี้ จึงเป็นเหมือนช่วงเวลาที่ XML เริ่มจะใช้งานได้จริงจัง เทคโนโลยีด้านบราวเซอร์กำลังจะถึงจุดเปลี่ยนครั้งใหญ่อีกครั้งหนึ่ง เหมือนกับที่เคยใส่รูป หรือออปเจคต์ต่างๆ ได้สมัย Netscape 2.0

Edd Dumbill สุดยอดมือกระบี่ XML (เป็น Editor ของ XML.com และทำโปรเจคอย่าง Mono ด้วย) กล่าวถึงเรื่องเหล่านี้ไว้ในงาน XTech 2005 ที่จะจัดในเดือนพฤษภาคม ที่ยุโรป ซึ่งมันเป็นการชุมนุมทางเว็บเทคโนโลยีของศตวรรษต่อไป

มีการ Call for Paper กันแล้วแต่คนทั่วไปแบบเราๆ คงไม่เกี่ยวกันนัก แต่ในบล็อกของ Edd พูดถึงเทคโนโลยีย่อยๆ หลายประการที่ประกอบกันเป็น Semantic Web

เว็บแห่งอนาคต จะประกอบด้วย

  • XML สำหรับ Define โครงสร้างของ Application ตอนนี้มี XUL, XAML เป็นตัวเก็ง
  • XHTML ที่ใช้ในเว็บเพจ (แยกกันดีๆ ระหว่าง เว็บเพจ กับเว็บแอพพลิเคชั่น)
  • JavaScript (ชื่ออย่างเป็นทางการคือ ECMAScript) สำหรับเขียนส่วนที่เป็นโปรแกรมมิ่ง
  • XML สำหรับตัว Data จริงๆ ที่วิ่งกันไปมา
  • XSLT สำหรับการ Transform เอกสาร XML ข้อตะกี้ให้เหมาะสมกับ Device และ CSS สำหรับการตกแต่งหน้าตา
  • SVG รูปภาพแบบเวคเตอร์ที่จะเข้ามาแทน GIF/JPEG/PNG อันนี้ Adobe กำลังผลักดันอยู่เต็มตัว
  • XForms ฟอร์มในเพจชนิดใหม่ ที่ไม่ต้องใช้ Javascript ในการ validate อีกต่อไป และเป็นการแบ่งแยก Data layer ออกจาก Presentation (HTML) เหมือนที่เราเคยแบ่ง CSS (Presentation) ออกมาจาก HTML มารอบนึงแล้ว XForms ยังไม่ค่อยได้รับการอิมพลีเมนต์มากนัก แต่ Mozilla และ OO.o[pdf] กำลังพัฒนากันอยู่
  • SMIL (อ่านว่า สไมล์) เป็นเฟรมเวิร์คสำหรับมัลติมีเดียในเว็บในอนาคต
  • ทุกอย่างจะมารวมกันใต้ Compound Document Formats (CDF) ซึ่งเป็นฟอร์แมตเอกสารในอนาคต มันจะไม่โผล่ออกมาจริงๆ แต่จะแผงตัวไปกับเอกสารทุกชนิดในโลก เช่น Latex, PDF และ OO.o

ไม่รู้เรื่องเลยใช่มั้ยครับ ถูกต้องแล้วล่ะ ในมุมมองของผู้ใช้ธรรมดา มันจะไม่มีอะไรเปลี่ยนแปลงเลย คุณจะยังใช้บราวเซอร์เปิดเว็บเหมือนเดิม พิมพ์เอกสารด้วย Word, OO.o หรือ Latex เหมือนเดิม คุยกับสาวๆ ด้วย MSN เหมือนเดิม

แต่ในมุมของนักพัฒนาแล้ว ทุกอย่างจะเปลี่ยนไปอย่างสิ้นเชิง จากที่เคยเขียนเองทุกๆ อย่าง ต่อจากนี้ไป เมื่อมีเพียงแค่ข้อมูลดิบที่เป็น XML (อันที่ 4) ทุกอย่างจะต่อกันเองหมด ทุกอย่างจะเป็นอัตโนมัติ ทุกอย่างจะเป็นการประกอบกันของคอมโพเนนต์

นั่นจะเป็นจุดสูงสุดของเทคโนโลยี back-end ที่ผู้ใช้ไม่รู้สึก แต่คนเขียนจะสบายขึ้นกว่าเดิมหลายเท่า อีกไม่นานเกินรอ ซักสองสามปี

Keyword
Submitted bylewcpeon Sat, 12/25/2004 - 15:04

มึงเขียนลงอะไรว่ะ?

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

Submitted bymarkpeakneton Sat, 12/25/2004 - 15:28

ลงอะไรนี่แปลว่าไร?

service ทำงานได้ดีขึ้น กับมี service ใหม่ๆ เข้ามา มันก็แค่ improve ไง
เรายังรัน service ผ่านบราวเซอร์เหมือนเดิม ไม่ได้ขนาด revolution

Submitted bywiennaton Sat, 12/25/2004 - 15:57

นักพัฒนาคงจะสบายขึ้นจริงๆน่ะแหละ ถ้าไม่ต้องมาเรียนรู้กันใหม่นะ แต่จากที่อ่าน ... แทบจะใหม่หมดเลย ยกเว้น XML ที่หลายๆคนคงเคยใช้บ้างแล้ว

หลายๆอย่าง เราทำให้มันไม่ต้อง semantic ก็ใช้งานได้ แต่กว่าจะให้มันเป็น semantic ได้คงนานหลายขุม

จริงๆ XSLT XPath XSD ตอนนี้ก็ใช้กันทั่วๆไปแล้วคงไม่ยากเท่าไรมั้ง

Submitted byPittayaon Sat, 12/25/2004 - 17:55

ก็ได้แต่ภาวนาว่า Software vendor ทั้งหลาย จะยอมทำตามมาตรฐานให้มากที่สุด
ไม่งั้นเดี๋ยวมันก็จะเละเหมือนกับ HTML ตอนนี้แหละ

Submitted bylewcpeon Sun, 12/26/2004 - 00:24

หมายถึงเขียนบทความลงหนังสือเล่มไหนไง

Submitted bylewcpeon Sun, 12/26/2004 - 00:39

SVG ไม่น่าใช่คู่แข่งของ JPG/PNG/GIF เลยนะ แต่มันคู่แข่งของ SWF มากกว่า

เคยพยายามใช้อยู่พักนึงแล้ว พบว่า Plugin ของ Adobe ยังช้าอยู่มาก ไม่เหมาะแก่การใช้งานจริง แต่แอปพลิเคชั้นน่าสนใจมากแล้ว และน่าจะพัฒนาต่อง่ายด้วย อย่างมีคนทำ Presentation ไว้ดีมากๆ เหมือนกัน โปรแกรมเช่น InkScape ก็พัฒนาถึงขั้นใช้งานได้แล้ว แต่ตัวแสดงผลต้องคิดใหม่ว่าทำยังไงมันถึงจะเร็ว เพราะเท่าที่ดู flash เร็วกว่ามากๆ ง่ายๆ ก็เช่นมีกสนปิด anti-alias ไปเมื่อ framerate ไม่ถึงเป้า อย่างในแฟลชก็ได้

ยังไม่เจอ Plugin จากทาง OpenSource เลยด้วยว่ะ

XSLT เจอใน log ของ MSN Messenger แล้วประทับใจ เข้าใจว่าในอนาคต log file ทุกโปรแกรมคงเป็น XML กันหมดในไม่ช้านี้

CDF รอใช้จาก OO.o อย่างเดียวเลย

เรื่องของ XML นี่จริงๆ แล้ว Office 2003 รองรับเต็มที่เลยนี่หว่า ยังสงสัยว่าถ้ามันรองรับจริงขนาดนั้น ทำไมถึงไม่มีตัวแปลง Office -> OO.o ที่เต็มตัวซักที เพราะ XML ไม่น่าจะแกะยากเหมือนตอนเป็น .doc

Submitted byWiennaton Sun, 12/26/2004 - 10:04

ใน o2k3 มันรับ xml จริง แต่ก็ยังไม่ถึงกับเอามาแทน.doc ผมว่ายังไงน่าจะยากนะ

ปล. มันน่าจะเปลี่ยน \n->br ให้นะ ตอนนี้ต้องใส่เองอะ

Submitted bymarkpeakneton Sun, 12/26/2004 - 12:14

SVG เป็นคู่แข่งของ GIF/JPG/PNG แล้วแต่กรณีไง ถ้าเป็นกราฟฟิคง่ายๆ ก็ควรใช้เวคเตอร์แทนราสเตอร์ เวลาขยายจะได้ไม่แตก ส่วนพวกรูปถ่ายยังไงก็ต้องเป็นของเดิม

SVG ก็มีปัญหาการอิมพลีเมนต์นั่นแหละ Flash ไปไกลลิบแล้ว

เขียนลงหนังสือคงไม่เขียนแล้ว ยากเกิน

XSLT นี่เพิ่งเขียนไป เดี๋ยวเจอหน้าเล่าให้ฟังได้ ทั้ง XSL, XPath

ผมตั้ง htmlarea ให้แล้ว มันน่าจะ break ให้นะครับ