top of page
ค้นหา
รูปภาพนักเขียนSathit Jittanupat

It is time to learn to go downhill


การพัฒนาโปรแกรมบน cloud มีข้อดีมากมายในช่วงเริ่มต้น แต่การทำให้ไปต่อได้เรื่อย ๆ ระยะยาวนาน เป็นอีกเรื่องหนึ่งที่ต้องใคร่ครวญจริงจัง เลือกว่าจะทำอะไรและไม่ทำอะไร


(1)


เมื่อไม่กี่วันที่ผ่านมาได้ดูคลิปสัมภาษณ์คุณไผท ผู้ก่อตั้ง Builk One เล่าถึงตอนเป็น SME เหมือนกับว่าต้องใช้พลังและศักยภาพทั้งหมดเพื่อฉุดลากองค์กรให้ขึ้นสู่ยอดเขา แล้วก็พบว่ายอดเขาที่พิชิตเป็นเพียงลูกเล็ก ๆ เมื่อเงยหน้าขึ้นไป แต่พอมาเป็น Start Up มีเท้าที่คอยถีบให้คุณต้องปีนป่ายไปสู่ยอดที่สูงขึ้นเรื่อย ๆ 


ผมพยายามถอดรหัสที่เขาพยายามสื่อ ทำไมจาก SME เป็น Start Up แล้วตัดสินใจกลับมาเป็น SME อีกครั้ง


ก่อนเรียนเซน เห็นภูเขาเป็นภูเขา เห็นแม่น้ำเป็นแม่น้ำ ขณะเรียนเซน เห็นภูเขาไม่ใช่ภูเขา เห็นแม่น้ำไม่ใช่แม่น้ำ หลังเรียนเซน เห็นภูเขาเป็นภูเขา เห็นแม่น้ำเป็นแม่น้ำ

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


หนังสือเล่มหนึ่งของ นิ้วกลม Run your own pace ทำให้ระลึกถึงเนื้อหาที่บรรยายความรู้สึกตกผลึกความคิด ถึงเป้าหมายของมาราธอน ไม่ใช่ความเร็วเพื่อชนะคนอื่น แต่เป็นความเร็วที่เหมาะกับตัวเอง ทำให้ไปถึงเส้นชัย ชนะใจตัวเองไม่ล้มเลิกเสียก่อน


ใครเคยอ่านเรื่อง Dunning-Kruger Effect แล้วมองไปรอบตัวก็รู้สึกว่า "เออ..จริง" หากไม่ตีความไปในความหมายทางเย้นหยัน "ยอดเขาแห่งความโง่" สะท้อนกับตัวเองก็ดูเชื่อมโยงในทางเดียวกัน เป็นกระบวนการที่ไปให้สุดแล้วจบลงด้วยตระหนักรู้


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


เมื่อคุณเพียรกระทำสิ่งใดสิ่งหนึ่งมานานพอ ไม่ว่าจะนำองค์กร วิ่งมาราธอน ค้นคว้าอะไรบางอย่าง ณ จุดใดจุดหนึ่งของเส้นเวลาจะเกิดชั่วขณะ "เอ๊ะ" มีคำถามผุดขึ้นมาในใจมากมาย ฉันกำลังทำอะไร เพื่ออะไร? สิ่งนี้มันมีความหมายจริงหรือ? จะหยุดหรือไปต่อ?


จากหนังสือเล่มเล็กนานมาแล้ว น่าจะเป็นคำของคุณสมคิด ลวางกูร จู่ ๆ ก็ผุดขึ้นจากความทรงจำ


"คุณไม่สามารถเดินขึ้นเขาตลอดไป  เมื่อถึงเวลาที่เหมาะสมต้องเรียนรู้ที่จะเดินลงเขา"

(2)


ปี 2013 ประมาณสิบปีที่แล้ว ผมมีโปรเจคท์ต้องทำโปรแกรมบัญชีขึ้นมาใหม่


สมัยนั้นโปรแกรมที่ใช้ในสำนักงานยังทำงานภายใต้โครงข่ายภายใน (LAN - Local Area Network) เชื่อมต่อผ่านสาย อุปกรณ์ไร้สายยังมีราคาแพง และประสิทธิภาพต่ำ อินเตอร์เน็ตยังแค่ใช้เล่นไม่จริงจัง มีเพียงเว็บเพจที่สื่อสารทางเดียว หรือเป็นเว็บบอร์ดที่ใช้สนทนากัน โทรศัพท์มือถือยังเป็นของราคาแพงและใช้งานได้จำกัด


ตอนนั้นเองที่เพื่อนของเราบอกว่าให้ทำเป็น web app แทนที่จะทำเป็น desktop app ตามยุคสมัย ท้าทายให้ลองเดิมพันกับเทคโนโลยีอนาคต ที่คาดว่าเมื่ออินเตอร์เน็ตพัฒนาจนมีประสิทธิภาพไม่ต่างจาก LAN การใช้งานผ่าน cloud จะต้องเกิดขึ้น


เรารู้ข้อจำกัดและข้อเสียของโปรแกรมลักษณะเดิม คาดว่าสามารถใช้ข้อได้เปรียบของ web app มาแก้ปัญหาเดิม ๆ เหล่านั้นได้


"ไม่ต้องติดตั้งโปรแกรม"

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


"ควบคุมการอัพเดทได้"

ลองนึกถึงโปรแกรมที่ติดตั้งในเครื่องผู้ใช้ เช่น Office หรือ SAP การไล่อัพเดทให้ครบทุกเครื่อง แถมยังลุ้นว่าอัพเดทแล้วไม่มีปัญหาโปรแกรมใหม่ไม่เข้ากับสเปคเครื่องบางรุ่น 

ถ้าผู้ใช้ไม่ยอมอัพเดทก็เป็นภาระเหมือนกัน ทีมซัพพอร์ทก็ต้องรอบรู้สามารถแก้ปัญหาให้กับโปรแกรมรุ่นเก่าที่แตกต่างกันได้


"ควบคุมสเปค server ได้"

เมื่อเปลี่ยนมาเป็น web app เครื่องที่ใช้งาน ต้องการเพียงโปรแกรม browser และเชื่อมต่ออินเตอร์เน็ตได้ ภาระการลงทุนและดูแล server มาอยู่ที่ฝั่งผู้พัฒนา โดยผู้ใช้ไม่ต้องมีภาระลงทุนจัดหาอุปกรณ์และดูแลรักษาอีกต่อไป ทำให้ผู้พัฒนาสามารถอัพเดทหรือปรับคอนฟิกของ server ให้เหมาะสมกับการใช้งานได้ดีกว่า


(3)


ตั้งแต่ปีก่อนหน้านั้นต่อเนื่องมาถึง 2023 ในฐานะโปรแกรมเมอร์ ความรู้สึก "เอ๊ะ" เริ่มผุดขึ้นมาบ่อยขึ้น เหมือนความรู้สึกคนที่วิ่งมาราธอนมาค่อนทางแล้ว ความเหนื่อยล้า อาการบาดเจ็บรบกวน ความคิดสองด้านต่อสู้กันครั้งแล้วครั้งเล่า


Eugene O'Kelly เล่าถึงการเตรียมชีวิตช่วงเวลาสุดท้ายของเขาใน Chasing Daylight ทำให้ผมคิดว่าน่าจะเริ่มต้นทบทวนอะไรบางอย่าง และหากจะดีไปกว่านั้นก็พยายามลากเส้นไปถึงเส้นทางที่เป็นไปได้ แล้วคิดอ่านว่าควรกระทำอะไรต่อจากนี้


  • AngularJS ที่เคยทันสมัยตอนเริ่มทำโปรแกรมเมื่อ 10 ปีที่แล้ว ตอนนี้ถ้าเข้าไปดูที่เว็บ https://angularjs.org/ จะเห็นข้อความเตือนว่า end of life ตั้งแต่ปี 2022 หากจะเปลี่ยนไปใช้ Angular ใหม่ จะต้องรื้อ embedded code ที่เป็นงานของทีมพัฒนาระบบด้วย โปรแกรมจึงอยู่ในสถานะใช้โค้ดที่ end of life โดยปริยาย


  • MongoLab​ (mLab) API ชื่อตอนที่เริ่มใช้บริการ Database as a service ภายหลัง ถูกซื้อโดย Atlas และหยุดให้บริการเมื่อประมาณปี 2021 เนื่องจากไม่ต้องการรื้อเปลี่ยน จึงแก้ปัญหาโดยการเขียน API มาขึ้นมาเองตามสเปคของ mLab ที่รองรับ multi-cluster / multi-database


  • BootStrap CSS ตอนนั้นเป็น version 3 ใช้สำหรับออกแบบเว็บที่เป็น Responsive Desktop First ปัจจุบันล่าสุดเป็น version version 5 Mobile First สัดส่วนของอุปกรณ์ที่ใช้โปรแกรมเปลี่ยนไปจากเมื่อ 10 ปีที่แล้ว แถมยังมีตัวเลือกอื่นเช่น Material UI, Tailwind


  • MongoDB เริ่มจาก version 2 ตอนนี้เป็น version 7 ยังดีที่สามารถอัพเดทตามโดยปรับโค้ดเพียงบางส่วน เพื่อใช้ประโยชน์จากความสามารถใหม่


ไม่รวมถึงภาษาที่ใช้เขียนโปรแกรม NodeJS, Python, PHP ที่อัพเดทเวอร์ชั่นเรื่อย ๆ การอุดช่องโหว่ความปลอดภัยบนอินเตอร์เน็ต เป็นสงครามชั่วนิรันดร์ หากต้องใช้บริการจากผู้ให้บริการ cloud ก็จะโดนบังคับให้ใช้เวอร์ชั่นใหม่ซอฟต์แวร์ที่เกี่ยวข้องเสมอ


นอกจากเทคโนโลยีแล้ว พฤติกรรมของผู้คนก็เปลี่ยนไป โทรศัพท์มือถือกลายเป็นอุปกรณ์สามัญ เราสื่อสารกันด้วย chat ส่งข้อความถึงกันบ่อยกว่าพูดคุยด้วยเสียง เราชำระเงินโดยการโอนผ่าน QR code แทนการใช้เงินสด


(4)


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


การพัฒนาโปรแกรมบน cloud มีข้อดีมากมายในช่วงเริ่มต้น แต่การทำให้ไปต่อได้เรื่อย ๆ ระยะยาวนาน เป็นอีกเรื่องหนึ่งที่ต้องใคร่ครวญจริงจัง เลือกว่าจะทำอะไรและไม่ทำอะไร เหมือนมีเท้าที่มองไม่เห็นคอยถีบให้ต้องไปข้างหน้า โดยเฉพาะในวันที่ generative AI กวักมือหยอย ๆ อยู่ตรงทางแยกเบื้องหน้า



คงจะจริงอย่างที่แม่ว่า เราแต่ละคนมีระดับความสูงของภูเขาที่ตนโปรดปราน.. เรื่องของเรื่องคือแม่ไม่ยอมปีนธารน้ำแข็ง แม่กลัวอย่างไร้เหตุผลและแก้ไม่ได้ แม่บอกว่าสำหรับแม่แล้ว ภูเขาสิ้นสุดที่ระดับ 3 พันเมตรซึ่งเป็นระดับความสูงของเทือกเขาโดโลไมท์ของแม่ แม่ชอบที่ระดับ 2 พันมากกว่า 3 พัน เพราะมีทุ่งหญ้าเลี้ยงสัตว์ ลำธาร ป่า และแม่ก็รักที่ระดับ 1 พันมากด้วย รักชีวิตความเป็นอยู่ของผู้คนในหมู่บ้านที่สร้างจากไม้และหิน แปดขุนเขา (Le Motto Montagne) Paolo Cognetti / นันธวรรณ์ ชาญประเสริฐ แปล / สนพ.อ่านอิตาลี

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


"จะใช้เวลาที่เหลือทำอะไร ตรงไหนคือระดับความสูงที่เหมาะสม"


จาก พฤศจิกายน 2023 ถึง เมษายน 2024

ดู 4 ครั้ง0 ความคิดเห็น

โพสต์ล่าสุด

ดูทั้งหมด

Comments


Post: Blog2_Post
bottom of page