AI พาเราพุ่งชนความซับซ้อนเร็วขึ้น

Share
AI พาเราพุ่งชนความซับซ้อนเร็วขึ้น

AI ไม่ได้ทำให้ Software ง่ายขึ้น

มันแค่ทำให้เราเข้าสู่ช่วงที่ยากของ S-Curve เร็วขึ้น

ในช่วงหลายปีที่ผ่านมา ตั้งแต่การเปิดตัวของ ChatGPT และเครื่องมืออย่าง GitHub Copilot
หลายคนเริ่มพูดเหมือนกันว่า

“ตอนนี้เขียน software ง่ายขึ้นมาก”

มันจริง…แต่ก็ไม่จริงทั้งหมด

AI ทำให้การ เขียนโค้ดเร็วขึ้นอย่างมหาศาล
แต่สิ่งที่หลายทีมเริ่มรู้สึกคือ

ระบบกลับ ยากขึ้นกว่าเดิม

เพื่อเข้าใจสิ่งนี้ เราต้องกลับไปดูกราฟหนึ่งที่ใช้กันมานานคือ คณิตศาสตร์ของ S-Curve (Logistic Curve)

https://innospective.net/why-s-curves-are-probably-the-most-important-concept-in-entrepreneurship/
Why S-Curves Are Probably the Most Important Concept in Entrepreneurship

S-Curve อธิบายว่าเทคโนโลยีใหม่ ๆ เติบโตอย่างไร

ช่วงแรก
การเติบโตช้ามาก

ช่วงกลาง
การเติบโตพุ่งขึ้นอย่างรวดเร็ว

ช่วงท้าย
เริ่มอิ่มตัวและเติบโตช้าลง

แนวคิดนี้มาจากทฤษฎี Diffusion of Innovations ของ Everett Rogers

และมันไม่ได้ใช้แค่กับการยอมรับเทคโนโลยีของผู้ใช้เท่านั้น

มันใช้กับ ความซับซ้อนของระบบซอฟต์แวร์ ได้อีกด้วย


จุดที่ยากที่สุดของ S-Curve

สิ่งที่น่าสนใจคือ

จุดที่ ยากที่สุด ไม่ใช่ตอนเริ่มต้น

แต่มันคือ ช่วงกลางของ S-Curve

ช่วงที่ระบบเริ่มเติบโตเร็วที่สุด

ตอนเริ่มต้น

  • ระบบยังเล็ก
  • ทีมยังเล็ก
  • feature ยังไม่เยอะ
  • architecture ยัง simple

ตัวอย่างเช่น

monolith
1 database
few APIs

ทุกอย่างดูง่าย

ยกเว้นบางที่ ที่เริ่มจาก “Service-based” architecture แต่คิดว่ากำลังทำ Microservices

แต่เมื่อ product เริ่มโต

สิ่งที่เกิดขึ้นคือ

  • user เพิ่มขึ้น
  • feature เพิ่มขึ้น
  • สมาชิกของ team เพิ่มขึ้น
  • integration เพิ่มขึ้น

ระบบเริ่มต้องมี

  • distributed services
  • caching
  • message queues
  • observability
  • data pipelines

และไม่ทันไร

ระบบที่เคยง่าย กลายเป็น สัตว์ประหลาดที่ซับซ้อน

นี่คือช่วงที่หลายทีมเรียกกันเล่น ๆ ว่า

The “Oh shit” phase

AI ทำให้เราวิ่งเข้าสู่ช่วงนี้เร็วขึ้น

ก่อนยุค AI

ความเร็วในการสร้าง features ถูกจำกัดด้วย human bandwidth

แต่หลังจากมี AI

developer สามารถ

  • generate code
  • scaffold project
  • เขียน integration
  • ทดลอง idea ใหม่

ได้เร็วกว่าเดิมมาก

ผลลัพธ์คือ

feature explosion

และเมื่อ feature เพิ่มขึ้นเร็ว

สิ่งที่ตามมาคือ

integration explosion

และสุดท้าย

system complexity explosion

AI ลด cost ของการเขียน code

แต่ไม่ได้ลด cost ของการเข้าใจระบบ


ปัญหาที่ AI ไม่ได้แก้

AI ช่วยเขียน

  • function
  • class
  • API

ได้ดีขึ้น

แต่สิ่งที่ยังยากเหมือนเดิมคือ

  • architecture decision
  • domain modeling
  • distributed system design
  • data consistency
  • long-term maintainability

ถ้าปัญหาที่เราเจอต้องใช้สิ่งเหล่านี้ในการแก้ปัญหาจริง ๆ นั่นคือสิ่งที่ Fred Brooks เรียกว่า

Essential Complexity

ในบทความคลาสสิก
No Silver Bullet

ซึ่งหมายถึง

ความซับซ้อนที่ไม่สามารถกำจัดได้

AI อาจช่วยลด accidental complexity (หรือจริงๆอาจจะเพิ่มด้วยซ้ำในบางกรณี)

แต่ essential complexity ยังคงอยู่


สิ่งที่กำลังเกิดขึ้นกับ developers

AI ไม่ได้แทน developer

แต่มันกำลัง เปลี่ยน distribution ของ skill ที่มีค่า

developer ที่โฟกัสแค่ writing code อาจเริ่มถูกแทนที่

แต่ developer ที่เก่งเรื่อง

system thinking
architecture
problem framing

กลับมี leverage มากขึ้น

เพราะเมื่อ code ถูกสร้างได้ง่าย

สิ่งที่สำคัญขึ้นคือการตัดสินใจว่าเราควรสร้างอะไร


สุดท้ายแล้ว AI ไม่ได้เปลี่ยนความจริงพื้นฐานของ software engineering

เครื่องมือใหม่ทุกยุค
ทำให้การสร้างสิ่งต่าง ๆ ง่ายขึ้น

แต่เมื่อการสร้างง่ายขึ้น
มนุษย์จะสร้าง ระบบที่ใหญ่ขึ้น

และเมื่อระบบใหญ่ขึ้น
ความซับซ้อนก็จะกลับมาในระดับที่สูงกว่าเดิม

AI ก็ไม่ต่างกัน

มันไม่ได้ทำให้ software engineering ง่ายขึ้น

มันแค่ทำให้เรา

ไปถึงความซับซ้อนระดับถัดไปเร็วขึ้น

และในโลกที่ AI สามารถเขียนโค้ดได้

ทักษะที่มีค่าที่สุดของ developer
อาจไม่ใช่การเขียนโค้ดอีกต่อไป

แต่คือ

การเข้าใจว่า “ไม่ควรสร้างอะไร”

AI makes code cheap.

But understanding systems
is becoming the most expensive skill
in software engineering.


หากบทความนี้มีประโยชน์

คุณสามารถติดตาม Late Night with Uncle Quin ได้ทาง

ที่ที่เราคุยกันเรื่อง software, engineering mindset และอนาคตของ developer

แบบไม่ต้องใส่สูท

แต่ใส่ความจริงของวงการเข้าไปเต็ม ๆ

Read more

เร็วแค่ไหนก็ไร้ค่า ถ้าไปผิดทาง

เร็วแค่ไหนก็ไร้ค่า ถ้าไปผิดทาง

อีกบทเรียนที่ผมได้จากหนังสือ Slack: Getting Past Burnout, Busywork, and the Myth of Total Efficiency ของ Tom DeMarco คือ ทำไมองค์กรใหญ่ ๆ ถึงยึดมั่นกับ Efficiency กันนัก Efficiency คืออะไร? Efficiency แปลว่า "ประสิทธิภาพ" ยกตัวอย่างเช่น

By Chokchai Phatharamalai
กฎของจั๊วะ

กฎของจั๊วะ

ปีนี้ที่อายุ 44 ผม Reflect ตัวเอง และพบว่าหลักการใช้ชีวิตของผมได้มาจากหนังสือ The Seven Habits of Highly Effective People เยอะมาก ใน Habit ทั้ง 7 นี้จะมีเกร็ดเล็กเกร็ดน้อยที่ผมไปศึกษามา แล้วค่อย ๆ เติมเข้าไปเพื่อทำให้ Habit นั

By Chokchai Phatharamalai
วงจรชีวิตในมุมมอง Existentialism และศิลปะแห่งการล้มเหลวในราคาถูก

วงจรชีวิตในมุมมอง Existentialism และศิลปะแห่งการล้มเหลวในราคาถูก

บ่อยครั้งที่เราใช้ชีวิตราวกับกำลังรอคอยที่จะคอมไพล์ (Compile) โปรเจกต์ยักษ์ใหญ่ที่ซับซ้อนและรวมศูนย์เพียงชิ้นเดียว เราวางแผนสำหรับทศวรรษหน้าอย่างพิถีพิถัน เรายึดโยงความสุขไว้กับจุดหมายปลายทางอันไกลโพ้นและเลือนลางของความสำเร็จสูงสุด เราเขียนโค้ดทางความคิดไว้หลายพันบรรทั

By Santi
วนเวียนแต่ไม่วนลูป: เมื่อชีวิตคือฟังก์ชัน Recursion และการเดินทางสู่พื้นที่ปลอดภัย

วนเวียนแต่ไม่วนลูป: เมื่อชีวิตคือฟังก์ชัน Recursion และการเดินทางสู่พื้นที่ปลอดภัย

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

By Santi