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

เส้นทางสู่โลกคอมพิวเตอร์และการเริ่มต้นที่ MIT
Margaret เกิดเมื่อวันที่ 17 สิงหาคม 1936 ที่รัฐอินดีแอนา สหรัฐอเมริกา เธอมีความหลงใหลในด้านคณิตศาสตร์มาตั้งแต่เด็ก โดยสำเร็จการศึกษาระดับปริญญาตรีด้านคณิตศาสตร์และวิชาโทปรัชญาจาก Earlham College ในปี 1958 ซึ่งพื้นฐานทางตรรกศาสตร์และปรัชญานี้เองที่กลายเป็นรากฐานสำคัญในการคิดวิเคราะห์ระบบที่ซับซ้อนในเวลาต่อมา
เส้นทางอาชีพของเธอเริ่มต้นที่สถาบันเทคโนโลยีแมสซาชูเซตส์ (MIT) โดยเริ่มจากการพัฒนาซอฟต์แวร์พยากรณ์อากาศร่วมกับ Edward Norton Lorenz ซึ่งงานของเธอมีส่วนช่วยในงานวิจัยด้าน Chaos Theory (ทฤษฎีโกลาหล) ต่อมาเธอได้ร่วมงานในโครงการ SAGE ของ MIT Lincoln Lab เพื่อเขียนโปรแกรมสำหรับคอมพิวเตอร์ต้นแบบ AN/FSQ-7 ที่กองทัพอากาศสหรัฐฯ ใช้ตรวจจับเครื่องบินที่อาจเป็นภัยคุกคาม ความสามารถในการแก้ปัญหาโปรแกรมที่ซับซ้อนและยากลำบากในโครงการนี้ ทำให้เธอได้รับความไว้วางใจให้ก้าวเข้าสู่โครงการที่ท้าทายที่สุดในประวัติศาสตร์มนุษยชาติ นั่นคือโครงการ Apollo ของ NASA

บทบาทสำคัญในภารกิจ Apollo และการกู้สถานการณ์วิกฤต
ในปี 1965 Margaret เข้าร่วมทีมที่ MIT Instrumentation Laboratory ในฐานะโปรแกรมเมอร์คนแรกของโครงการ Apollo และเป็นผู้หญิงคนแรกในทีมพัฒนาซอฟต์แวร์นี้ เธอได้รับตำแหน่งผู้อำนวยการแผนกวิศวกรรมซอฟต์แวร์ โดยรับผิดชอบการเขียนและทดสอบซอฟต์แวร์ควบคุมการบินทั้งหมดสำหรับยาน Command Module, Lunar Module และสถานีอวกาศ Skylab
หนึ่งในนวัตกรรมที่สำคัญที่สุดของเธอคือ Display Interface Routines หรือ Priority Displays ซึ่งเป็นระบบที่สามารถจัดลำดับความสำคัญของงานในคอมพิวเตอร์ได้ ระบบนี้จะแจ้งเตือนนักบินอวกาศเมื่อเกิดเหตุการณ์ฉุกเฉิน โดยจะตัดการทำงานของโปรแกรมที่มีความสำคัญต่ำออกไปเพื่อให้คอมพิวเตอร์สามารถประมวลผลงานที่วิกฤตที่สุดได้ทันเวลา
ประสิทธิภาพของระบบนี้ถูกพิสูจน์ในภารกิจ Apollo 11 ขณะที่ยานกำลังจะลงจอดบนดวงจันทร์เพียง 3 นาที คอมพิวเตอร์เกิดการทำงานหนักเกินไป (Overload) เนื่องจากมีการส่งข้อมูลจากเรดาร์มากเกินความจำเป็น จนเกิดสัญญาณเตือนข้อผิดพลาด แต่ด้วยซอฟต์แวร์ที่ Margaret ออกแบบไว้ คอมพิวเตอร์สามารถระบุได้ว่างานใดสำคัญที่สุดและเลือกดำเนินการเฉพาะงานที่จำเป็นต่อการลงจอด ทำให้ภารกิจดำเนินต่อไปได้โดยไม่ต้องยกเลิกการลงจอดในวินาทีสุดท้าย

การสร้างมาตรฐานใหม่ให้วงการซอฟต์แวร์
Margaret ไม่เพียงแต่สร้างซอฟต์แวร์ที่ใช้งานได้จริง แต่เธอยังพยายามยกระดับการเขียนโปรแกรมให้เป็นวิชาชีพที่ได้รับความเคารพ เธอเป็นผู้บัญญัติคำว่า "Software Engineering" เพื่อแยกความแตกต่างระหว่างการสร้างฮาร์ดแวร์และการสร้างซอฟต์แวร์ โดยเน้นย้ำว่าการพัฒนาซอฟต์แวร์ควรมีกระบวนการทางวิศวกรรมที่เข้มงวด มีการวางแผน และมีการตรวจสอบความถูกต้องอย่างเป็นระบบ
หลังจากออกจาก MIT เธอได้ก่อตั้งบริษัท Higher Order Software (HOS) ในปี 1976 และ Hamilton Technologies ในปี 1986 เพื่อพัฒนาเครื่องมือและภาษาที่ช่วยป้องกันข้อผิดพลาดตั้งแต่ขั้นตอนการออกแบบ (Development before the fact) แทนที่จะรอให้เกิดข้อผิดพลาดแล้วค่อยตามแก้ไข ซึ่งแนวคิดนี้ส่งผลกระทบอย่างลึกซึ้งต่อการออกแบบระบบที่มีความน่าเชื่อถือสูงในปัจจุบัน

เกียรติยศและการยอมรับในระดับโลก
ด้วยผลงานที่พลิกโฉมวงการเทคโนโลยีและอวกาศ Margaret ได้รับรางวัลอันทรงเกียรติมากมาย โดยเฉพาะในปี 2016 ที่เธอได้รับ Presidential Medal of Freedom ซึ่งเป็นเหรียญเกียรติยศสูงสุดสำหรับพลเรือนในสหรัฐอเมริกาจากประธานาธิบดีบารัก โอบามา นอกจากนี้เธอยังเป็นแรงบันดาลใจให้ผู้หญิงทั่วโลกเข้าสู่สายงาน STEM (วิทยาศาสตร์, เทคโนโลยี, วิศวกรรม และคณิตศาสตร์) และได้รับการยกย่องผ่านชุด LEGO "Women of NASA" เพื่อเป็นเกียรติแก่การอุทิศตนของเธอ

ข้อเท็จจริงสำคัญ
- ผู้บัญญัติศัพท์: เป็นผู้ริเริ่มใช้คำว่า "Software Engineering" เพื่อยกระดับการเขียนโปรแกรมให้เป็นมาตรฐานวิศวกรรม
- ผลงานชิ้นเอก: นำทีมพัฒนาซอฟต์แวร์ควบคุมการบินสำหรับ Apollo Guidance Computer ของ NASA
- นวัตกรรมกู้ชีพ: ออกแบบระบบ Priority Displays ที่ช่วยให้ Apollo 11 ลงจอดบนดวงจันทร์ได้สำเร็จแม้คอมพิวเตอร์จะทำงานหนักเกินไป
- รางวัลสูงสุด: ได้รับ Presidential Medal of Freedom ในปี 2016
- การศึกษา: ปริญญาตรีด้านคณิตศาสตร์ วิชาโทปรัชญา จาก Earlham College
| หัวข้อ | รายละเอียด |
|---|---|
| ตำแหน่งสำคัญ | ผู้อำนวยการแผนกวิศวกรรมซอฟต์แวร์ที่ MIT Instrumentation Laboratory |
| บริษัทที่ก่อตั้ง | Higher Order Software (1976) และ Hamilton Technologies (1986) |
| ความเชี่ยวชาญ | การออกแบบระบบ, การป้องกันข้อผิดพลาด, และการจัดการวงจรชีวิตซอฟต์แวร์ |
| ผลกระทบต่อโลก | วางรากฐานการออกแบบซอฟต์แวร์ที่มีความน่าเชื่อถือสูง (Ultra-reliable software) |
คำถามที่พบบ่อย
Margaret Hamilton ทำหน้าที่อะไรในโครงการ Apollo?
เธอเป็นผู้นำทีมพัฒนาซอฟต์แวร์ควบคุมการบิน (On-board flight software) สำหรับคอมพิวเตอร์นำทางของยาน Apollo ซึ่งครอบคลุมทั้งยาน Command Module และ Lunar Module รวมถึงสถานีอวกาศ Skylab
คำว่า "Software Engineering" มีที่มาอย่างไร?
Margaret เป็นผู้เริ่มใช้คำนี้เพื่อสร้างความแตกต่างระหว่างการพัฒนาซอฟต์แวร์กับการพัฒนาฮาร์ดแวร์ โดยเธอต้องการให้การสร้างซอฟต์แวร์ได้รับการยอมรับว่าเป็นระเบียบวินัยทางวิศวกรรมที่มีมาตรฐานและมีความน่าเชื่อถือ
ซอฟต์แวร์ของเธอช่วยให้ Apollo 11 ลงจอดได้สำเร็จได้อย่างไร?
เธอออกแบบระบบจัดลำดับความสำคัญ (Priority Displays) ซึ่งเมื่อคอมพิวเตอร์ทำงานหนักเกินไป ระบบจะตัดงานที่ไม่สำคัญออกและคงไว้เฉพาะงานวิกฤตที่จำเป็นต่อการลงจอด ทำให้ยานไม่เกิดการหยุดทำงาน (Crash) และลงจอดได้อย่างปลอดภัย
รางวัลที่สำคัญที่สุดที่เธอได้รับคืออะไร?
รางวัลที่โดดเด่นที่สุดคือ Presidential Medal of Freedom ซึ่งเป็นรางวัลพลเรือนสูงสุดของสหรัฐอเมริกา มอบให้โดยประธานาธิบดีบารัก โอบามา ในปี 2016
แนวคิดการพัฒนาซอฟต์แวร์ของเธอในเวลาต่อมาคืออะไร?
เธอเน้นการพัฒนาแบบ "Development before the fact" ผ่านภาษา Universal Systems Language (USL) เพื่อป้องกันไม่ให้ข้อผิดพลาดเกิดขึ้นตั้งแต่ขั้นตอนการออกแบบ แทนที่จะใช้วิธีการทดสอบเพื่อหาข้อผิดพลาดในภายหลัง