จากจุดเริ่มต้นที่ผมสอนวิชาการเขียนโปรแกรมคอมพิวเตอร์ให้กับนักศึกษาหลักสูตรเทคโนโลยีสารสนเทศ คณะวิทยาศาสตร์และเทคโนโลยี สถาบันเทคโนโลยีปทุมวัน พบว่าการสอนเขียนโปรแกรมด้วยภาษา C, Java และ C# ตั้งแต่ต้นนั้นหนักทางด้านทฤษฎีและกฎเกณฑ์ในการเขียนโปรแกรมมากเกินไป ทำให้มีคนที่เข้าใจอย่างแท้จริงอยู่น้อยมาก และเป็นการเข้าใจแบบท่องจำ ไม่สามารถประยุกต์โค้ดในการคิดสร้างสรรค์โปรแกรมใหม่ๆขึ้นมาเองได้
และจากการที่มีองค์กรระดับโลก อย่างเช่น Code.org และ Khanacademy.org ได้ให้ความสำคัญเกี่ยวกับความรู้ทางด้านการเขียนโปรแกรมคอมพิวเตอร์ ทำให้ผมได้ตระหนักถึงความสำคัญของวิธีคิดเกี่ยวกับการสร้างสรรค์โปรแกรมใหม่ๆ มากกว่าการท่องจำทฤษฎีและกฎเกณฑ์ โดยการเรียนรู้การเขียนโปรแกรมคอมพิวเตอร์ที่ดีนั้นจะต้องมีโจทย์ตัวอย่างมากๆ และในแต่ละตัวอย่าง ก็ควรรันเห็นผลลัพธ์ได้ในทันที ซึ่งหากตัวอย่างนั้นแสดงผลเป็นกราฟิกได้ด้วยแล้ว ก็ยิ่งทำให้ผู้เรียนสนใจ และสนุกไปกับการเรียนรู้ได้มากยิ่งขึ้น
ภาษา Processing JS นั้นเพิ่งถูกพัฒนาขึ้นมาเมื่อปี ค.ศ. 2008 (เป็นลิขสิทธิ์ของ MIT) โดยเป็นภาษาที่ถูกออกแบบขึ้นมาเพื่อเขียนภาพกราฟิก สื่อเชิงโต้ตอบ (Interactive) สื่อเคลื่อนไหว (Animation) และเกมส์ (Games) โดยสามารถแสดงผลได้บนเว็บบราวเซอร์สมัยใหม่ทั่วไปได้ เช่น Firefox, Opera, IE, Safari และ Chrome โดยไม่ต้องพึ่ง Java applet และ Flash plugin แต่อย่างใด จึงมีความน่าสนใจเป็นอย่างมากทำให้ผู้เรียนสามารถสร้างสรรค์ผลงาน และแชร์ผลงานให้เพื่อนๆรับชมได้อย่างสะดวก และเป็นแรงกระตุ้นที่สำคัญที่ทำให้การเรียนเขียนโปรแกรมสนุก เพราะสามารถอวดความก้าวหน้า และสร้างสรรค์โปรแกรมที่หากมีผู้พบเห็นก็ต้องร้องว้าว!!! ได้เลย
ภาพตัวอย่างของผลงานที่สร้างด้วย Processing JS
Processing.JS สามารถทำออกมาเป็นเกมได้ด้วยนะ
Processing.JS กับงานประมวลผลภาพแบบ Random
Processing.JS สร้างเกมได้หลากหลายแบบจริงๆ
Projessing.JS สามารถทำภาพ Animation ที่ออกมาดูเรียบลื่น พริ้วไหว เหมือนตัวอย่าง นี้ครับ
Processing.JS สามารถนำข้อมูลออกมาแสดงผลด้วยภาพกราฟฟิคได้อีกด้วย
และจาก Family tree ของภาษา Processing นั้น จะเห็นว่าในการเรียนรู้การเขียนโปรแกรม Processing JS จะสามารถเชื่อมโยงเรียนรู้ภาษาอื่นๆ ได้อีกมากมาย กระทั่งสามารถในไปใช้ทำ Application บนอุปกรณ์มือถือที่ใช้ระบบปฏิบัติการ Android ได้อีกด้วย
ลิงก์ตัวอย่างของผลงานที่สร้างด้วย Processing JS
http://processingjs.org/learning/basic/
http://processingjs.org/exhibition/
http://ejohn.org/blog/processingjs/
https://www.khanacademy.org/computing/computer-programming
http://pomax.github.io/Pjs-2D-Game-Engine/
เกี่ยวกับผู้ให้ข้อมูล
อาจารย์วศิน ภิรมย์ (วศ.ม. วิศวกรรมคอมพิวเตอร์ จุฬาฯ)
อาจารย์ประจำหลักสูตรเทคโนโลยีสารสนเทศ คณะวิทยาศาสตร์และเทคโนโลยี สถาบันเทคโนโลยีปทุมวัน