ขอส่งท้ายปีนี้ด้วยบทความ “ความสุข ที่ซ่อนอยู่ในการเขียน Program“ ซึ่งผู้เขียนบทความ(Matthew MacDonald) ต้องการที่จะให้กำลังใจ กระตุ้น และสร้างแรงบันดาลใจบางอย่างให้กับ Programmer/Developer ที่อาจกำลังรู้สึกเหนื่อยล้า หรือท้อแท้กับปัญหาที่ต้องเจออยู่เสมอในการเขียน Program หวังว่าหลังจากอ่านบทความนี้ คุณจะมีแรงฮึดและเห็นสิ่งดี ๆ ที่ซ่อนอยู่จากการเขียน Program
1. มีโอกาสได้ไขปริศนา/แก้โจทย์ใหม่ ๆ
ในความคิดของ Matthew นั้น Programming เริ่มต้นจากที่เราต้องไขปริศนา/แก้โจทย์บางอย่าง Code ที่เราเขียนอยู่ทุกวันเปรียบเหมือนเป็นคำเชื้อเชิญให้เราได้พบกับความท้าทาย เว้นแต่ ความท้าทายนี้ไม่ใช่แค่เกมปริศนา อย่าง เกม Sudoku แต่มันเป็นการแก้โจทย์จริง ที่จะมีผลตามมาในชีวิตจริง และปริศนาเหล่านั้นล้วนอยู่รอบ ๆ ตัวเรา เช่น การคำนวณการ Real-lift Movement สำหรับ Object ที่อยู่ในจินตนาการ หรืออาจเป็นเรื่องง่าย ๆ อย่างเช่น การเขียน Code ที่มีประสิทธิภาพเพื่อส่ง WhatsApp Notification ไปยังผู้ปกครองของคุณเป็นระยะ ๆ ที่สำคัญ เจ้าปริศนาเหล่านี้ ก็ไม่มีวันสิ้นสุดเสียด้วยสิ
อีกหนึ่งเรื่องที่น่าสนใจเกี่ยวกับการแก้โจทย์ Programming ก็คือ “มันไม่ได้มีแค่เพียงคำตอบเดียว” มันเป็นปริศนาที่คุณเกือบจะรับประกันได้ว่า มันถูกต้อง แต่มันก็ยังไม่ Perfect มันเป็นปริศนาที่คุณสามารถย้อนกลับไปยัง สัปดาห์ เดือน หรือปีก่อน ๆ แล้วปรับแก้ให้ดีขึ้น (หากคุณยินดีที่จะใช้เวลาหลายชั่วโมงเพื่อทำในส่วนนี้)
แต่สิ่งที่ซ่อนอยู่ก็คือ การแก้ปัญหาใหม่ ๆ ได้ จะทำให้เรารู้สึกสนุก การปรับปรุง Solution เก่า ๆ ให้ดีขึ้น จะทำให้เรารู้สึกพึงพอใจ และจะทำให้รู้สึกหลงใหลในวงจรเหล่านั้น (Solve, Test, Refine)
Programming อาจไม่ใช่ทางออกของทุกสิ่งทุกอย่าง สิ่งที่เกิดระหว่างความท้าทายและความสุข ก็คือ ความหงุดหงิดที่ต้องต่อสู้กับมันอย่างยาวนาน โดยมีเจ้าโลหะที่ไร้ชีวิต(Computer) คอยชี้ให้เห็นถึงความผิดพลาดของ Syntax เล็ก ๆ น้อย ๆ ของคุณ แต่ถ้าคุณมีแรงจูงใจทำในสิ่งที่คุณรู้ว่า “คุณสามารถทำมันได้” (แม้ตอนนี้จะยังคิดไม่ออกก็ตาม) การเขียน Program ก็ถือเป็น ความท้าทายที่ไม่มีวันสิ้นสุด
2. รู้สึกพึงพอใจที่ได้สร้างบางสิ่งบางอย่างขึ้นมา
Coding Project แตกต่างจากการไขปริศนาทั่วไปก็คือ มันจะแก้โจทย์ในโลกความเป็นจริง อะไรก็ตามที่คุณสร้างขึ้นอย่างมีจุดประสงค์ บางครั้งมันอาจเป็นแค่เสียงหัวเราะ บางทีอาจเป็นแค่การทดลอง หรือบางทีอาจจะเป็นสิ่งที่ทำเพื่อตัวคุณเองเท่านั้น แต่ Code ทั้งหมด ก็มีไว้เพื่อสร้างบางสิ่งที่เราต้องการที่จะใช้งานมัน
เมื่อคุณสร้างสิ่งที่มีประโยชน์อย่างแท้จริง คุณก็จะรู้สึกพึงพอใจกับมัน คุณไม่เพียงแค่มีส่วนร่วมหรือใช้ความพยายามเพื่อสร้างมันเท่านั้น แต่คุณได้สร้าง Product บางอย่างที่จับต้องได้จริง ๆ ขึ้นมา ซึ่งก็คล้ายกับความรู้สึกพึงพอใจของช่างไม้ ที่ได้สร้างเฟอร์นิเจอร์ที่เขาอยากใช้งานขึ้นมาด้วยตัวเอง
ในฐานะ Programmer คุณอาจไม่คิดว่าตัวเองเป็นเหมือนศิลปิน แต่บางทีสิ่งใหม่ ๆ ที่สร้างขึ้นมา ก็อาจเกิดจากฝีมือของคุณ บางครั้งคุณอาจรู้สึกไม่ดี เมื่อสิ่งต่าง ๆ ไม่เป็นไปตามที่คิด ขณะเดียวกันคุณก็จะรู้สึกอิ่มเอมใจเมื่อพวกมันใช้การได้และเป็นไปตามที่คิด (อย่างน้อยก็จนกว่าการ Refactor ครั้งถัดไป)
3. ได้สร้าง “ปุ่มคลิก” ที่มหัศจรรย์
Developer มักชอบบอกว่า Programming เป็นเรื่องของการแก้ปัญหา แต่ความลับที่ซ่อนอยู่คือ Developer จะมีความสุขทุกครั้งที่ได้สร้างบางสิ่งขึ้นมาจากศูนย์ มันเป็นเหมือนมายากล เหมือนของเล่นชิ้นใหม่ ที่เมื่อคุณคลิกไปที่ปุ่ม แล้วมีสิ่งหนึ่งเกิดขึ้น ชิ้นส่วนของ Hardware ได้ตอบสนองต่อคำสั่งของคุณ แม้แต่ “Hello, World!” Program ก็ยังเป็นเรื่องที่น่าสนุกเลย
คุณอาจคิดว่าบาง Program ก็ไม่ได้วิเศษอะไรมากมายนัก แต่ทุกครั้งที่คุณวางนิ้วลงบน Keyboard คุณจะสามารถสร้างบางสิ่งได้โดยใช้แค่ทักษะและจินตนาการของคุณ และสิ่งใหม่ ๆ เหล่านั้น ก็สามารถสร้างความบันเทิง ความสนุกสนาน หรืออาจทำให้ชีวิตของใครสักคนง่ายขึ้นเพียงเล็กน้อย นั่นก็ถือเป็นพลังวิเศษแล้ว
4. ได้เจอกับสิ่งใหม่ ๆ อยู่เสมอ
ทุก ๆ การเดินทางในชีวิต คุณสามารถเลือกมันเองได้ คุณอาจใช้เส้นทางง่าย ๆ โดยเลือกทางที่สะดวกสบายที่สุดเท่าที่จะทำได้ และพยายามทำให้มันเป็นช่วงเวลาที่ดีอยู่เสมอ หรือคุณอาจปีนขึ้นเขาสูงชันแล้วอุทิศตัวเองเพื่อสิ่งที่คุณอยากจะทำมันตลอดไป ก็ได้ ซึ่งการพัฒนา Software เป็นตัวอย่างในเส้นทางที่ 2 การที่จะประสบความสำเร็จได้ คุณจะต้องเรียนรู้มันอย่างต่อเนื่อง
การเรียนรู้อย่างต่อเนื่อง จะทำให้ชีวิตของคุณไม่หยุดนิ่ง มีใครบ้างที่ไม่อยากเล่นกับของเล่นเทคโนโลยีที่ออกมาใหม่ล่าสุด ซึ่ง Coding ก็เป็นเช่นนั้น มีสิ่งใหม่ ๆ เกิดขึ้นอยู่เสมอ ไม่ว่าจะเป็น Tools ใหม่ ๆ Libraries ใหม่ ๆ หรือเทคนิคและเคล็ดลับใหม่ ๆ ที่ออกมาเรื่อย ๆ
แต่ละก้าวของการเปลี่ยนแปลงทางเทคโนโลยี อาจทำให้คุณรู้สึกเหนื่อยล้าได้ เชื่อว่าไม่กี่ปีที่ผ่านมาคุณคงจะรู้สึกได้ว่ามันมีเทคโนโลยีเปลี่ยนแปลงอย่างรวดเร็ว คุณอาจคิดว่า คุณเข้าใจทุกรายละเอียดของการทำงานภายใน JavaScript Framework ตัวล่าสุดแล้ว แต่อีกไม่นานอาจมีบริษัทเทคโนโลยีสักบริษัท ที่เปิดตัว Framework ใหม่ขึ้นมา
นี่คือชีวิตของ Programmer ที่คุณจะต้องเรียนรู้และพบกับความยุ่งยากอยู่เสมอ มองไปรอบ ๆ ในความมืด และค้นหาข้อมูลใน Google ตอนดึก ๆ
ISM Technology Recruitment Ltd. (#1 Tech Recruiter in Thailand) เราเชี่ยวชาญในธุรกิจ IT Recruitment & IT Outsourcing โดยเฉพาะ เปิดทำการกว่า 29 ปี มีพนักงานทุกสายและทุกระดับทางด้าน IT ที่ได้ร่วมงานกับลูกค้าองค์กรใหญ่ที่มีชื่อเสียงและบริษัทข้ามชาติมากมาย หากคุณเป็นคน IT ที่อยากทำงานท้าทายและร่วมงานกับองค์กรชั้นนำ สามารถฝากประวัติการทำงาน (Resume) ของคุณไว้กับ ISM ได้ที่ https://www.ismtech.net/submit-your-resume แล้วคุณจะพบว่าอนาคตและโอกาสก้าวหน้ากำลังรอคุณอยู่
Source: https://medium.com/