เป็นคำถามที่ดี ที่คิดได้
และคำตอบ นั่นล่ะคือชีวิตจริง
เคยเล่าไปแล้วว่าเด็กรุ่นใหม่มักกระหาย new tech และพยายามจะใช้ของใหม่ที่สุด ซึ่งสุดท้ายมันนำไปสู่สิ่งที่คิดกันไม่ถึง ไม่ว่าจะเป็น
- knowledge มีน้อย
- ไม่มี support ที่ดีพอ
- เพื่อนร่วมทางน้อย ถามใครก็ยาก
- หาคนคุยด้วยได้ยาก ต่อยอดเองก็ไม่ได้
- เปลี่ยนมือแล้วต้องรื้อระบบ เพราะคนส่วนใหญ่ไม่ใช่สิ่งนี้กันหาคนมาต่อช่วงไม่ได้
- user ได้รับ impact เพราะพฤติกรรมบางอย่างในการใช้งานมันเปลี่ยนไป (มากน้อยเป็นอีกเรื่อง)
- งานอาจจะใช้เวลาเยอะกว่าปกติ เพราะต้อง reseach และงมปัญหามากกว่าปกติ
- business ต่อยอดไปไม่ได้ เพราะวนไปที่เรื่อง technical limitation
- เสี่ยงต่อการถูกทิ้งกลางทาง เพราะ technology นั้นไม่ต่อยอดหรือมีตัวอื่นที่ดีกว่าออกมาแทนที่ และ incompatibility กัน(อันนี้เจ็บกันเยอะ)
สุดท้าย developer คิดว่าตัวเอง cool เพราะได้ใช้ของเจ๋ง แต่ business ยัน user ไม่มีใครคิดอย่างนั้นเลย
แต่ไม่ได้หมายความว่าต้องไปใช้เทคโนโลยีเก่าๆ ที่กำลังจะตาย ไม่ใช่เลย ความ cool ของตัว developer มันอยู่ที่คุณได้เลือกสิ่งที่ดีที่สุด เหมาะสมที่สุด และคิดถึงภาพรวม การต่อยอด ระยะสั้นระยะยาว ตามความเหมาะสมของ project ต่างหาก นั่นแหล่ะคือคุณได้ก้าวข้ามความเป็น programmer developer ไปสู่ความเป็น engineer แล้ว
เรื่องนี้เคยเจ็บปวด และโดนด่ามาตั้งแต่ประมาณ 10ปีที่แล้วได้ ตอนนั้นจำได้เลย เขียน marketing campaign ยุคแรกๆของ jQuery ต่อมา prototype หรือ backbone นี่แหล่ะออกมา ก็เลยเปลี่ยนไปใช้ แล้วปรากฏว่ามันพังบน internet explorer 6 ซึ่งแก้ไม่ได้เพราะมันติดตั้งแต่ระดับ lib เลย แล้วไม่มีเวลาแก้แล้ว เพราะงาน marketing campaign พวกนี้ประมาณว่าสั่งวันนี้ แต่จะเอางานตั้งแต่เมื่อวานนะได้มั้ย อะไรแบบนี้ เลยโดนด่า เพราะปกติไม่เคย deliver งานพังๆออกมา และต้องขอเลื่อนอีกสองวันเพื่อรื้อกลับไปใช้ jQuery เหมือนเดิม เลยได้เรียนรู้ตั้งแต่นั้นเป็นต้นมา
ของใหม่ แต่ทำแล้วใช้ไม่ได้ ก็ไม่ได้มีค่าอะไรเลย