ช่วงนี้ผมกำลังเขียนเกมบน Facebook อยู่ครับ (หลังจากที่เล่นเกมของชาวบ้านจนติดงอมแงม) คิดว่าจะเขียนเอาไว้เพื่อให้มันเป็นสินทรัพย์ส่วนตัว (เสมือนจริง) อีกชิ้นหนึ่ง นอกเหนือจากการที่มีเว็บไซต์เป็นของตัวเอง!!!
ผมเลยต้องปัดฝุ่นทักษะเดิม ๆ เพื่องัดเอาออกมาใช้หลายกระบวนวิชาเลย (วัน ๆ เอาแต่สั่งชาวบ้านก็งี้แหล่ะ ถึงเวลาจะต้องทำเองเลยไม่ค่อยคล่อง)
โดยส่วนตัวแล้วผมเคยแต่เขียนโปรแกรมเชิงระบบ หรือไม่ก็โปรแกรมจำพวก ERP (เมื่อนานหลาย ๆ ๆ ปีมาแล้ว) พอมาคราวนี้เลยได้ทักษะสนุก ๆ ใหม่ ๆ หลาย ๆ อย่างที่ผมไม่เคยรู้มาก่อน (ถ้าไม่มาเขียนเกมก็ไม่รู้) อาทิ เช่น
- ผมยินดีที่จะสร้าง Framework แบบ Model (เฉย ๆ) มากกว่าที่จะเลือกใช้ Framework แบบ Model-View-Controller เพราะมันเบาสบายอย่างที่ไม่เคยรู้สึกมาก่อน
- โปรแกรม Photoshop เป็นโปรแกรมยอดนิยมชนิดเดียวที่ผมไม่เคยศึกษา เพราะรู้สึกว่ามันใช้ยาก สับสน และน่ากลัว แต่หลังจากที่ได้ลองใช้มันอย่างจริงจัง ทำให้ผมรู้ว่า สิ่งที่น่ากลัวไม่ใช่เครื่องมือของ Photoshop (หัดแค่สองวันก็เป็นแล้ว) หากแต่เป็นจินตนาการทางจิตรกรรมอันตีบตันของผมต่างหาก (สรุปคือผมกลัว Photoshop เพราะผมกระจอกเรื่องศิลปะนั่นเอง)
- ผมเรียนโปรแกรมคอมพิวเตอร์ทุกตัว โดยการทดลองใช้งานมันด้วยตัวเองหรืออ่านจากคู่มือ (ไม่ต้องให้ใครมาสอนเฟ้ย) แต่กับโปรแกรม Blender ผมกลับต้องไปดาวน์โหลดคลิปวีดีโอที่สอนเรื่องนี้โดยเฉพาะมานั่งเรียน (เป็นคลิปวีดีโอที่ดีมาก ต้องขอบคุณ SIPA มา ณ ที่นี้) มันโคตรเป็นเครื่องมือที่ซับซ้อนจนไม่มีปัญญาหัดเองจริง ๆ เลย (ว่ะ) ขอบอก
- การเขียนโปรแกรมเพื่อให้ทำงานบน Platform เฉพาะ แม้จะมีข้อเสียร้ายแรงตรงที่เราต้องผูกยึดกับ Platform ดังกล่าว แต่ก็มีข้อดีสุดโต่งอยู่ที่เราไม่จำเป็นต้องจัดการเรื่อง Authentication และ Theme เองอีกต่อไป (อันนี้ดีโคตร ๆ เชียวแหล่ะ)
- ผมเพิ่งจะค้นพบว่า การใช้งาน array บน php สามารถพลิกแพลงได้อย่างสลับซับซ้อน เกินจินตนาการอย่างไม่มีที่สิ้นสุด
- ไม่น่าเชื่อว่า ทักษะในการออกแบบฐานข้อมูล จะสำคัญพอ ๆ กับทักษะในการเขียนโปรแกรม และทักษะในการกำหนด Infrastructure ที่เราใช้ (ตอนแรกผมนึกว่าฐานข้อมูลน่าจะสำคัญน้อยกว่านิดนึง)
ที่สำคัญ มันทำให้ผมเรียบเรียงได้ว่า การเขียนเกมบน Facebook นั้น เราจะต้องรู้และมีทักษะหลาย ๆ อย่างมากมายเลย ซึ่งได้แก่ …
รู้ภาษา HTML, เขียน CSS เป็น, เขียนภาษา Script เป็น (เช่น PHP, JavaScript, ActionScript, ECMAScript), รู้หลักการ OOP, รู้หลักการ Model-View-Controller, เขียน SQL เป็น, รู้กลไกของ RDBMS ที่ใช้ (เช่น mySQL), ออกแบบฐานข้อมูลได้ (เช่น แบบ RDS), เข้าใจใน Facebook Platform, เข้าใจใน Web Service (เช่น REST, JSON), ใช้ Graphic Editor คล่อง (เช่น Photoshop), ทำ 3D Modeling เป็น (เช่น Blender), เขียน Adobe Flash ได้, ใช้ Javascript Framework เป็น (เช่น jQuery), วาดรูปเก่ง, ติดตั้ง Infrastructure ได้ (เช่น Shared Hosting, Dedicated Server, Co-Location, Virtual Private Server, Cloud Computing) เป็นต้น
ต่อไปไม่แน่ว่า อาจจะต้องใช้ความรู้ชั้นสูงจำพวก AI ด้วยก็เป็นได้!!!
สรุปว่า การเขียนเกมบน Facebook นั้นไซร้ ช่างใช้ทักษะได้ครอบจักรวาลจริง ๆ เลย พับผ่าสิ!!!
สวัสดีครับพี่ ไม่ทราบว่าพี่รับงานเขียน Facebook Application หรือป่าวครับ
ไม่รับครับ
พี่ครับ ตอนนี้ผมกำลังศึกษาวิศวคอมที่มหาลัยรัฐชื่อดังมากๆแห่งหนึ่ง แต่ผมเรียนแล้วไม่ค่อยชอบเกี่ยวกับการเขียนโปรแกรมเท่าไหร่เลยครับ เมื่อถึงปี3จะมีรายวิชาแยกไป ผมกะจะเรียนเกี่ยวกับnetworkไม่ใช่softwareเพราะผมรุ้สึกไม่ชอบเลย จะเวิคมั้ยครับ ขอบคุณครับ
คนที่เรียนวิศวคอม แต่ไม่ชอบเขียนโปรแกรม ถ้าไปทาง network จะรุ่งมาก ๆ เลยครับ ดังนั้น ไปโลดครับ
OK เลยครับ
ได้คำปรึกษาจากพี่ ผมรู้สึกมีแรงสู้ขึ้นเยอะเลยครับ
ขอบคุณมากๆครับ
ผมเป็นนักศึกษาคับ กำลังสนใจมากที่จะหัดทำ Web application โดยนำ feature ของ facebook มาใช้ในระบบ “Intranet” มีคอม 20 ตัวเป็น client และอีก 1 เป็น server ทำเป็นพวกโปรแกรมช่วยสอนของครูในโรงเรียน ให้นักเรียนมีการแข่งขันการฝึกฝนตามบทเรียนอะคับ (ลักษณะเหมือนเกมส์บน facebook)
ผมอ่านบทความของพี่แล้ว ดีมากๆ เลยคับ แต่ตอนนี้ผมสับสนมาก และไม่รู้จะเริ่มตรงไหนดี รบกวนพี่ช่วยแนะนำด้วยคับ
พี่คะ คือว่าหนูกำลังเริ่มที่จะทำโปรเจ็คจบอ่ะค่ะ แล้วหนูก็คิดว่าหนูจะเขียนเกมส์บนFacebookอ่ะค่ะ ถ้าหนูมีอะไรที่สงสัยหรือว่าไม่เข้าใจหนูมาขอคำปรึกษาจากพี่ได้ไหมคะ
ขอบคุณล่วงหน้าค่ะ