อย่าใช้ MP เกินครึ่งหลอด

อย่าใช้ MP เกินครึ่งหลอด
Everyone knows that debugging is twice as hard as writing a program in the first place. So if you’re as clever as you can be when you write it, how will you ever debug it? — Brian Kernighan

วันก่อนผมมีโอกาสได้สอน concept เรื่อง dependency injection ให้ทีม มีสมาชิกคนหนึ่งตื่นเต้นกับเรื่องราวใหม่นี้ หาโค้ดตัวอย่างที่เคยเห็นๆมา เอามากางให้ผมดู เพื่อถามและทำความเข้าใจเพิ่มเติมอย่างกระตือรือร้น (คนแบบนี้สอนสนุกจริงๆ :D) แล้วน้องเค้าก็พูดมาคำหนึ่งว่า

ผมจะพยายามหาที่ที่เล่นท่านี้ดูนะ

แวบนั้นสัญญาณนิรภัยในหัวผมก็ดังขึ้นมา แล้วก็โพล่งไปก่อนว่า “อย่า” ผมเล่าต่อว่า สมัยก่อน บ่อยครั้งที่ผมมักจะตื่นเต้นกับท่าใหม่ๆที่ได้เรียนมา แล้วก็หาทางเอาไปใช้ในงาน ผลลัพธ์เป็นเอกฉันท์ทุกครั้งไป คือโดนท่านั้นกลับมาแว้งกัดตัวเอง ตอนแรกผมไม่แน่ใจว่าผมเป็นแค่โปรแกรมเมอร์ดวงซวย หรือการใช้ท่ายากมันจะต้องโดนแว้งกัดเสมอไปนะ? จนกระทั่งมาเจอ quote ของ Brian Kernighan (จริงป่าวไม่รู้ แต่ wikipedia บอกว่าเค้าเป็นคนพูด) ว่า การ debug เนี่ย มันยากกว่าเขียนโด้ดตอนแรกตั้งเท่าตัว เพราะฉะนั้น ถ้าใช้ท่าที่ยากเกินครึ่งนึงของความสามารถเราเขียนมันขึ้นมา by definition เลยแปลว่า เราจะไม่มีปัญญา debug มันตอนมีปัญหา


เรื่องนี้สอนให้รู้ว่า ผม โชคชัย by definition ไม่มีทางดวงซวย #ไม่เห็นจะเกี่ยว #จบๆ กลับไปทำงานกัน

ref: https://en.wikiquote.org/wiki/Brian_Kernighan

credit:

  • ป้อ ที่เป็นแรงบันดาลใจให้เขียน blog นี้
  • โจ้ ที่เป็นต้นเหตุให้เกิด blog นี้

Read more

ทำไม System Analyst ถึงไม่เชื่อ Design จากทีม

ทำไม System Analyst ถึงไม่เชื่อ Design จากทีม

บ่อยครั้งที่ผมได้ยินน้อง ๆ ออดส์ทีม (ODT) เล่าว่า งานที่ทำอยู่ไม่ท้าทายเลย เพราะเพียงได้รับ Specification มาจาก System Analyst (SA) หรือ Tech Lead ที่เป็นพนักงาน แล้วน้องก็มีหน้าที่เขียนโค้ดตามนั้นไปอย่างเดียว บ่

By Chokchai
เวลาอู้

เวลาอู้

ผมกำลังอ่านหนังสือ Slack: Getting Past Burnout, Busywork, and the Myth of Total Efficiency ของ Tom DeMarco ซึ่งได้ให้มุมมองใหม่เกี่ยวกับ Slack time หรือเวลาอู้งานกับผม แต่ก่อนจะเล่าว่าผมเห็นอะไร ผมของแบ่งปันมุมมองเวลาผมดูองค์กรก่อนนะ สายการผลิต คนในองค์กรมารวมตั

By Chokchai
สุดยอดทีม (Extraordinary Team)

สุดยอดทีม (Extraordinary Team)

ท้ายหนังสือ Teamwork is an Individual Skill ของ Christopher Avery ได้กล่าวถึงสมการของสุดยอดทีมไว้ดังนี้ครับ Extraordinary Collaboration = Exchange + Expansion + Integrity ผมใช้เวลาอ่านตรงนี้ และอีก 3 บทที่ขยายความเรื่อง Exchange, Expansion และ Integrity อยู่เกือบ 2 สัปดาห์กว่าจะพอเข้าใจมันอย่

By Chokchai