My Life

Why I love programming ??

By Arnon Puitrakul - 19 เมษายน 2014

เมื่อไม่นานมานี้ผมได้อ่านเรื่องของ "วิกฤติเด็กไทยไม่ชอบเขียนโปรแกรม" ซึ่งก็บ่นว่างานหนักบ้าง เปรียบเป็นกรรมกรในห้องแอร์บ้าง ค่าตอบแทนก็น้อย แต่ผมว่าถ้าเราเถียงกันเรื่องพวกนี้ พวกแกเถียงกัน 10 ชาติก็ไม่จบหรอกครับ ผมว่าเราต้องมาคุยว่าทำไมเด็กไทยถึงมองว่าการเขียนโปรแกรมนั่นน่าเบื่อ ผมเลยอยากจะแบ่งปันประสบการณ์ว่าการเขียนโปรแกรมนั้นสนุกตรงไหน แต่ผมก็ไม่สามารถที่จะบังคับคนที่ไม่ชอบการเขียนใช้มาชอบการเขียนโปรแกรมได้หรอกครับ (เหมือนผมไม่ชอบคณิตศาสตร์นั่นแหละ ทำยังไงก็ไม่มีทางชอบเลย)

ผมเขียนโปรแกรมครั้งแรกตอนผมอยู่ ป.5 เริ่มด้วยภาษา VB (Visual Basic) ซึ่งเป็นภาษาที่ใช้เขียนโปรแกรมบน Windows (แต่จนถึงวันนี้ผมก็ไม่ค่อยได้ใช้แล้ว แต่มันเป็นความทรงจำภาษานี้ก็เลยจำตราตรึงใจ) ตอนนั้นใช้ Visual Basic 6 เป็น IDE (แสดงถึงยุคของมึงจริงๆ)
ตอนนั้นผมเขียน
'msgbox("Hello World")'
แล้วลองรันขึ้นมา ซึ่งก็เห็นเป็น Message Box ขึ้นมาว่า **Hello World **บนหน้าจอ ตอนนั้นผมตะลึ่งมาก
หลังจากนั้นก็ต่อยอดต่อเป็น "**msgbox("Hello World",MessageboxIcon.Information)" **
"โห นอกจากขึ้น Hello World แล้วยังมี เครื่องหมาย ? ด้วยล่ะ โหห สุดยอดด"
จึงทำให้ผมเกิดคำถามต่อไปว่า "เฮ้ยนอกจาก ? แล้วมันมีอะไรอีก แล้วต้องทำยังไง"
กลับมาที่ปัจจุบันผมมองย้อนกลับมาที่เหตุการณ์นั้นมันทำให้ผมรู้สึกว่า **"โห !!! การเขียนโปรแกรมมันสนุกมากเลยนะ เหมือนเราเป็นพ่อมดในคอมพิวเตอร์เลย !!!" **(ก็คือ มึง ดราม่านี่แหละ)

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

เหมือนกับเวทย์มนต์น่ะครับ ที่เราดูในหนัง ใช่ว่าพระเอก นางเอกที่ใช้เป็น จะต้องเกิดมาใช้เป็น มันก็ต้องเกิดจากการฝึกฝน การใช้ความพยายามในการศึกษา ผมอยากจะเปรียบเทียบ Keyboard ให้เหมือนกับไม้กายสิทธิ์ คุณก็จะต้องเรียนรู้ว่า จะสั่งงานมันยังไง

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

นอกจากวิธีนี้จะทำให้เราก้าวหน้ามาขึ้นแล้วมันยังฝึกให้เรารู้จัก การแก้ปัญหา ซึ่งเป็นทักษะที่สำคัญอของการเขียนโปรแกรมเลยทีเดียว

แต่ถามว่า **"เราจะหาโจทย์มาจากไหนล่ะ" **ผมแนะนำว่าคนที่มีคำถามนี้ควรเปลี่ยนความคิดใหม่นิดนึงครับ
ลองหยุดให้ปัญหามาหาเรา แต่เราลองเดินเข้าไปหาปัญหาดูสิครับ
สุดท้ายนี้ผมอยากจะฝากไว้ว่า จิตวิญาณของโปรแกรมเมอร์นั่นไม่ได้นับจากภาษาที่คุณรู้กี่ ร้อย กี่ พัน ภาษา แต่มันเกี่ยวกับ ความสุขกับการสร้างอะไรด้วยปลายนิ้วของเรา และยินดีที่จะ ลองผิด ลองถูก ไปเรื่อยๆ จนกว่าเราจะได้ผลลัพธ์ที่เราต้องการ และพร้อมที่จะเรียนรู้สิ่งใหม่ๆที่กำลังจะเกิดขึ้นรึเปล่า

Read Next...

Year in Review 2022 สวัสดี 2023

Year in Review 2022 สวัสดี 2023

เวลาผ่านไปไวเหมือนกันนะเนี่ย ยังแอบรู้สึกว่าเหมือนยังไม่ผ่านครึ่งปีไปดีเลย อ่อ สิ้นปีแล้วเฉยเลย มา งั้นเรามาเล่าให้อ่านกันดีกว่าว่า ที่ผ่านมาในปี 2022 มันเกิดอะไรขึ้น และมันสอนอะไรเราบ้าง...

Year in Review 2021 สวัสดี 2022

Year in Review 2021 สวัสดี 2022

ผ่านไปอีกปีแล้วกับปี 2021 ที่น่าจะเป็นเวลาที่ยากลำบากสำหรับใครหลาย ๆ คน เราเองก็ไม่ต่างกันเท่าไหร่ หลาย ๆ อย่างที่ Plan ไว้ก็ต้องเปลี่ยนหมด หน้ามือเป็นหลังมือเลยทีเดียว ก็หวังว่าปีหน้าจะเป็นปีที่ดีขึ้นเนอะ ~...

Year in Review 2020 สวัสดี 2021

Year in Review 2020 สวัสดี 2021

และแล้วก็ถึงเวลาที่ต้องมาเขียน Year in Review อีกครั้ง ประโยคที่ว่า จะหมดปี 2020 แล้วคงไม่มีอะไรแย่ไปกว่านี้ละมั่ง ปีก่อน ๆ อาจจะบอกว่า เออ ใช่แหละ แต่ปีนี้คือเป็นปีที่หนักมากสำหรับหลาย ๆ คนรวมถึงเราด้วย...

Productive Series: To-Do List ทำดี มีเวลาว่างเพิ่มขึ้นเยอะ

Productive Series: To-Do List ทำดี มีเวลาว่างเพิ่มขึ้นเยอะ

หลังจากตอนที่แล้ว เราพูดถึงเรื่องของการจัดการไฟล์ใน Digital ของเราไปแล้ว วันนี้เราลองมาเปลี่ยนไปดูอีกเรื่องที่สำคัญไม่แพ้กัน และ ช่วยทำให้ชีวิตเรามีเวลาออกไปหายใจได้มากขึ้น อย่างการทำ To-Do List กันดีกว่า...