ข้ามไปเนื้อหาหลัก

Margaret Hamilton ผู้หญิงเบื้องหลัง 145,000 บรรทัดโค้ดพายาน Apollo 11 สู่ดวงจันทร์

ย้อนรอยเส้นทางของ Margaret Hamilton ผู้บัญญัติคำว่า Software Engineer และเขียนซอฟต์แวร์ช่วยชีวิตภารกิจ Apollo 11 ให้รอดพ้นจากความหายนะ

เรียบเรียงโดย AI
Inewgen
25 Jul 2026ที่มา: Techsauce4 นาทีอ่าน (0 ครั้ง)อัปเดตล่าสุด 31 Jul 2026
แชร์
Margaret Hamilton ผู้หญิงเบื้องหลัง 145,000 บรรทัดโค้ดพายาน Apollo 11 สู่ดวงจันทร์

ภาพประกอบจากคลังภาพสต็อก ไม่ใช่ภาพจากเหตุการณ์จริง

ขนาดตัวอักษร
  • Margaret Hamilton เป็นผู้คิดค้นและบัญญัติคำว่า Software Engineer ขึ้นมาด้วยตนเอง
  • เธอสร้างกำแพงฐานข้อมูลบั๊กจากรูปโพลารอยด์เพื่อศึกษาความผิดพลาดอย่างเป็นระบบ
  • เหตุการณ์ลูกสาววัย 4 ขวบกดคอมพิวเตอร์รันโปรแกรมผิดพลาด กลายมาเป็นบทเรียนป้องกันระบบใน Apollo 8
  • ซอฟต์แวร์ระบบจัดลำดับความสำคัญของเธอช่วยชีวิตยาน Apollo 11 จากสัญญาณเตือนภัย 1202 และ 1201

เมื่อผู้คนพูดถึงภารกิจ Apollo 11 ชื่อของ Neil Armstrong และ Buzz Aldrin มักจะเป็นชื่อแรกที่ทุกคนนึกถึง แต่ในคืนวันที่ 20 กรกฎาคม 1969 ภายในห้องมอนิเตอร์ของห้องแล็บ MIT มีผู้หญิงวัย 32 ปีชื่อ Margaret Hamilton นั่งเฝ้าหน้าจอคอมพิวเตอร์ตลอดทั้งคืน โดยที่ในเวลานั้น ตำแหน่งงานของเธอยังไม่มีชื่อเรียกอย่างเป็นทางการด้วยซ้ำ จนเธอต้องเป็นคนบัญญัติคำว่า Software Engineer ขึ้นมา

เส้นทางชีวิตของ Hamilton เริ่มต้นจากการเรียนคณิตศาสตร์ควบปรัชญาที่ Earlham College และย้ายตามสามีมาอยู่ที่บอสตันในปี 1958 เธอตั้งใจจะหางานทำคั่นเวลาเพื่อหาเงินส่งสามีเรียนกฎหมายที่ Harvard ก่อนจะไปเรียนต่อปริญญาโทด้านคณิตศาสตร์ โดยไม่คาดคิดว่างานคั่นเวลานั้นคือตำแหน่งเขียนโปรแกรมคอมพิวเตอร์ที่ MIT ทั้งที่เธอไม่เคยเห็นคอมพิวเตอร์มาก่อนในชีวิต

ในปี 1959 เธอเริ่มต้นทำงานกับ Edward Lorenz นักอุตุนิยมวิทยาผู้บุกเบิก Chaos Theory โดยต้องคีย์ข้อมูลพยากรณ์อากาศลงเครื่องคอมพิวเตอร์ LGP-30 น้ำหนัก 800 ปอนด์ และต้องเรียนรู้การแก้โค้ดไบนารีด้วยการใช้ดินสอกับเทปกาวตัดต่อเทปกระดาษด้วยมือ ต่อมาในปี 1961 เธอย้ายไปทำงานที่ MIT Lincoln Lab ในโครงการ SAGE ระบบคอมพิวเตอร์ขนาดเท่าโกดังของกองทัพเพื่อตรวจจับเครื่องบินข้าศึก

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

Hamilton มีวิธีแก้ปัญหาความผิดพลาดที่ไม่เหมือนใคร โดยให้โปรแกรมเมอร์ทุกคนที่ทำระบบล่ม ถ่ายรูปโพลารอยด์ตัวเองคู่กับเอกสารโค้ดจุดที่ผิดพลาด แล้วนำมาแปะเรียงกันบนผนังห้องเพื่อสร้างกำแพงฐานข้อมูลบั๊ก ค้นหาแพทเทิร์นและสาเหตุที่แท้จริงที่ทำให้ระบบพัง วิธีคิดนี้ทำให้เธอถูกดึงตัวมาที่ MIT Instrumentation Lab ของ Charles Stark Draper ในปี 1964 เพื่อรับหน้าที่เขียนซอฟต์แวร์นำร่องให้ยาน Apollo

งานแรกของเธอคือการเขียนโค้ดระบบยกเลิกภารกิจ (Abort Sequence) ซึ่งเธอตั้งชื่อเล่นว่า "Forget It" แต่เมื่อเกิดเหตุการณ์ฉุกเฉินในการทดลองบิน โค้ดนี้กลับทำงานได้อย่างแม่นยำและช่วยเซฟภารกิจไว้ได้สำเร็จ ส่งผลให้เธอก้าวขึ้นเป็นหัวหน้า Software Engineering Division คุมทีมพัฒนาซอฟต์แวร์เกือบ 100 คน รับผิดชอบมาตรฐานงานระดับ Man-Rated ที่เดิมพันด้วยชีวิตของนักบินอวกาศ

ไม่อยากพลาดข่าวใหม่?

สมัครรับสรุปข่าวสารใหม่ทางอีเมล ไม่บ่อยจนรำคาญ

โฆษณา

"นักบินอวกาศผ่านการฝึกมาอย่างเข้มงวด ไม่มีทางทำเรื่องผิดพลาดง่ายๆ แบบเด็ก 4 ขวบแน่นอน"

ผู้บริหารของโครงการ Apollo

มุมมองของผู้บริหารที่เคยดูถูกวิธีการคาดเดาความผิดพลาดของเธอต้องเปลี่ยนไป เมื่อเธอพา Lauren ลูกสาววัย 4 ขวบมาที่แล็บ และเด็กน้อยเผลอกดโปรแกรม P01 ในแท่นจำลองการบิน ส่งผลให้ข้อมูลนำทางทั้งหมดถูกลบหายไป เหตุการณ์ดังกล่าวที่เรียกว่า Lauren Bug นี้ได้เกิดขึ้นซ้ำจริงกับนักบินอวกาศ Jim Lovell ในภารกิจ Apollo 8 ทำให้ผู้บริหารยอมอนุมัติให้เพิ่มโค้ดป้องกันการกดผิดพลาดลงในระบบทันที

Apollo 11 lunar module landing mission control

บททดสอบที่สำคัญที่สุดเกิดขึ้นในวันที่ 20 กรกฎาคม 1969 ขณะที่ยาน Eagle ในภารกิจ Apollo 11 กำลังลงจอดบนดวงจันทร์ เมื่อสวิตช์เรดาร์ถูกเปิดค้างไว้จนส่งข้อมูลขยะเข้ามาป่วนระบบ ทำให้คอมพิวเตอร์ทำงานโอเวอร์โหลดสูงถึง 103% และส่งสัญญาณเตือนภัยรหัส 1202 และ 1201 ดังระงมขึ้น 5 ครั้งกลางอากาศ ซึ่ง Hamilton ยอมรับว่าวินาทีนั้นคือ Sheer Terror หรือความหวาดกลัวสุดขีดเพราะเกรงว่ายานจะพุ่งชนดวงจันทร์

ทว่าสถาปัตยกรรมซอฟต์แวร์ระบบจัดลำดับความสำคัญ (Priority Scheduling) ที่เธอและทีมออกแบบไว้ ได้เข้ามาช่วยชีวิตภารกิจเอาไว้ ซอฟต์แวร์ตัดสินใจตัดงานที่มีความสำคัญต่ำอย่างการประมวลผลเรดาร์ทิ้งไปโดยอัตโนมัติ และทุ่มกำลังคอมพิวเตอร์ 100% ไปที่การสั่งการเครื่องยนต์ลงจอด จนกระทั่งเวลา 03:17 น. ยาน Eagle สามารถแตะพื้นผิวดวงจันทร์ได้อย่างปลอดภัย

ที่มา: Techsauce

ความคิดเห็น

แสดงความคิดเห็น
0/2000

พบข้อมูลผิดพลาดในบทความนี้? แจ้งปัญหาบทความนี้