Why Delays — Part 1

Code Complexity

กับคำถามของใครหลายๆคนที่มีตำแหน่งใหญ่โต

“ทำไมถึงดีเลย์?”

เหตุผลข้อแรกเป็นอะไรที่ง่ายที่สุดที่เข้าใจได้สำหรับคนทำงานแต่ยากที่สุดที่จะอธิบายให้เจ้าของคำถามฟัง


ตั้งโจทย์ง่ายๆว่า “มีเลขหนึ่งกี่ตัวในภาพนี้?”

หนึ่ง — เปรียบเทียบกับโค๊ดที่เป็นระเบียบ การหาเลขหนึ่งในภาพนี้ง่ายรวดเร็ว ผมใช้เวลาแค่ไม่ถึง 10 วินาทีก็รู้คำตอบ


สอง — หรือต่อให้โค๊ดเราไม่เนียนกริ๊บแบบภาพแรก แต่ภาพนี้ก็ไม่ยากไปกว่ากันเท่าไร ไม่เกิน 15 วินาทีผมรู้คำตอบ


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


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


งานง่ายๆแค่การค้นหาเลขหนึ่ง 21 ตัวจากตัวเลขทั้งหมด 240 ตัว มันก็กลายเป็นเรื่องยากได้ถ้าเราไม่รู้จุดสังเกต ไม่เข้าใจแพทเทิร์น (ระยะห่าง ตัวหนา และตัวสี) … แล้วงานยากๆอย่างเช่นการทำความเข้าใจว่าโค๊ด 100 บรรทัดนี้ทำงานอย่างไรจากโค๊ดทั้งหมด 21,258 บรรทัดที่เขียนอย่างไม่ใส่ใจโดยคนอื่นที่ลาออกไปแล้วหละ?

“ทำไมถึงดีเลย์?” — เพราะความซับซ้อนที่ไร้ขีดจำกัดของโค๊ดนั่นเอง


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

The Future Has Arrived — It’s Just Not Evenly Distributed Yet, William Gibson

อนาคตอยู่ตรงนี้แล้ว เรามีหน้าที่ต้องถ่ายทอดมันออกไปให้คนอื่นได้สัมผัสสิ่งดีๆร่วมกันครับ

One clap, two clap, three clap, forty?

By clapping more or less, you can signal to us which stories really stand out.