ทำไมฉันถึงทั้งรักทั้งเกลียดการเขียนโค้ด

Mr.P L
mmp-li
Published in
2 min readApr 3, 2019

เพราะหนี้มันท่วมหัวไงเลยยังต้องเขียนโค้ดอยู่ เศร้าาาาาาา

หลังจากที่ไม่ได้เขียนบทความ life style อะไรเลยตั้งแต่บทความ

วันนี้เลยจะมาบอกเล่าถึงสาเหตุต่างๆของการเขียนโปรแกรมซึ่งมีทั้งรักทั้งเกลียด โดยบทความนี้มาจากประสบการณ์ของตนเองและเพื่อนรอบข้าง

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

ทำไมฉันที่ถึงรักการเขียนโค้ด

  1. มีความท้าทาย

ทุกๆครั้งที่ได้รับโจทย์หรือ Requirement มาก็จะมีความยากของมัน บางครั้งมันก็ท้าทายเรา ทำให้งานของเราไม่น่าเบื่อ ตื่นเต้นตลอดเวลา (ว่ามันจะพังไหม) โปรแกรมเมอร์หลายๆคนที่เลิกทำงานด้านนี้ไปก็มีเหตุผลว่างานหมดความท้าทาย หรือบางคนก็ย้ายงานเพื่อไปหาความท้าทายใหม่ๆ

https://news.efinancialcareers.com/uk-en/137065/the-six-hottest-programming-languages-to-know-in-banking-technology
https://www.reddit.com/r/ProgrammerHumor/comments/1w1u3o/bug_vs_feature/

2. สนุกสนานเวลาไม่เจอบั๊ก

เมื่อได้รับงานที่ท้าทายแล้ว ต่อไปคือการทำงาน สำหรับผมนะ เวลาที่เราเขียนโค้ดแล้วรันออกมาแล้วไม่มีบั๊กในครั้งแรก (เป็นไปได้น้อยมากกก) โครตจะฟินเลย หรือเวลาเขียนฟังก์ชั่นออกมาเป็นร้อยบรรทัดแล้วลองรันปรากฏว่าไม่มีบั๊กมันโครตจะฟินไปเลยเหละ 55555

3. ชอบที่จะสร้างปัญหา

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

4. ชอบที่จะแก้ปัญหา

เมื่อเกิดปัญหา เราก็ต้องแก้ไม่ว่าจะแก้บั๊ก แก้ algorithm แก้โค้ดให้สั้นลง เขียนโค้ดให้มันดีขึ้น พอแก้เสร็จแล้วมันก็ฟินดีเหมือนกันนะ

https://www.docsity.com/en/news/programming-2/15-programming-jokes/

5. ชอบที่จะสร้างสรรค์ผลงานออกมาให้ชาวโลกเห็น

บางคนชอบที่จะปล่อย open source ออกมาให้ผู้อื่นพัฒนาต่อเพราะชอบเวลาให้คนอื่นมีส่วนร่วมกับงานของเรา หรือพัฒนางานของคนอื่น หรือการสร้างอะไรออกมาสักอย่างเป็นตัวเอง เช่น สร้าง lib หรือ framework เป็นของตัวเอง

6. ทำเงินได้ดี

เป็นเรื่องที่เถียงไม่ได้เลยว่าเงินดีมาก (ถ้าคุณมีฝีมือหรือประสบการณ์) ตอนที่ผมยังเรียนไม่จบ ปี2560–61 รับจ๊อบทำ ASP.NET C# ได้เดือนละ 20K พอเบนสายมา AI ยิ่งได้เยอะกว่าเดิมอีกแหะ เลยคิดว่าสายนี้ไม่น่าอดตายได้ ถ้ารู้จักพัฒนาตัวเองและเก๋าเกมพอ

จากกลุ่ม Jobs for Thai Programmers

ทำไมฉันถึงเกลียดที่จะเขียนโค้ด

  1. บั๊ก

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

มันไม่เวิร์ค ทำไม… ? / มันเวิร์ค ได้ไง… https://www.docsity.com/en/news/programming-2/15-programming-jokes/

2. มีเซอร์ไพส์ตลอดเวลา

เนื่องจากสายงานนี้มักชอบเกิดอะไรที่ไม่คาดฝันตลอดเวลาเช่น ทดลองบนเครื่องไม่เจอบั๊ก พออัพขึ้นเซิฟ อ่าวบั๊กมาไง , รันบนเครื่องตัวเองผ่าน รันบนเซิฟไม่ผ่าน , เซิฟเวอร์ล่มตอนเสนองานให้ลูกค้า , เจอบั๊กตอนกำลังพรีเซ้นงานให้ลูกค้า ทั้งหมดนี้คือความเซอร์ไพส์แค่น้ำจิ้ม ซึ่งเมื่อไรก็ตามที่มันเกิดขึ้น โครตจะเซงเลย 5555

https://imgur.com/gallery/XKJ4KKn/comment/106838906

3. ต้องพัฒนาตัวเองตลอดเวลา

ประเด็นสำคัญที่ทำให้ผมเซงๆในบางทีก็คือความรู้ของเรามันตกยุคในทุกๆวัน ไม่ว่าจะเฟรมเวิร์ค จะภาษาที่ใช้ก็มีการอัพเดทตลอดเวลา บางทีมันอัพแค่เวอร์ชั่นเล็กๆ ก็ยังพอเข้าใจ ถ้าเกิดเปลี่ยนแปลงเยอะๆเช่น python2 กับ python3 ต่างแค่เลข แต่ข้างในก็ต่างกันเยอะ หรือจะเป็น angular1 หรือ angular2+ ต่างแบบสุด ทำให้เราต้องพัฒนาตัวเองเสมอนี้ยังไม่ได้พูดถึงเทรนใหม่ๆอีกมากมายไม่ว่าจะเป็น AI , Block chain ตามไม่ทันแล้วเว้ย

http://www.focusmalaysia.my/Enterprise/new-technology-adoption-on-the-rise

บทสรุป

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

--

--

Mr.P L
mmp-li
Editor for

Lifestyle of Programmer & IoT (Node-RED|Blynk) & Data Science (ML,DL,NLP) and Whatever I want to do | cat can coding too | Ph.D. -> VISTEC -> IST