3 ปี โปรแกรมเมอร์

Trust Tanapruk
Nextzy
Published in
2 min readOct 16, 2018

ต้องเริ่มว่าครั้งนี้ไม่ตื่นเต้นที่จะเขียน blog เท่าครั้งก่อนๆ เกือบจะไม่เขียนแล้ว คงเพราะหายเห่อกับสถานะโปรแกรมเมอร์ 555 เพราะมันกลืนเข้าเป็น lifestyle ไปแล้ว แต่ไม่ว่าจะขี้เกียจยังไงก็ต้องเขียนให้เสร็จ วินัยต้องมาก่อน ครั้งนี้ก็เหมือนบทปีที่แล้ว สรุปว่าตัวเองได้อะไรในรอบ 1 ปีในฐานะโปรแกรมเมอร์

Blog ที่แล้วติด Top Search Result คำว่าโปรแกรมเมอร์

อยู่อันดับ 4 !!

ตอนแรกก็ไม่เคย Search คีย์เวิร์ดนี้ แต่ Stats บอกว่ามีคนอ่าน 4,xxx คน ในขณะที่ช่วงแรกๆ มีคนอ่านประมาณ 4xx คน เลยลอง Search ดู ติดอันดับเฉยเลย อันนี้มีน้องทักมาว่าอยู่สายการเงิน และอยากย้ายสายมาเขียนโปรแกรม เห็นบทความผมเป็นแรงบันดาลใจ ก็ให้คำแนะนำไปเรียบร้อย หวังว่าจะมีประชากรโปรแกรมเมอร์เพิ่มอีกคนนึง

มี Know-hows มากกว่า Ideas

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

แต่ ณ ตอนนี้ Expense Lister ก็กลายเป็นเพียง แอพเดียวของตัวเองที่อยู่ในตลาด

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

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

ก็แค่อยากโค้ดอย่างเดียว

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

ตอนนี้สนุกกับการได้ ใช้การเขียนโค้ดใหม่ ที่มัน Efficient กว่าเดิม แบบจากเดิมเขียน 10 บรรทัด เหลือเขียนแค่บรรทัดเดียว Optimize ตรงนี้สนุกกว่าอีก ถ้าเป็นไปได้อยาก Clone ตัวเองในอดีตแล้ว Freeze ไว้ในระดับที่มีไฟเรื่องไอเดีย และมาป้อนไอเดียให้กับคนปัจจุบันทำให้

แก้ไขโค้ด ยากกว่าวางโครงใหม่

บ้านถ้าต้องซ่อมดูเป็นอะไรที่จุกจิก และไม่ค่อยมีช่างอยากแก้ บางกรณีที่ซับซ้อนคงแนะนำให้ทุบทิ้งสร้างใหม่ดีกว่า

เคยคิดว่าถ้าเป็นโค้ด มันเป็น virtual เหมือน ไฟล์ใน Computer ลบทิ้ง ลงใหม่ Copy/Paste ง่ายดี

แค่ตัวฟีเจอร์โดดๆ ไม่ได้ยาก แต่ยากตอน integrate รวมกับระบบเดิมที่ทำงานได้อยู่แล้ว เช่น เดิมระบบเก็บแค่ firstName lastName และจะเพิ่ม middleName เข้าไป ก็แค่ field เดียว แต่ต้องไปแก้ทุกที่ที่เรียกใช้ firstName lastName ให้ดึงข้อมูล middleName ด้วย หรือฝั่งกรอกบันทึก firstName lastName ต้องใส่ middleName ด้วย ตัวอย่างนี้มันง่าย แต่ถ้าโครงสร้างข้อมูลมีความซับซ้อนกว่านี้ แค่ field เดียวอาจแก้เป็นอาทิตย์

ผันตัวเองไปด้าน Web มากกว่า

เดิมทีผมเริ่มเขียน Android เป็นอย่างแรก แต่ช่วงหลังอยู่กับการเขียน web มากกว่า Android เสียอีก อย่างโปรเจคเพื่อนล่าสุด ทำระบบ Inventory เริ่มแรกจะเขียน Android แต่พบว่า User กลับใช้ iOS มากกว่าเสียอีก จะฝืนให้ User ซื้อ Android มาใช้ก็ไม่เหมาะสม และ use case ก็ไม่ได้ต้องการ Performance ระดับ Native

หวยเลยมาออกที่ Web และทำ Responsive ด้วยความรู้เดิมได้เรื่อง Javascript จากเขียน backend ปรับมาเขียน Frontend คงไม่ได้ยากมากแหละ ปรึกษาน้องในทีม Nextzy แนะนำให้ใช้ React + AntDesign ต่อ Backend เป็น Firebase

เขียนๆไป แรกๆก็ทรมาน ด้วยความไม่ถนัดกับแนวคิด Redux, HOC, state หรือ props แต่พอเขียนๆ ไปกลับเริ่มชินมือ เอาจริง มันง่ายและชีวิตดีกว่าเขียน Android เสียอีกนะ

นอกเหนือจากที่บ่นใน blog ก่อน ก็มีเรื่อง

  • ไม่ต้องกังวลเรื่องสถานะหน้าจอ อย่างตอนบิดจอ กดออกจากแอพ
  • การส่งข้อมูลจะหว่าง class ทำได้ง่ายๆ ผ่าน props, state จากเดิมต้องเก็บใส่ bundle ก่อนส่งต่อ

เสริมจากนี้ก็มี side project เขียน Ethereum contract ซึ่งใช้ภาษา Solidity ที่ใกล้ Javascript และใช้เครื่องมือฝั่ง Web มากกว่า

และนับจำนวนปี 2 ปี Android และ 1 ปีที่เขียน Web ทำให้อยากนิยามตัวเองใหม่เป็นแค่ Programmer เฉยๆดีกว่า

Nextzy IS HIRING

จบด้วยการขายของ สังเกตว่าเราไม่ระบุวุฒิการศึกษา จบตรงสายก็ดี หรือไม่ตรงสาย แต่ถ้ามีของ ก็มาสมัครได้ มีทั้งที่เชียงใหม่ และ กทม รายละเอียดตามลิงค์จ้า

--

--