อีกครั้งที่พูดถึง web2.0 design patterns


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

พอดีกำลังรวบรวมความรู้เกี่ยวกับเว็บ 2.0 อยู่ เลยนำบทความ What Is Web 2.0? Design Patterns and Business Models for the Next Generation of Software ของ Tim O'Reilly เมื่อปี 2005 มาเรียบเรียงดู ก็ได้ลักษณะเด่น 7 ประการดังต่อไปนี้

1. The web as platform
เมื่อพูดถึงคำว่า platform เราจะนึกถึงสถาปัตยกรรมที่ประกอบจากฮาร์ดแวร์ ระบบปฏิบัติการ และซอฟต์แวร์เฟรมเวิร์ค ยกตัวอย่าง platform ของระบบปฏิบัติการ เช่น Microsoft Windows, Linux, และ Mac ส่วน platform ของซอฟต์แวร์เฟรมเวิร์ค ก็เช่น Java, .NET, หรือ Adobe AIR เป็นต้น เมื่อเว็บ2.0 พูดว่าเว็บเป็น platform นั้นก็คือ การทำงานที่ทุกอย่างเกิดขึ้นบนเว็บผู้ใช้สามารถใช้บริการเว็บ2.0 ด้วยอุปกรณ์หรือระบบปฏิบัติการใดก็ได้ผ่านเว็บเบาว์เซอร์ จึงไม่มีความจำเป็นจะต้องมีการย้ายซอฟต์แวร์จาก platform หนึ่งไปยังอีก platform หนึ่ง ทั้งหมดเป็นเรื่องของข้อมูลและการจัดการข้อมูลที่พิเศษกว่าแต่ก่อน
ยกตัวอย่าง การให้บริการของ Google จะเกิดขึ้นบนเว็บทั้งหมด Google ไม่ได้ขาย package software แต่ขาย service เพราะ Google ไม่ได้ยึดติดตามอุตสาหกรรมซอฟต์แวร์แบบดั้งเดิม ไม่มีกำหนดรอบการออกซอฟต์แวร์ แต่เป็นการพัฒนาอย่างต่อเนื่อง และผู้ใช้สามารถใช้งานได้ทันที มันเป็นความสามารถในการจัดการข้อมูลขนาดมหาศาลของ Google เพราะ Google ไม่ใช่แค่เครื่องมือ แต่คือเครื่องมือรวมกับข้อมูล ไม่มีข้อมูลเครื่องมือก็ไม่มีความหมาย แต่ถ้าไม่มีเครื่องมือที่ดีข้อมูลก็ไม่ได้รับการจัดการที่ดีเช่นกัน ดั่งคำที่ว่า Garbage in, Garbage out คุณค่าของซอฟต์แวร์ของ Google จะขึ้นอยู่กับขนาดและความไดนามิคของข้อมูลที่มันช่วยในการจัดการอยู่
 
web2.0 meme

รูปภาพจาก: http://www.oreillynet.com/oreilly/tim/news/2005/09/30/graphics/figure1.jpg

2. Harnessing collective intelligence
ในหัวข้อนี้เราอาจจะมองง่ายๆ อย่างเรื่องการเชื่อมโยงเนื้อหาต่างๆ เข้าหากับด้วย hyperlink ซึ่งเป็นพื้นฐานของ World Wide Web เมื่อมีการเพิ่มเนื้อหาใหม่หรือสร้างไซต์ใหม่ขึ้นมา มันจะถูกเชื่อมเข้าไปเป็นส่วนหนึ่งของ World Wide Web ด้วย link คล้ายๆ กับเส้นประสาทในสมอง ซึ่งถ้ามีความสัมพันธ์กันมากๆ ก็จะถูกเชื่อมโยงกับมากขึ้น เว็บ2.0 จึงได้กลายเป็นสมองที่เกิดจากคนทั่วโลก (global brain) จากผลลัพธ์ของการสะสมกิจกรรมต่างๆ โดยผู้ใช้เว็บทุกคน 
เพื่อให้เห็นภาพชัดขึ้น ขอยกตัวอย่าง บริการของ amazon.com ซึ่งเริ่มธุรกิจจากการขายหนังสือออนไลน์ amazon ขายสินค้าเหมือนกับคู่แข่งอย่าง barnesandnoble.com มีฐานข้อมูลตั้งต้นเหมือนกันจากผู้ให้บริการจดทะเบียน ISBN และได้รับรูปปก คำบรรยาย และสารบัญเหมือนๆ กันจากผู้ผลิต แต่ amazon เพิ่มความน่าสนใจให้กับข้อมูลของตนด้วยการเพิ่มเนื้อหาต่างๆ เช่นความคิดเห็น review ที่มาจากผู้ใช้ นอกจากนี้ในขณะที่คู่แข่งให้ผลลัพธ์การค้นหาเฉพาะหนังสือของตนเองหรือของผู้สนับสนุน แต่ amazon แสดงผลลัพธ์การค้นหาหนังสือ "ยอดนิยม" ด้วยการคำนวณแบบ real-time ที่ไม่ได้ขึ้นกับยอดขายแต่ยังขึ้นกับปัจจัยอีกหลายๆ อย่างที่คนภายในเรียกว่า "flow" ของผลิตภัณฑ์ amazon ให้ความสำคัญกับข้อมูลจากลูกค้า มีการเชิญชวนผู้คนให้มาคอมเมนต์ให้เกิดส่วนร่วมในฐานข้อมูลหนังสือของตน ที่สำคัญกว่านั้นคือการเก็บรวบรวมและนำพฤติกรรมของผู้ใช้เหล่านี้มาปรับแต่งผลลัพธ์การค้นหาให้ดีขึ้นเพื่อตอบสนองความต้องการสูงสุดของผู้ใช้อีกด้วย ดังนั้นด้วยการมีส่วนร่วมของผู้ใช้จำนวนมากนี้ จึงทำให้ amazon มีข้อมูลสารสนเทศที่ทิ้งห่างคู่แข่งมากขึ้นเรื่อยๆ

3. Data is the next Intel inside
อย่างที่ได้กล่าวไปข้างต้น จะเห็นได้ว่าข้อมูลมีความสำคัญมากสำหรับเว็บ2.0 ทุกแอพพลิเคชั่นเบื้องหลังการทำงานต้องมีฐานข้อมูลสนับสนุน ไม่ว่าจะเป็น Google ที่มีการเก็บข้อมูล web crawl หรือ Amazon มีฐานข้อมูลหนังสือและข้อมูลความคิดเห็นต่างๆ จากผู้ใช้ การจัดการฐานข้อมูลเป็นหัวใจสำคัญที่ขาดไม่ได้
ยกตัวอย่างเรื่องของแผนที่ เว็บที่ให้บริการไม่ว่าจะเป็น maps.yahoo.com, maps.live.com, หรือ maps.google.com ต่างก็จะมี copyright จาก NAVTEQ หรือผู้ให้บริการภาพถ่ายทางดาวเทียมรายใดรายหนึ่ง จุดที่น่าสนใจอยู่ที่ข้อมูลภาพถ่ายเหล่านี้กลายเป็นองค์ประกอบสำคัญของเว็บ เหมือนที่ CPU Intel เป็นองค์ประกอบสำคัญของคอมพิวเตอร์
ด้วยการนำหัวข้อ Harnessing collective intelligence และ Data is the next Intel inside มาผสมผสานกันในเรื่องการนำเสนอแผนที่ Google maps สร้างความน่าสนใจอีกครั้ง เมื่อทำให้แอพพลิเคชั่นอนุญาตให้ผู้ใช้ใส่ความคิดเห็น ใส่รูปภาพประกอบ สร้าง link เชื่อม wiki เชื่อม blog มันสร้างคุณค่าให้กับแผนที่มากกว่าการเป็นภาพบอกเส้นทางอย่างเดียว ทำให้คู่แข่งที่ให้บริการคล้ายๆ กันยากที่จะตามทัน นอกจากนี้ Google ยังได้เปิด API (Application Programming Interface) อนุญาตให้บุคคลทั่วไปนำโปรแกรมตัวนี้ไปใช้งานในเว็บไซต์ของตนได้ และเป็นโด่งดั่งในคอนเซ็ปต์ที่เรียกว่า mashup

mashup

รูปภาพจาก: http://www.theclientsideblog.com/mashup.png

4. End of the software release cycle
เพราะเว็บกลายเป็น service ไม่ใช่ product อีกต่อไปดังที่ได้กล่าวไว้ในหัวข้อ The web as platform จึงเป็นที่มาของพื้นฐานที่สำคัญอีกหลายเรื่อง ได้แก่
- การปฏิบัติงาน (operation) เป็นหัวใจสำคัญของธุรกิจ เนื่องจากซอฟต์แวร์ไม่ได้พัฒนาแล้วจบไป Google ยังต้องปฏิบัติงานประจำวันอย่างเช่น การ crawl เว็บ และอัพเดต Index อย่างต่อเนื่อง ต้องกรอง spam และพยายามให้ผลลัพธ์ที่น่าสอดคล้องจากการตอบสนองคำสั่งค้นหาที่เข้ามาเป็นหลายล้านคำสั่งพร้อมๆ กัน
- การบริหารระบบ เช่น การดูแลเซิร์ฟเวอร์, การจัดการเครือข่าย, load balancing เป็นสิ่งที่สำคัญไม่น้อยไปกว่า algorithm ของโปรแกรม
- ภาษา script ต่างๆ เช่น Perl, Python, PHP, และ Ruby จะถูกนำมาใช้มาก เพราะมันเป็น dynamic language ที่สะดวกสบาย
- ผู้ใช้งานเปรียบเสมือนผู้ร่วมพัฒนา ดั่งจะเห็นได้จากการพัฒนา open source ที่กล่าวว่า "release early and release often" หรือ "perpetual beta"  ซึ่งจะมีฟีเจอร์ใหม่ๆ เพิ่มเข้าไปในเว็บเป็นประจำ
- การมอนิเตอร์พฤติกรรมของผู้ใช้แบบ real time เป็นสิ่งที่จำเป็น เพื่อให้ทราบว่ามีฟีเจอร์ใหม่ไหนถูกใช้บ้าง และเขาใช้มันอย่างไร และนำไปสู่การปรับปรุงเว็บไซต์ให้ดียิ่งๆ ขึ้น

5. Lightweight programming models
สำหรับเว็บ2.0 ความง่ายและรวดเร็วเป็นสิ่งที่สำคัญ ดังจะเห็นได้จากการพัฒนาโปรแกรมที่ผ่านมา web service จะมีอยู่ 2 รูปแบบหลัก คือ SOAP (Simple Object Access Protocol) และ XML (eXtensible Markup Language) ซึ่งทำงานอยู่บน HTTP แม้ธุรกิจ B2B จะชอบใช้ SOAP แต่ Amazon รายงานว่า 95% ของการใช้งานเป็นบริการ lightweight REST อันเนื่องมาจากบทเรียนต่อไปนี้
- สนับสนุนรูปแบบการโปรแรมแบบ lightweight เพื่ออนุญาตให้เกิดการผสมผสานระบบได้
- ให้นึกถึงการ syndication ไม่ใช่ coordination
- การออกแบบเพื่อให้สามารถ hack ได้ และผสมได้ 

6. Software above the level of a single device
PC ไม่ได้เป็นอุปกรณ์ชนิดเดียวที่ต่อเข้าสู่อินเทอร์เน็ตได้อีกต่อไป ยังมีอุปกรณ์พกพาอีกหลายชนิดไม่ว่าจะเป็น มือถือ, PDA, เครื่องเกมส์ และอีกหลายๆ จะเห็นได้ชัดจาก iPod/iTunes ที่สามารถผสมผสานกันได้อย่างลงตัวในการนำเนื้อหาจากเว็บไปสู่อุปกรณ์พกพา แม้ iTunes จะไม่ใช่เว็บแอพพลิเคชั่นด้วยตัวของมันเอง แต่มันสามารถดึงเอาศักยภาพของ web platform มาใช้ได้ เป็นอีกครั้งที่เราพูดถึง web as platform และหัวใจของ iTunes คือการให้บริการจัดการกับข้อมูล (เพลง) ที่มีอยู่

7. Rich user experiences
แต่ก่อนมามีความพยายามหลายต่อหลายครั้งเพื่อทำให้เว็บแอพพลิเคชั่นมีการตอบสนองที่ดี เมื่อปี 1995 Java ได้ถูกใช้ครั้งแรกโดยการนำเสนอผ่าน applet แต่มันก็ยังไม่ดีพอ ในขณะเดียวกันก็มีการใช้ JavaScript ในฐานะ lightweight เพื่อทำให้โปรแกรมเมอร์สามารถทำการโปรแกรมในฝั่ง client ได้ นอกจากนี้ก็ยังมี Macromedia ที่ได้นำเสนอ Flash เพื่อใช้ในการแสดงสื่อมัลติมีเดียต่างๆ และปรับปรุงประสบการณ์การทำงานสไตล์ของเว็บแอพพลิเคชั่นให้ดีขึ้น
แต่ผู้ที่ทำให้เว็บแอพพลิเคชั่นมีประสบการณ์การตอบสนองการใช้งานได้เทียบเท่าเดกส์ท็อปแอพพลิชั่นก็คือ Google จากการนำเสนอ Gmail, และก็ตามมาด้วย Google Maps ในเวลาต่อมา สิ่งที่ Google ทำไม่ใช่สิ่งใหม่แต่เป็นการนำเทคนิค AJAX มาใช้ได้อย่างลงตัว นับแต่นั้นมา AJAX ก็ได้กลายเป็นส่วนประกอบสำคัญของเว็บ2.0 ไม่ว่าจะเป็น Flickr, Basecamp, และ Backpack ต่างก็นำเทคนิคนี้มาใช้

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

 

หมายเลขบันทึก: 200922เขียนเมื่อ 14 สิงหาคม 2008 15:42 น. ()แก้ไขเมื่อ 14 มิถุนายน 2012 11:27 น. ()สัญญาอนุญาต: จำนวนที่อ่านจำนวนที่อ่าน:


ความเห็น (1)

ชัดเจนดีครับ mashup คงเป็นเรื่องที่มาแรงต่อไปครับ โดยเฉพาะยุคที่ระบบ CMS มีบทบาทหลักในการสร้างเว็บ

พบปัญหาการใช้งานกรุณาแจ้ง LINE ID @gotoknow
ClassStart
ระบบจัดการการเรียนการสอนผ่านอินเทอร์เน็ต
ทั้งเว็บทั้งแอปใช้งานฟรี
ClassStart Books
โครงการหนังสือจากคลาสสตาร์ท