/ Experience

บ่นเรื่องเว็บ

สวัสดีครับ ช่วงนี้งานผมยังคงยุ่งมาก และคงเป็นแบบนี้ไปอีกหลายเดือน แต่เงินเดือนเท่าเดิมนะ 5555+ วันนี้ก็แค่อยากมาบ่นเฉยๆ เกี่ยวกับเว็บเทคโนโลยีครับ


ผมเคยเขียนบล็อกเกี่ยวกับเว็บมาแล้วครั้งนึงคือเรื่อง
วันที่เว็บคิดครองโลก และตอนนี้ผมเชื่ออย่างหมดใจแล้วว่าเว็บจะมาทดแทนแอพได้จริงๆ

KEEP CALM AND BELIEVE IN WEB TECHNOLOGY

เมื่อก่อนนั้นผมไม่ชอบการทำเว็บเอาเสียเลย เพราะมันยุ่งยากตรงที่ browser เยอะแยะไปหมดแล้วการแสดงผลก็ต่างกันอีก ถึงตอนนี้จะยังเป็นเช่นนั้น แต่หลายๆ อย่างมันก็ดีขึ้น มี tools เกิดมามากมายเพื่อช่วยเหลือให้เหล่าแรงงานอย่างเราทำงานได้ง่ายขึ้น ไม่ว่าจะเป็น CSS extension ก็ดี หรือ JavaScript extension ก็ดี

Windows 10

อย่างที่ผมบอกไปในบล็อกที่แล้วว่าผมเชื่อว่าเว็บจะมาทดแทนเว็บได้ตั้งแต่ตอนเห็น WebOS ของ Palm ครั้งแรก (ตอนนี้ WebOS อยู่กับ LG smart TV) แต่ตอนนั้นผมเชื่อมั่นว่าไม่ใช่เร็วๆ นี้แน่ ประกอบกับด้วยความบ้างานสายสตาร์ทอัพ และความเป็นสาวกไมโครซอฟท์ ผมก็เลยตัดสินใจเลือกเดินในสายเนทีฟ ซึ่งก็ได้ skill ทางด้านนั้นมามากอยู่ ไม่ว่าจะเป็น WPF, Silverlight for Windows Phone, XNA, Windows 8 XAML , Windows [Phone] 8.1 XAML, Android App และอื่นๆ

PHP

แต่นั่นก็ไม่พอที่จะทำแอพดีๆ ออกมาได้ ผมจึงเขียนฝั่ง Web Service ควบคู่ไป ซึ่งในตอนแรกนั้นก็เขียน PHP แหละ ต่อมาก็พบว่า PHP นั้นถ้าเราไม่เก่งจริงนี่เขียนยังไงก็เละ ลองไปใช้ Framework นู่นนี่นั่นก็อึดอัดมาก ก็เลยย้ายมาฝั่งไมโครซอฟท์อีกครั้งกับเทคโนโลยี WCF และนั่นเป็นครั้งแรกที่ผมรู้จัก Web Service จริงๆ แต่พอเริ่มจริงจังก็พบว่ากระเป๋าตังค์ผมมันแฟบเกินที่จะจ่ายค่า host IIS ก็เลยย้ายอีกรอบ ตอนแรกดู Java ไว้ แต่ด้วยเหตุผลเรื่องการเงินก็เลยไม่เอา แล้วกลับมาเขียน PHP ได้สักพัก ได้มีโอกาสไปร่วมงานแข่งขันต่างๆ จนได้เจอกับชาวต่างชาติชื่อ Uri และเขาคนนี้คือคนที่ถามผมว่าทำไมไม่ทำอะไรใหม่ๆ ทำไมคุณไม่เขียน Node.js + HTML 5

Node.js

หลังงานแข่งครั้งนั้นผมก็ยังเขียน Node.js ไม่ได้ เพราะด้วยความหยิ่งผยองของตัวเองด้วยส่วนหนึ่งเลยไม่ได้เขียนอีกเลย จนมาวันนึงอยู่ดีๆ ผมก็ตัดสินใจเช่า cloud server ของ DigitalOcean แล้วก็เจอปัญหาว่าจะเอาอะไรไปรันบนนั้น สุดท้ายก็นึกขึ้นได้ว่ามี Node.js ที่ Uri เคยบอกไว้ และนั่นก็คือจุดเริ่มต้นของการทำ Web Service ด้วย Node.js และยังคงทำอยู่จนถึงปัจจุบัน

BlackBerry HTML5 WebWorks

สำหรับฝั่ง Website แล้วผมไม่เคยให้ความสนใจอีกเลยตั้งแต่หลังเรียนจบ ถึงแม้ว่าจะมีทำเว็บบ้างแต่ก็ไม่ได้ใส่ใจอะไรนักหนา แค่เขียน HTML, JavasScript, CSS และทำ Responsive Website ได้นิดหน่อย ด้วยความเชื่อเดิมๆ ที่คิดว่าเว็บไม่มีทางดีกว่าแอพได้ในเร็วๆ วันนี้แน่ แม้จะเห็นว่าแอพทั้งหมดบน WebOS ทำจากเทคโนโลยีเว็บแล้วก็ตาม พอมาถึงยุคสมัยของ Windows 8 และ BlabkBerry 10 ซึ่งทั้งคู่ก็ดันเว็บแอพกันสุดความสามารถ แต่ผลที่ออกมามันยิ่งสนับสนุนความเชื่อของผมว่าเว็บไม่มีทางดีกว่าแอพเร็วๆ นี้

Angular and Meteor

แต่ตอนนี้ผมได้เริ่มทำเว็บอย่างจริงจังอีกครั้งเพราะสถานการ์ณบังคับ แล้วก็พบว่าความจริงแล้วผมพลาดอะไรไปหลายอย่าง แม้ว่าผมจะเขียนเว็บเป็นอยู่แล้ว ก็ยังรู้สึกว่าตัวเองพลาดไปมากๆ ไม่ว่าจะเป็นเทคโนโลยีอย่าง AngularJS หรือ Meteor ที่มันทรงพลังมาก ผมไม่เคยคิดว่าเราจะสามารถทำ Two way binding ได้บนเว็บ และไม่เคยคิดว่าจะส่งข้อมูลไปมาระหว่างเว็บกับ Service ได้โดยไม่ใช้ REST ไม่เคยคิดว่าเว็บจะทำงานได้ดีมากบนมือถือ จนตอนนี้ผมพูดได้อย่างเต็มปากกว่า แอพต่อไปของผมจะทำเป็นเว็บก่อนแน่นอน ><

*ในบทความนี้มีการใช้คำว่า Web และ เว็บ เพื่อแทนคำว่า Website และ เว็บไซต์

Web Service

Web Service หมายถึงตัวกลางที่ใช้ในการสื่อสารข้อมูลระหว่างอุปกรณฺ์ ให้บริการข้อมูล หรือการประมวลผลต่างๆ สาเหตุที่เรียกว่า Web Service ก็เพราะใช้เทคโนโลยี World Wide Web เป็นพื้นฐาน

Web Page

Web Page เป็นเหมือนเอกสารชนิดหนึ่ง ที่ Web Browser จะเป็นผู้อ่าน ตีความแล้วนำมาแสดงผลให้เราเห็น

Website

Website หรือ Web site หรือ site คือกลุ่มของ Web Page ที่อยู่รวมกันใต้โดเมนเดียวกัน

References

Web service

World Wide Web

Web page

Website

ภาพประกอบจาก

MemeMaker

Microsoft

BlackBerry Developer

Nodejs

PHP

Angularjs

Meteor