หลังจากนั่งทำมาตั้งแต่วันที่ 30 ก.ย. 2553 จวบจนวันนี้ (1 ก.พ. 2554) ในที่สุดก็เข็นรุ่น Alpha ออกมาจนได้ ตอนนี้ยังใช้ Shared Hosting เพื่อขับเคลื่อนอยู่ แต่พอถึงรุ่น Beta กับ Production เมื่อไหร่ จะโยนตูมลง Amazon EC2 โดยพลัน
Category: Programming
พูดคุยแต่เรื่องสร้างซอฟต์แวร์
การทำเกม Facebook แบบ Web-based Application ต้องใช้เครื่องมือหลายอย่าง และแต่ล่ะอย่างก็มีผู้ใจบุญสุนทานจัดสร้างเอาไว้ให้ใช้ (ขอขอบคุณเป็นอย่างยิ่ง) ดังนั้น เพื่อเป็นการแบ่งปัน ผมจึงขออธิบายว่าผมใช้เครื่องมืออะไรบ้างในการพัฒนาเกม โดยมีรายละเอียดดังต่อไปนี้ Container EasyPHP เอาไว้ทดสอบโปรแกรม Editor Notepad++ เอาไว้เขียนโปรแกรม Photoshop CS5 เอาไว้วาดรูป Software Developerment Kits Facebook
ผมเคยอ่านบทสัมภาษณ์ของผู้บริหารบริษัท ไซเบอร์แพลนเน็ต อินเตอร์แอคทีฟ จำกัด (มหาชน) เมื่อหลายเดือนก่อน (เพราะคิดจะซื้อหุ้นของบริษัทนี้) เขาบอกไว้เรื่องหนึ่งน่าสนใจว่า เกมคอมพิวเตอร์น่ะมันมีอายุขัยของมัน ถ้าเป็นเกมบนอุปกรณ์พกพาก็จะมีอายุ 1 ปี, เกมคอมพิวเตอร์ที่เล่นบนพีซีก็จะมีอายุ 3 ปี และเกม Console ก็จะมีอายุ 7 ปี ตามลำดับ ผมไม่แน่ใจว่าเขาเหมารวมเอาเกมออนไลน์แบบ Client Side หรือแบบ
หลังจากตั้งอกตั้งใจเจียดเวลาหลังเลิกงานมาเขียนเกมแบบ Web Application บน Facebook ทำให้ผมได้รู้เรื่องสำคัญอย่างหนึ่งว่า … มารที่มารบกวนผม ทำให้ผมพัฒนาเกมฯที่ว่าไปไม่ถึงไหน ไม่ใช่กลไก Facebook, ไม่ใช่ jQuery และไม่ใช่ PHP หากแต่เป็น Web Browser!!! มันเป็นเรื่องที่แย่มาก ที่ Web Browser ที่ใช้โดยคนส่วนน้อย ไม่ว่าจะเป็น Firefox,
เมื่อ 8 ปีก่อนอ่ะ ผมเคยถูกบริษัทส่งไปเรียน Java ME ด้วยนะเอ้อ ตอนนั้นผมยังคิดอยู่เลยว่าโทรศัพท์มือถืออ่ะ มันเจี๋ยมเจี๊ยมจะตายไป จอก็เล็กนิดเดียว จะไปทำพระแสงอะไรได้ ถือว่าผู้บริหารบริษัทในสมัยนั้น มีวิสัยทัศน์พอสมควร ก็เลยส่งคนของตัวเองไปเรียน Java ME แต่เสียดายที่วิสัยทัศน์ของท่าน ๆ ไกลไปหน่อย ก็เลยลืมดูไปว่าโทรศัพท์มือถือตอนนั้นอ่ะ มันทำอะไรไม่ได้จริ๊งจริง นอกจากจะใช้โทรคุยกันอย่างเดียว ผลสุดท้ายก็เลยไม่ได้ผลผลิตอะไรกลับมา แต่มายุคนี้คงต้องคิดกันใหม่ เพราะคนเมืองเริ่มจะเสพ
ช่วงนี้ผมกำลังเขียนเกมบน Facebook อยู่ครับ (หลังจากที่เล่นเกมของชาวบ้านจนติดงอมแงม) คิดว่าจะเขียนเอาไว้เพื่อให้มันเป็นสินทรัพย์ส่วนตัว (เสมือนจริง) อีกชิ้นหนึ่ง นอกเหนือจากการที่มีเว็บไซต์เป็นของตัวเอง!!! ผมเลยต้องปัดฝุ่นทักษะเดิม ๆ เพื่องัดเอาออกมาใช้หลายกระบวนวิชาเลย (วัน ๆ เอาแต่สั่งชาวบ้านก็งี้แหล่ะ ถึงเวลาจะต้องทำเองเลยไม่ค่อยคล่อง) โดยส่วนตัวแล้วผมเคยแต่เขียนโปรแกรมเชิงระบบ หรือไม่ก็โปรแกรมจำพวก ERP (เมื่อนานหลาย ๆ ๆ ปีมาแล้ว) พอมาคราวนี้เลยได้ทักษะสนุก ๆ ใหม่
ถ้าคุณเป็นคนหนึ่งที่สนใจอยากจะเขียน Facebook Application คุณจำเป็นที่จะต้องมีพื้นฐานดังต่อไปนี้ คุณต้องรู้และเข้าใจภาษา PHP ในระดับหนึ่ง (ยิ่งเก่งยิ่งดี) เพราะมันเป็นภาษาทางการในการพัฒนา Facebook Application (ภาษาอื่นก็มี แต่ไม่นับเป็นภาษาทางการ) คุณต้องรู้และเข้าใจหลักการของ Object Oriented Programming ซึ่งผมคิดว่าคนที่เรียนคอมพิวเตอร์มาทุกคน ล้วนเคยถูกกำหนดให้เรียนวิชานี้ทั้งนั้น (สมัยนี้นะ) ส่วนจะเรียนเป็นบทหนึ่งบทในรายวิชา หรือจะเรียนเป็นรายวิชาสามหน่วยกิต อันนี้ก็สุดแล้วแต่ คุณต้องรู้และเข้าใจภาษา Javascript
คนอื่นอาจจะชอบแบบอื่น ส่วนผมชอบแบบข้างล่างนี้ ชอบอย่างเดียวคงไม่ได้ ต้องลงมือกระทำตามสิ่งที่ชอบด้วย จึงจะทำให้เกิดชิ้นงานออกมา ผมก็เลยลองใหญ่เลย แล้วก็พบว่า Javascript มันจะไม่ง่ายเลย ถ้าไม่มี jQuery และ jQuery ก็จะไม่ง่ายเลยถ้าไม่มี jQueryUI ผมล่ะชอบจริง ๆ เลยไอ้เจ้า Framework ซ้อน Framework เนี่ย ^-^
ผมอยากจะเปิดร้านขายของออนไลน์ แต่ติดที่ไม่มีความสามารถจะสร้างระบบร้านขายของออนไลน์เองได้ (ฝีมือไม่ถึง) ผมก็เลยจำเป็นจะต้องไปหา Open Source ซึ่งเอาไว้จัดการร้านขายของออนไลน์ (ที่มีเทพ ๆ ช่วยทำไว้ให้) แต่ก็พบว่า Open Source ประเภทดังกล่าว มีตัวเลือกให้เลือกน้อยมาก อือม ไม่น่าเชื่อ มันมีน้อยจริง ๆ!!! ผมเคยลอง OSCommerce แล้ว และก็พบว่าระบบมันดีก็จริงนะ แต่การจัดการ Theme
ปัจจุบันนี้ Open Source จำเป็นต้องสนับสนุนหลายภาษา เพราะถ้าไม่สนับสนุนหลายภาษาแล้วล่ะก็ โอกาสแตกดับในภายภาคหน้าย่อมมีสูง! ทีนี้การจะสนับสนุนหลายภาษาได้ ก็ขึ้นอยู่กับการออกแบบ Open Source เป็นสำคัญ ซึ่งเดี๋ยวนี้ก็ถือว่าคิดกันมาครบ เพราะมีการแยกเรื่องภาษาออกมาอย่างชัดเจน … จากภาพข้างบนจะเห็นว่า เขาแยกเอาส่วนของ Module, Theme แล้วก็ภาษาออกมาเลย ซึ่งอันนี้ก็ดีสำหรับนักพัฒนาเพราะจะได้แก้ไขเป็นส่วน ๆ ได้!