My Life

เขียนโค้ดครั้งแรก

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

อันเนื่องมาจากผมได้อ่าน New york 1st time ของ คุณธนชาติ ศิริภัทราชัย ที่ได้แชร์ประสบการณ์ครั้งแรกของเขาในนิวยอร์คทำให้ผมอยากมาแชร์ประสบการณ์ที่น่าสนใจของผมเองครับนั้นคือ เขียนโค๊ตครั้งแรก มีคนชอบถามผมว่า "ทำไมถึงชอบเขียนโปรแกรมล่ะ ??" ผมมักจะตอบไปว่ามันสนุกครับ เพราะมันทำให้เราได้คิด แก้ปัญหาอะไรใหม่ๆตลอดเวลาเลยครับ (แหลสุดๆ) ความจริงแล้วผมเป็นคนที่ค่อนข้างจะเรื่องมาก มากๆเลยครับ เวลาใช้โปรแกรมในคอมพิวเตอร์มักจะชอบพูดว่า ทำไมมันไม่มีอย่างโน้น ทำไมมันไม่มีอย่างงี้ ก็เลยคิดว่า "เออทำไมเราไม่สร้างมันเองเลยล่ะ" จากตอนนั้นจนถึงตอนนั้ีผมก็ยังเรื่องมากเหมือนเดิมและก็ยังสร้างโปรแกรมมาตอบสนองตัวเองเช่นเดิม กลับมาที่ครั้งแรกของผมบ้าง ย้อนไปครับสมัยผมอายุ 9 ขวบ (ตอนนี้ผมอายุ 18 ถ้วนนะครับ) ตอนนั้นมีเกมออนไลน์เกมนึงครับ ฮิตมากๆ ซึ่งตอนนั้นผมก็ติดงอมแงมเลย แต่พอเล่นๆไปก็มีจุดๆนึงคิดว่า "นี่เราติดเกมป่ะเนี่ย ??" ผมจึงพยายามออกห่างมันหน่อยแต่ผมก็ยังไม่ห่างจากคอมน่ะครับ (ติดคอมไง) ผมก็เลยดั้นด้นไปหางานอดิเรกทำบนอินเตอร์เน็ตดูครับ ปรากฏว่าผมไปเจอเว็บนึงที่สอนเกี่ยวกับการเขียนโปรแกรม (ตอนนั้นคือ โห แม่งตอบสนองความเรื่องมากของเราได้แน่ๆเลย) ผมจึงเริ่มฝึกเขียนมันครับ และเว็บผู้โชคร้ายที่ผมเข้าไปฝึกครั้งแรกคือ www.code.org มาที่เว็บผู้โชคร้ายกันก่อนคือ www.code.org เป็นเว็บที่เกิดขึ้นมาเพื่ออยากให้คนทุกคนเขียนโค๊ตเป็นกัน ตามสโลแกนของโครงการ Code.org ว่า “Every student in every school should have the opportunity to learn to code“ แปลว่า “ การเขียนโปรแกรมภาษาคอมพิวเตอร์ นักเรียนทุกคนและ ทุกโรงเรียนควรได้รับโอกาสนั้น” กลับมาที่เรื่องของผมต่อครับหลังจากที่ผมได้ฝึกวิทยายุทธ์ที่ Code.org มาแล้วผมก็เริ่มมีพื้นฐานในการเขียนโปรแกรม เช่น เรื่องของ Algorithm การเรียงโค๊ตอะไรต่างๆ ผมจึงเข้าไปหาในอินเตอร์เน็ตเพื่อจะลองหาภาษาอะไรสักอย่างมาหัด (ตอนนั้นคือไม่รู้เรื่องอะไรเลยรู้แค่ว่าภาษาบนคอมพิวเตอร์มีหลายภาษา) แต่ในระหว่างหาอยู่นั้นเอง (ทำเหมือนซะค้นพบซากไดโนเสาร์แนะ) ผมก็พบภาษานึงครับคือ Visual Basic ตอนนั้นผมก็ไม่รู้อะไรทั้งนั้นแหละครับ ก็ฝึกไปเรื่อยๆ จนตอนนั้นผมขั้น ป.6 ครับผมก็ต้องเรียนให้มากขึ้นเพื่อสอบเข้า ม.1 แต่โดยส่วนตัวแล้วผมไม่ใช่คนที่ชอบด้านการเรียนเท่าไหร่ และก็เกรดใช่ว่าดีอะไร ตอนนั้นสอบไปก็ไม่ติิดสักที่ จนมาที่สุดท้ายแม่บอกผมว่า "ถ้าสอบติดนะ จะให้ไปเรียนเขียนโปรแกรมเลย" และผมก็สอบติดจริง หลังจากนั้นแม่ผมก็พาไปสมัครเรียนคอมที่นึงครับ (Siam Computer) ผมก็เริ่มเรียนเขียนโปรแกรมจริงๆจัง (ก็เรียนภาษาเดิมเลย VB) จากตอนแรกผมเขียนมั่วๆ งงๆ จนจบคอร์สแรกผมก็เริ่ม Advance มากขึ้น จนไปลงคอร์ส Advance ระหว่างเรียนก็เริ่มและ ฐานข้อมูล ตอนนั้นคือ "อะไรว้าาาา นี่ตรูพึ่งอยู่ ม.1 ให้มาออกแบบฐานข้อมูล แล้วเขียนโปรแกรมเชื่อมอีก" (ได้ข่าวว่ามึงอยากมาเรียนเองไม่ใช่เหรอ) จนจบคอร์สผมก็สามารถออกแบบฐานข้อมูลกับเขียนโปรแกรมในภาษา Visual Basic จนคล่อง หลังจากนั้นผมก็จากสถาบันนั้นไปและไปฝึกภาษาอื่นไปเรื่อยๆ หลังจากนั้นไม่นานก็เวลาแห่งความสนุกห็หมดลง ถึงเวลาของชีวิตเด็กมัธยมครั้งแรก ก็เรียนๆไปครับ จนก่อนสอบปลายภาคของเทอมแรก ผมตกเลขครับ (ส่วนตัวแล้ววิชาอะไรที่มีตัวเลขผมแขยงหมดล่ะครับ) แล้วก็ต้องมานั่งซ่อมในขณะที่เพื่อนอื่นๆก็กลับบ้านกัน แต่การตกเลขครั้งนั้นก็ไม่ได้แย่ทั้งหมดมันทำให้ผมคิดได้ว่า "ทำไมเราไม่เขียนโปรแกรมที่คิดเลขให้เราซะเลย" (ความชั่วเริ่มบังเกิดสิแล้วนะแก) หลังจากนั้นสักเทอม 2 โปรแกรมนั้่นก็เสร็จครับตอนนั้นมันชื่อว่า Arnon's Math ชื่อ Arnon ก็มาจากชื่อผมเองครับ อานนท์ โปรแกรมนี้แหละครับ ผมว่ามันเป็นผลงานจริงๆชิ้นแรกของผมที่เกิดจากนำ้พักน้ำแรงของตัวเอง ตั้งแต่การออกแบบโปรแกรม เขียนโปแกรม ทดสอบโปรแกรม จนเป็นโปรแกรมที่เสร็จสมบูรณ์ (ภูมิใจสุดๆอะ แต่ชิบหาย !!! โปรแกรมนั้นหายไปไหนว้าาา ตอนนี้ยังหาไม่เจอเลย) หลังจากที่สร้างแล้วใช้จริงมันทำให้ผมอยากสร้างที่มันอลังกว่านี้อีกเรื่อยๆๆ (ความชั่วของมึงนี่เพิ่มขึ้นทุกวันเลยนะ) จนตอนผมอยู่ ม.3 ครับ มันก็เป็นอีกก้าวของชีวิตที่ต้องเลือกครับ ตอนนั้นหลายคนชอบบอกว่า "เป็นโปรแกรมเมอร์นะต้องเก่งคณิตศาสตร์" (ซึ่งเราไม่เก่งไง) ซึ่งผมตอนนั้นผมคิดว่า "ทำไมอะไม่เก่งคณิตศาสตร์แล้วเป็นโปรแกรมเมอร์ไม่ได้รึไง ค่ะ !!!!!!!" ตอนนั้นก็คิดต่อต้านความคิดนั้นจนมาคิดได้ว่า "ทำไมเราไม่เขียนอะไรที่เอามาช่วยให้โปรแกรมเมอร์ที่ไม่เก่งคณิตศาสาตร์ เขียนโปรแกรมที่ใช้คณิตศาสตร์ได้ล่ะ" จึงออกมาเป็น MathEngine ครับ เป็น API ที่ให้นักพัฒนาสามารถเขียนโปรแกรมทางคณิตศาสตร์ได้โดยที่ไม่ต้องมีความรู้ทางด้านคณิตศาสตร์เลย ตอนนั้นผมก็ยังอยู่ ม.3 ครับก็เป็นเวอร์ชั่นแรกอยู่เลย หลังจากนั้นผมก็ผ่านอุปสรรคการเลือกเรียนต่อ ม.4 ก็เริ่มมีฟิสิกส์เข้ามาซึ่งตอนนั้นผมก็ ตก !!! จึงเกิดความคิดอีกว่า "เอา MathEngine มาเขียนต่อดีกว่า" จนได้ออกมาเป็นเวอร์ชั่น 2 หลังจากนั้นผมก็เอา MathEngine ที่พึ่งทำเสร็จไปให้นักพัฒนาผู้หนึ่ง (ไม่บอกหรอกว่าใครความลับ แบร่ ) เขาก็บอกว่า "ทำไมไม่เอาไปลงแจกล่ะ มันมีประโยชน์มากมายเลยนะ" ผมก็เชื่อเขาครับก็เอาไปลง แรกๆก็ไม่ค่อยได้รับความนิยมเท่าไหร่ แต่หลังจากนั้นไม่นาน อะไรดนจิต ดนใจ ให้มันฮิตขึ้นมา จึงทำให้มีโปรแกรมเมอร์หลายคนรู้จักผมครับ (ณ ตอนนั้น มีข้อความวิ่งอยู่ในหัวว่า ตอนกูอัพก็เสือกไม่มีคนใช้ ตอนนี้จะลบออกดันมาโหลดกันพรึบ) หลังจากนั้นผมก็พัฒนา MathEngine เรื่อยๆ ออกเวอร์ชั่นใหม่ๆ เรื่อยๆ จนถึงตอนนี้เลยครับ จนตอนนี้ผมก็ทำ MathEngine ด้วย ผมหวังว่าเรื่องของผมมันอาจจะเป็นแรงบัลดาลใจให้กับใครที่จะเริ่มเขียนโปรแกรมครับ ทั้งนี้ผมอยากจะขอขอบคุณ อาจารย์ท่านที่ให้คณิตศาสตร์ผมตก เพราะมันเป็นจุดเริ่มต้นของคำว่า MathEngine คุณแม่ของผมที่ทำให้ผมได้ไปเรียนเขียนโปรแกม ฝรั่งท่านนั้นที่แนะให้ปล่อย Source ในโลกอินเตอร์เน็ต ขอบคุณคนทุกคนที่คิดว่า ไม่เก่งคณิตศาสตร์ ก็เป็นโปรแกรมเมอร์ไม่ได้หรอก

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 กันดีกว่า...