ผมมาเขียนโปรแกรม ได้ยังไง?

Nantaphop Phuengphae
Cupcode
Published in
4 min readApr 15, 2017

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

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

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

เพื่อไม่ให้เสียเวลาเรา มาเริ่มกันเลยครับ…

คอมพิวเตอร์สมัยเด็ก

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

คอมพิวเตอร์ยุคแรกสุดที่ผมได้จับก็เป็นประมาณ Pentium MMX 500 Mhz มี Ram ประมาณ 24MB ละมั้งครับถ้าจำไม่ผิดใช้แผ่น Floppy Disk เคยใช้มาตั้งแต่ Windows 3.1 เลย ซึ่งนั่นก็ทำให้ผมคุ้นเคยกับการใช้งานคอมพิวเตอร์มาตั้งแต่เด็ก

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

Credit: George Manimanaki

เริ่มทำเวปด้วย Frontpage สมัย ประถมปลาย

หลังจากเวลา Fast Forward ผ่านไปจนถึงประมาณ ป.5-ป.6 ราวๆ ปี 2544–2545 มั้งครับ ยุคที่ Ragnarok, Red Alert 2 และ Counter Strike เฟื่องฟู สมัยนั้น ผมก็เล่นพวกเกมส์ Pokemon ใน Emulator ไปด้วยครับ

ความทรงจำช่างลางเลือน ด้วยเหตุผลอะไรไม่อาจจำได้ ผมได้ทำเวปไซต์ รวมบทสรุป Pokemon ทุกภาคในขณะนั้น ด้วย Microsoft Frontpage 98 (หรือ 2000 นี่แหละ)

Credit: Amazon

ซึ่งมันคือโปรแกรมสร้าง Web แบบ ลากวาง คลิกๆ คล้ายๆ Word ซึ่ง ณ ​ตอนนั้นก็เด็กมาก ไม่รู้หรอกครับว่า HTML คืออะไร ตัวโปรแกรมก็สามารถ Upload Website ของเราขึ้น Web Hosting ได้ด้วย

หน้าตาโปรแกรม Frontpage Credit: ActiveWin

ที่หน้าแปลกมากคือ สมัยนั้น Google ยังไม่มีครับ ผมก็จำไม่ได้เหมือนกัน ว่าไปเรียนรู้วิธีทำจากไหน ไอ้ตัววิธีทำหน้าจอไม่ยากหรอกครับ ที่ยากคือจะเอาขึ้น Hosting ยังไง ซึ่ง Free Hosting ตอนนั้นที่ใช้คือ Se-ed.net โดยตอนนี้เนี่ยคนรู้จักมันน่าจะน้อยมาก หาใน Google ก็แทบไม่เจอแล้วครับ

เศษซากทางประวัติศาสตร์ ที่แสดงว่า se-ed.net Free Hosting ไทย เคยมีอยู่จริง Credit: Sanook
หน้าหลักเวป se-ed.net จาก WebArchive.org

RPG Maker XP สมัย ม.ต้น

ถัดมาในช่วง ม.ต้น ผมได้รู้จักกับโปรแกรมแรกที่เหมือนทำให้ความฝันวัยเด็กว่าจะสร้างเกมส์ เป็นจริง มันคือ RPG Maker XP ซึ่งเมื่อโตมาภายหลัง ถึงได้เข้าใจว่ามันได้แอบให้ไอเดียเรื่องการคิดเงื่อนไข If-Else ฝังหัวมาไว้

วาดแผนที่ สร้างตัวละคร ใส่เงื่อนไขเหตุการณ์ บทพูดต่างๆ Credit: Rpg Maker Web

ตัวอย่างเช่น บทพูด เราสามารถกดๆ คลิกๆ จากเมนู เพื่อกำหนดให้ ตัวละคร พูดต่างกัน ถ้าเรามี Item ดาบในตำนาน (ความรู้เรื่อง If-Else) หรือการทำให้ ตัวละคร NPC ในเมือง ให้ไอเทมพิเศษกับเรา แต่เรารับได้แค่ครั้งเดียวเท่านั้น(ความรู้เรื่อง Toggle ค่า Boolean)

หรือ Advance ไปถึงการทำคำสั่งเป็น Sequence เช่น ตัวพระเอก ไปคุยกับ Npc แล้วทำท่าสะดุ้งตกใจ เสร็จแล้ว ถอยหลัง 3 ก้าว แล้วพูดประโยคนึง แล้วเดินหน้ากลับไป 3 ก้าว

หน้าจอสร้าง Event ในเกมส์ Credit: RPGMaker.net

C++ และ Visual Basic สมัย ม.ปลาย

มาถึงช่วง ม.ปลายกันมั่ง น่าจะเป็นช่วงที่รู้จักเขียนโปรแกรมจริงๆ ซักที เริ่มต้นจาก ผมเรียน สายวิทย์-คณิต ที่โรงเรียนเบญจมราชรังสฤษฏิ์ ฉะเชิงเทรา บ้านเกิด

ที่โรงเรียนสอน ภาษา C++ ให้กับนักเรียนสายวิทย์-คณิต ม.5 ครับ อายุน่าจะซัก 17 ปี นี่เป็นจุดเริ่มความรู้การเขียนโปรแกรมจริงจังซักที ซึ่งแน่นอน C++ เบสิคๆ งี้ ต้องเขียนด้วย TurboC

หน้าจองี้เลย แสบตาดี Credit: anzaq

ซึ่งก็ทำให้ผมได้เรียนรู้เรื่องพื้นฐานต่างๆ ของการเขียนโปรแกรม ไม่ว่าจะเป็น Variable, If-Else, Switch Case และ Loop แบบต่างๆ

หลังจากนั้นปิดเทอม ม.5 ผมก็เตรียมตัวเข้าค่าย 2BKMUTT ของ พระจอมเกล้าธนบุรี คร่าวๆ คือให้เด็ก ม.ปลาย ไปเข้าค่าย 1 เดือน เพื่อทำโปรเจค ตามแลปของคณะต่างๆ ที่สมัครเข้าไปอยู่ ซึ่งตอนนั้นผมก็อยู่แลปคณะเทคโนโลยีสารสนเทศ แล้วก็ได้ หัดใช้ Visual Basic เขียนโปรแกรมขึ้นมาเป็นผลงานในค่าย

ความจริงในค่าย จะไม่ได้มีการสอนเขียนนะครับ ต้องศึกษาเองเป็นหลัก มีแค่พี่เลี้ยง และอาจารย์ที่ปรึกษาให้คำแนะนำเฉยๆ ซึ่งผมเองก็ศึกษา Visual Basic จากหนังสือทั่วๆ ไปในร้านหนังสือ แบบที่เรายังเห็นกันตามร้านหนังสือ หมวดหมู่คอมพิวเตอร์ หน้าตาประมาณนี้

หน้าตาหนังสือประมาณนี้ที่ผมใช้ศึกษาเอง Credit: HappyBookOnline

ที่ย้ายมาทดลองเขียน Visual Basic น่าจะเป็นเพราะตัว Visual Studio มันวาดหน้าจอโปรแกรมง่ายดีครับ

Java, PHP, Javascript และ Android สมัย ปริญญาตรี

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

เริ่มแรกก็เรียน Java แล้วก็ขยับไปลองใช้ PHP Javascript พวกนั้นทำเวปดู จนซัก ปี 3 ก็เริ่มหลงไหล Android เขียน App อ่าน Pantip หาเงินใช้จากโฆษณาใน App

ก็นี่แหละครับ เลยมั่นใจมากว่าตัวเองมาถูกทาง ทำในสิ่งที่รัก ช่วงเขียน App นี่ เรียกได้ว่า เขียนเล่นยันดึกดื่น ตอนช่วง Pantip ปรับเวปครั้งใหญ่นี่ ทำให้ App Pantip เก่าๆ ใช้ไม่ได้ทันทีกันทั้งแถบ คืนนั้น ก็เลยได้เขียน App สดๆ รายงานสดๆ ใน Pantip ว่าเรากำลังทำใหม่อยู่นะ ทำยันดี 3 ด้วยความเมามันกันเลยครับตอนนั้น

เปิดโลก

หลังเรียนจบก็ออกมาทำงานเขียนโปรแกรม นี่แหละครับ ไปเป็น Outsource Java Developer บริษัทข้ามชาติแห่งนึงอยู่ ร่วม 2 ปีได้ ได้รู้จักทีม Cupcode ในที่สุดก็ได้เวลาออกมาทำบริษัทร่วมกับ เพื่อนๆ พี่ๆ Cupcode แห่งนี้แล…

ส่งท้าย

ผมอาจไม่ใช่คนเก่งอะไรมากมายนะครับ ผมคิดว่าเป็นแค่คนคนนึง ที่อยู่ถูกที่ ถูกทาง อยู่กับสิ่งที่รักมาตั้งแต่เด็ก

สำหรับคุณผู้อ่าน ว่างๆ ลองนึกย้อนเรื่องราวที่ผ่านมาของคุณนะครับ ว่าเคยผ่านอะไรกันมาบ้าง มันส่งผลยังไงกับชีวิตปัจจุบัน

สำหรับวันนี้ ขอทิ้งท้ายไปกับวีดีโอ Steve Jobs Connecting the Dots นะครับ สวัสดีครับ

ตุ๊กกี้เนิร์ด

You can’t connect the dots looking forward; you can only connect them looking backwards. So you have to trust that the dots will somehow connect in your future. You have to trust in something — your gut, destiny, life, karma, whatever. Because believing that the dots will connect down the road will give you the confidence to follow your heart even when it leads you off the well worn path; and that will make all the difference. — Steve Jobs

--

--