Margaret Hamilton (software engineer)

Margaret Elaine Hamilton(néeHeafield;born August 17, 1936) is an Americancomputer scientist.She directed the Software Engineering Division at theMIT Instrumentation Laboratory,where she led the development of the on-board flight software forNASA'sApollo Guidance Computerfor theApollo program.She later founded two software companies, Higher Order Software in 1976 and Hamilton Technologies in 1986, both inCambridge, Massachusetts.

Margaret Hamilton
Hamilton in 1995
Born
Margaret Elaine Heafield

(1936-08-17)August 17, 1936(age 88)
EducationUniversity of Michigan
Earlham College(BA)
OccupationSoftware engineer
Spouses
  • James Cox Hamilton
    (m.1958;div.1967)
  • Dan Lickly
    (m.1969)
Children1
RelativesJames Cox Chambers(former son-in-law)
AwardsPresidential Medal of Freedom

Hamilton has published more than 130 papers, proceedings, and reports, about sixty projects, and six major programs. She coined the term "software engineering",stating" I began to use the term 'software engineering' to distinguish it from hardware and other kinds of engineering, yet treat each type of engineering as part of the overallsystems engineeringprocess. "[1][2][3]

On November 22, 2016, Hamilton received thePresidential Medal of Freedomfrom presidentBarack Obamafor her work leading to the development of on-board flight software for NASA's Apollo Moon missions.[4]

Early life and education

edit

Margaret Elaine Heafield was born August 17, 1936, inPaoli, Indiana,[5]to Kenneth Heafield and Ruth Esther Heafield (néePartington).[6][7]The family later moved toMichigan,[8]where Margaret graduated fromHancock High Schoolin 1954.[6]

She studied mathematics at theUniversity of Michiganin 1955 before transferring toEarlham College,where her mother had been a student.[9][10]She earned a BA in mathematics with a minor in philosophy in 1958.[9][11]She cites Florence Long, the head of the math department at Earlham, as helping with her desire to pursue abstract mathematics and become a mathematics professor.[12]

She says her poet father and headmaster grandfather inspired her to include a minor in philosophy in her studies.[13]

Career

edit

In Boston, Hamilton initially intended to enroll in graduate study inabstract mathematicsatBrandeis University.[6]However, in mid-1959, Hamilton began working forEdward Norton Lorenz,in themeteorologydepartment atMIT.[14]She developed software for predicting weather, programming on theLGP-30and thePDP-1computers atMarvin Minsky'sProject MAC.[15][16][17]Her work contributed to Lorenz's publications onchaos theory.At the time,computer scienceandsoftware engineeringwere not yet established disciplines; instead, programmers learned on the job with hands-on experience.[18]She moved on to another project in the summer of 1961, and hired and trainedEllen Fetteras her replacement.[14]

SAGE Project

edit

From 1961 to 1963, Hamilton worked on theSemi-Automatic Ground Environment(SAGE) Project atthe MIT Lincoln Lab,[16]where she was one of the programmers who wrote software for the prototypeAN/FSQ-7 computer (the XD-1),used by theU.S. Air Forceto search for possibly unfriendly aircraft.[5]She also wrote software for a satellite tracking project at theAir Force Cambridge Research Laboratories.[16]The SAGE Project was an extension ofProject Whirlwind,started byMITto create a computer system that could predict weather systems and track their movements using simulators. SAGE was soon developed for military use in anti-aircraft air defense. Hamilton said:

What they used to do when you came into this organization as a beginner, was to assign you this program which nobody was able to ever figure out or get to run. When I was the beginner they gave it to me as well. And what had happened was it was tricky programming, and the person who wrote it took delight in the fact that all of his comments were in Greek and Latin. So I was assigned this program and I actually got it to work. It even printed out its answers in Latin and Greek. I was the first one to get it to work.[19]

It was her efforts on this project that made her a candidate for the position at NASA as the lead developer for Apollo flight software.[6]

MIT Instrumentation Laboratory and the Apollo Guidance Computer

edit
Hamilton in 1969, standing next to listings of the software she and her MIT team produced for the Apollo project[20][21]
Hamilton during her time as lead Apollo flight software designer[22]

Hamilton learned of the Apollo project in 1965 and wanted to get involved due to it being "very exciting" as a Moon program.[23]She joined theMIT Instrumentation Laboratory,which developed theApollo Guidance Computerfor theApollo lunar exploration program.Hamilton was the first programmer hired for the Apollo project at MIT and the first female programmer in the project,[23][24]and later became Director of the Software Engineering Division.[25]She was responsible for the team writing and testing all on-board in-flight software for theApollospacecraft'sCommandandLunar Moduleand for the subsequentSkylab space station.[26][27][18]Another part of her team designed and developed the systems software.[28]This included error detection and recovery software such as restarts and the Display Interface Routines (also known as the Priority Displays), which Hamilton designed and developed.[29]She worked to gain hands-on experience during a time when computer science courses were uncommon and software engineering courses did not exist.[18]

Her areas of expertise include:systems designandsoftware development,enterpriseandprocess modeling,development paradigm, formalsystems modelinglanguages, system-oriented objects for systems modeling and development, automated life-cycle environments, methods for maximizingsoftware reliabilityandreuse,domain analysis,correctnessby built-in language properties, open-architecture techniques for robust systems, full life-cycle automation,quality assurance,seamless integration,error detection and recoverytechniques,human-machine interfacesystems,operating systems,end-to-end testing techniques, and life-cycle management techniques.[18][20]These techniques are intended to make code more reliable because they help programmers identify and fix errors sooner in the development process.

Apollo 11 landing

edit

In one of the critical moments of theApollo 11mission, theApollo Guidance Computer,together with the on-board flight software, averted an abort of the landing on the Moon. Three minutes before thelunar landerreached the Moon's surface, several computer alarms were triggered. According to software engineer Robert Wills, Buzz Aldrin entered the codes to request that the computer display altitude and other data on the computer’s screen. The system was designed to support seven simultaneous programs running, but Aldrin’s request was the eighth. This action was something he requested many times whilst working in the simulator. The result was a series of unexpected error codes during the live descent. The on-board flight software captured these alarms with the "never supposed to happen displays" interrupting the astronauts with priority alarm displays.[30] Hamilton had prepared for just this situation years before:

There was one other failsafe that Hamilton likes to remember. Her "priority display" innovation had created a knock-on risk that astronaut and computer would slip out of synch just when it mattered most. As the alarms went off and priority displays replaced normal ones, the actual switchover to new programmes behind the screens was happening "a step slower" than it would today.

Hamilton had thought long and hard about this. It meant that if Aldrin, say, hit a button on the priority display too quickly, he might still get a "normal" response. Her solution: when you see a priority display, first count to five.[31]

By some accounts, the astronauts had inadvertently left the rendezvous radar switch on, causing these alarms to be triggered (the claim that the radar was left on inadvertently by the astronauts is disputed by Robert Wills withthe National Museum of Computing[32]). The computer was overloaded with interrupts caused by incorrectlyphasedpower supplied to the lander's rendezvous radar.[33][34][35]The program alarms indicated "executive overflows", meaning the guidance computer could not complete all of its tasks in real time and had to postpone some of them.[36]The asynchronous executive designed byJ. Halcombe Laning[37][33][38]was used by Hamilton's team to develop asynchronous flight software:

Because of the flight software's system-software's error detection and recovery techniques that included its system-wide "kill and recompute" from a "safe place" restart approach to its snapshot and rollback techniques, the Display Interface Routines (AKA the priority displays) together with its man-in-the-loop capabilities were able to be created in order to have the capability to interrupt the astronauts' normal mission displays with priority displays of critical alarms in case of an emergency. This depended on our assigning a unique priority to every process in the software in order to ensure that all of its events would take place in the correct order and at the right time relative to everything else that was going on.[39]

Hamilton's priority alarm displays interrupted the astronauts' normal displays to warn them that there was an emergency "giving the astronauts ago/no godecision (to land or not to land) ".[40]Jack Garman,a NASA computer engineer in mission control, recognized the meaning of the errors that were presented to the astronauts by the priority displays and shouted, "Go, go!" and they continued.[41]Paul Curto, a senior technologist who nominated Hamilton for a NASA Space Act Award, called Hamilton's work "the foundation for ultra-reliable software design".[28]

Hamilton later wrote of the incident:

The computer (or rather the software in it) was smart enough to recognize that it was being asked to perform more tasks than it should be performing. It then sent out an alarm, which meant to the astronaut, 'I'm overloaded with more tasks than I should be doing at this time and I'm going to keep only the more important tasks'; i.e., the ones needed for landing... Actually, the computer was programmed to do more than recognize error conditions. A complete set of recovery programs was incorporated into the software. The software's action, in this case, was to eliminate lower priority tasks and re-establish the more important ones... If the computer hadn't recognized this problem and taken recovery action, I doubt if Apollo 11 would have been the successful moon landing it was.

— Letter from Margaret H. Hamilton, Director of Apollo Flight Computer Programming MIT Draper Laboratory, Cambridge, Massachusetts, titled "Computer Got Loaded", published inDatamation,March 1, 1971[42]

Businesses

edit

In 1976, Hamilton co-founded with Saydean Zeldin a company called Higher Order Software (HOS)[43]to further develop ideas about error prevention and fault tolerance emerging from their experience at MIT working on the Apollo program.[44][45]They created a product called USE.IT, based on the HOS methodology they developed at MIT.[46][47][48]It was successfully used in numerous government programs[49][50]including a project to formalize and implement C-IDEF, an automated version ofIDEF,amodeling languagedeveloped by the U.S. Air Force in theIntegrated Computer-Aided Manufacturing(ICAM) project.[51]In 1980, British-Israeli computer scientistDavid Harelpublished a proposal for a structured programming language derived from HOS from the viewpoint ofand/orsubgoals.[52]Others have used HOS to formalize the semantics of linguistic quantifiers,[53]and to formalize the design of reliable real-time embedded systems.[54]

Hamilton was the CEO of HOS through 1984[44]and left the company in 1985. In March 1986, she founded Hamilton Technologies, Inc. inCambridge, Massachusetts.The company was developed around theUniversal Systems Language(USL) and its associated automated environment, the 001 Tool Suite, based on her paradigm of development before the fact for systems design and software development.[35][55][56]

Legacy

edit
Official photo forNASA,1989

Hamilton has been credited with naming the discipline of "software engineering".[57][58][59][60]Hamilton details how she came to make up the term "software engineering":

When I first came up with the term, no one had heard of it before, at least in our world. It was an ongoing joke for a long time. They liked to kid me about my radical ideas. It was a memorable day when one of the most respected hardware gurus explained to everyone in a meeting that he agreed with me that the process of building software should also be considered an engineering discipline, just like with hardware. Not because of his acceptance of the new 'term' per se, but because we had earned his and the acceptance of the others in the room as being in an engineering field in its own right.[39]

When Hamilton started using the term "software engineering" during the early Apollo missions,[61]software development was not taken seriously compared to other engineering,[62]nor was it regarded as a science. Hamilton was concerned with legitimizing software development as an engineering discipline.[63]Over time the term "software engineering" gained the same respect as any other technical discipline.[58][64]TheIEEE SoftwareSeptember/October 2018 issue celebrates the 50th anniversary of software engineering.[65]Hamilton talks about "Errors" and how they influenced her work related to software engineering and how her language, USL, could be used to prevent the majority of "Errors" in a system.[66]With USL, rather than continuing to test for errors, her program was designed to keep most errors out of the system from the beginning.[67]USL was created after her knowledge and experience from the Apollo mission, in which she determined a mathematical theory for systems and software.[68]This method was then, and still is, highly impactful to the field of software engineering. Writing inWired,Robert McMillan noted: "At MIT she assisted in the creation of the core principles in computer programming as she worked with her colleagues in writing code for the world's first portable computer".[69]Hamilton's innovations go beyond the feats of playing an important role in getting humans to the Moon. According toWired's Karen Tegan Padir: "She, along with that other early programming pioneer,COBOLinventorGrace Hopper,also deserve tremendous credit for helping to open the door for more women to enter and succeed in STEM fields like software. "[70][71]

Tributes

edit

In 2017, a "Women of NASA"LEGOset went on sale featuringminifiguresof Hamilton,Mae Jemison,Sally Ride,andNancy Grace Roman.The set was initially proposed byMaia Weinstockas a tribute to the women's contributions to NASA history, and Hamilton's section of the set features a recreation of her famous 1969 photo posing with a stack of her software listings.[72][73]

In 2019, to celebrate 50 years after the Apollo landing, Google decided to make a tribute to Hamilton. The mirrors at theIvanpah Solar Power Facilitywere configured to create a picture of Hamilton and the Apollo 11 by moonlight.[74]

Margo Madison, a fictional NASA engineer in the alternate history seriesFor All Mankind,was inspired by Hamilton.[75]

Awards

edit
Barack Obamaawards thePresidential Medal of Freedomto Hamilton in 2016
Honoris Causa ceremony of Margaret Hamilton, 2018

Publications

edit
  • Hamilton, M.; Zeldin, S. (March 1976). "Higher Order Software—A Methodology for Defining Software".IEEE Transactions on Software Engineering.SE-2(1):9–32.doi:10.1109/TSE.1976.233798.S2CID7799553.
  • Hamilton, M.; Zeldin, S. (January 1, 1979). "The relationship between design and verification".Journal of Systems and Software.1:29–56.doi:10.1016/0164-1212(79)90004-9.
  • Hamilton, M. (April 1994)."Inside Development Before the Fact".(Cover story). Special Editorial Supplement. 8ES-24ES.Electronic Design.
  • Hamilton, M. (June 1994)."001: A Full Life Cycle Systems Engineering and Software Development Environment".(Cover story). Special Editorial Supplement. 22ES-30ES.Electronic Design.
  • Hamilton, M.; Hackler, W. R. (2004). "Deeply Integrated Guidance Navigation Unit (DI-GNU) Common Software Architecture Principles". (Revised December 29, 2004). DAAAE30-02-D-1020 and DAAB07-98-D-H502/0180, Picatinny Arsenal, NJ, 2003–2004.
  • Hamilton, M.; Hackler, W. R. (2007). "Universal Systems Language for Preventative Systems Engineering",Proc. 5th Ann. Conf. Systems Eng. Res.(CSER), Stevens Institute of Technology, Mar. 2007, paper #36.
  • Hamilton, Margaret H.; Hackler, William R. (2007). "8.3.2 a Formal Universal Systems Semantics for SysML".Incose International Symposium.17(1). Wiley:1333–1357.doi:10.1002/j.2334-5837.2007.tb02952.x.ISSN2334-5837.S2CID57214708.
  • Hamilton, Margaret H.; Hackler, William R. (2008). "Universal Systems Language: Lessons Learned from Apollo".Computer.41(12). Institute of Electrical and Electronics Engineers (IEEE):34–43.doi:10.1109/mc.2008.541.ISSN0018-9162.
  • Hamilton, M. H. (September 2018)."What the Errors Tell Us".IEEE Software.35(5):32–37.doi:10.1109/MS.2018.290110447.S2CID52896962.

Personal life

edit

Hamilton has a sister Kathryn.[87]

She met her first husband, James Cox Hamilton,[88]in the mid-1950s while attending college. They were married on June 15, 1958, the summer after she graduated from Earlham.[89][88]She briefly taught high school mathematics and French at a public school inBoston, Indiana.[89][16]The couple then moved toBoston,Massachusetts,[16]where they had a daughter, Lauren, born on November 10, 1959.[6]They divorced in 1967 and Margaret married Dan Lickly two years later.[88][90]

See also

edit

References

edit
  1. ^Cameron, Lori (October 5, 2018)."First Software Engineer".IEEE Computer Society.RetrievedMarch 25,2023.
  2. ^Thereon, Bradley, ed. (2003)."The NASA Heritage Of Creativity"(PDF).2003 Annual Report of the NASA Inventions & Contributions Board.NASA.Archived(PDF)from the original on May 29, 2016.RetrievedJune 16,2023.
  3. ^Brock, David C.; Hamilton, Margaret H. (April 13, 2017).Hamilton, Margaret oral history.Computer History Museum.102738243.Archivedfrom the original on November 14, 2023.RetrievedMarch 25,2023.
  4. ^ab"President Obama Names Recipients of the Presidential Medal of Freedom".whitehouse.gov.November 16, 2016.RetrievedJuly 26,2022.
  5. ^abSpicer, Dan (April 27, 2017)."2017 CHM Fellow Margaret Hamilton".Computer History Museum.Archivedfrom the original on February 12, 2019.RetrievedFebruary 11,2019.
  6. ^abcdeWelch, Rosanne; Lamphier, Peg A., eds. (February 28, 2019).Technical Innovation in American History: An Encyclopedia of Science and Technology.Vol. 3.ABC-CLIO.p. 62.ISBN978-1-61069-094-2.
  7. ^"Ruth Esther Heafield".Wujek-Calcaterra & Sons – Tributes.com.Archivedfrom the original on December 16, 2014.RetrievedDecember 15,2014.
  8. ^"Commings, Goings and Events".The Evening News.Sault Ste Marie, Michigan.December 10, 1952.
  9. ^ab"Pioneers in Computer Science".Utah State University.Archived fromthe originalon September 17, 2016.RetrievedMay 25,2019.
  10. ^"Former Earlham Student Had Role in Moon Flight".Palladium-Item.Richmond, Indiana. August 15, 1969 – via Newspapers.com.
  11. ^abc"2009 Outstanding Alumni and Distinguished Service Awards".Earlham College.Archived fromthe originalon May 18, 2015.RetrievedDecember 15,2014.
  12. ^"The Woman Who Taught Me – Margaret Hamilton MAKERS Moment".Makers.com.Archivedfrom the original on May 25, 2019.RetrievedMay 6,2019.
  13. ^"Margaret Hamilton: The Untold Story of the Woman Who Took Us to the Moon".Futurism.July 20, 2016.Archivedfrom the original on December 20, 2016.RetrievedDecember 12,2016.
  14. ^abSokol, Joshua (May 20, 2019)."The Hidden Heroines of Chaos".Quanta Magazine.RetrievedMay 25,2019.
  15. ^Lorenz, Edward (March 1962)."The statistical prediction of solutions of dynamic equations"(PDF).Proceedings of the International Symposium on Numerical Weather Prediction in Tokyo, November 7–13, 1960.The Meteorological Society of Japan:629–635. Archived fromthe original(PDF)on May 23, 2019.RetrievedSeptember 3,2019.
  16. ^abcdeWayne, Tiffany K. (2011).American Women of Science Since 1900.ABC-CLIO.pp.480–82.ISBN978-1-59884-158-9.Archivedfrom the original on March 17, 2015.RetrievedApril 29,2016.
  17. ^Levy, Steven (1984).Hackers: Heroes of the Computer Revolution.Doubleday.pp. Chapter 5:The Midnight Computer Wiring Society.ISBN0-385-19195-2.
  18. ^abcd"About Margaret Hamilton".klabs.org.Archived fromthe originalon December 6, 2010.RetrievedMay 25,2019.
  19. ^"AGC – Conference 1: Margaret Hamilton's introduction".authors.library.caltech.edu.Archivedfrom the original on January 31, 2016.RetrievedDecember 9,2015.
  20. ^abWeinstock, Maia (August 17, 2016)."Scene at MIT: Margaret Hamilton's Apollo code".MIT News.Archivedfrom the original on August 18, 2016.RetrievedAugust 17,2016.
  21. ^"Margaret Hamilton: The Untold Story of the Woman Who Took Us to the Moon".Futurism.November 19, 2016.RetrievedFebruary 10,2025.
  22. ^Rayl, A.J.S (October 16, 2006). "NASA Engineers and Scientists-Transforming Dreams Into Reality".50th Magazine.NASA.
  23. ^abSheehan, Alan H. (November 1, 1972)."Putting 'Eagle' on course".The Boston Globe.p. 24.RetrievedJanuary 9,2024.
  24. ^Magazine, Smithsonian; George, Alice."Margaret Hamilton Led the NASA Software Team That Landed Astronauts on the Moon".Smithsonian Magazine.RetrievedMarch 5,2023.
  25. ^ab"Margaret Hamilton 2017 Fellow".Computer History Museum.Archivedfrom the original on June 29, 2017.RetrievedJune 26,2017.
  26. ^"NASA Engineers and Scientists-Transforming Dreams Into Reality".NASA.Archivedfrom the original on June 29, 2010.RetrievedJuly 29,2010.
  27. ^Hoag, David (September 1976).The History of Apollo On-board Guidance, Navigation, and Control(PDF)(Report).Charles Stark Draper Laboratory.Archived(PDF)from the original on November 5, 2016.RetrievedSeptember 10,2016.
  28. ^abcMichael BraukusNASA News"NASA Honors Apollo Engineer"ArchivedNovember 24, 2010, at theWayback Machine(September 3, 2003)
  29. ^Green, Alan (June 1967).Keyboard and Display Program and Operation(PDF)(Report). Charles Stark Draper Laboratory. p. 29.Archived(PDF)from the original on July 17, 2016.RetrievedSeptember 10,2016.
  30. ^"Moon landing memories:'Apollo 11 changed civilisation and I had a part in it'".The Times of London.July 15, 2019.
  31. ^Whittell, Giles (July 13, 2004)."First Woman".Tortoise Media.Archived fromthe originalon November 1, 2020.RetrievedAugust 23,2019.
  32. ^Wills, Robert (October 26, 2019)."Light-years ahead".Archivedfrom the original on December 21, 2021 – via The National Museum of Computing.
  33. ^abEyles, Don."Tales from the Lunar Module Guidance Computer".27th Annual Guidance and Control Conference of the American Astronautical Society.Archivedfrom the original on July 20, 2016.RetrievedJuly 22,2016– via DonEyles.com.
  34. ^Blair-Smith, Hugh (November 7, 2011). "System integration issues in Apollo 11".IEEE Aerospace and Electronic Systems Magazine.26(11):16–24.doi:10.1109/MAES.2011.6065654.S2CID13420135.
  35. ^abHamilton, Margaret; Hackler, William (December 12, 2008). "Universal Systems Language: Lessons Learned from Apollo".IEEE Computer.41(12):34–43.doi:10.1109/MC.2008.541.ISSN1558-0814.S2CID15870726.
  36. ^Collins, Michael;Aldrin, Edwin E. Jr.(1975)."A Yellow Caution Light".InCortright, Edgar M(ed.).Apollo Expeditions to the Moon.Washington, D.C.: NASA.OCLC1623434.NASA SP-350.Archivedfrom the original on February 19, 2008.RetrievedJune 13,2013.Chapter 11.4.
  37. ^Hayes, Brian (May–June 2019)."Moonshot Computing".American Scientist.
  38. ^Mindell, David A. (2011).Digital Apollo.MIT Press.p. 149.
  39. ^abSnyder, Lawrence and Henry, Ray Laura, "Fluency7 with Information Technology", Pearson,ISBN0-13-444872-3
  40. ^Hamilton, Margaret (July 17, 2009)."Recalling the 'Giant Leap'".MIT News.Archivedfrom the original on September 15, 2016.RetrievedSeptember 8,2016.
  41. ^Lickly, Dan (July 17, 2009)."Recalling the 'Giant Leap'".MIT News.Archivedfrom the original on September 15, 2016.RetrievedSeptember 8,2016.
  42. ^Hamilton, Margaret H. (March 1, 1971)."Computer Got Loaded, letter to the editor of Datamation".Datamation(Letter).ISSN0011-6963.Archived fromthe originalon December 3, 2019.
  43. ^Roberts, Edward B. (1991).Entrepreneurs in High Technology: Lessons from MIT and Beyond.Oxford University Press. pp.41.ISBN9780199762903.
  44. ^ab"AGC Biography – Margaret Hamilton".authors.library.caltech.edu.The Dibner Institute for the History of Science and Technology. May 9, 2002.Archivedfrom the original on July 25, 2011.RetrievedJuly 26,2019.
  45. ^Huber, Hartmut (August 1987).Higher Order Software – Evaluation and Critique(PDF)(Report). Naval Surface Warfare Center. pp.2–1.Archived(PDF)from the original on May 7, 2016.RetrievedJuly 22,2016.
  46. ^M. Hamilton, S. Zeldin (1976) "Higher order software—A methodology for defining software"IEEE Transactions on Software Engineering,vol. SE-2, no. 1, Mar. 1976.
  47. ^Thompson, Arthur A.; Strickland, A. J., (1996), "Strategic Management: Concepts and Cases",McGraw-Hill Companies,ISBN0-256-16205-0
  48. ^Rowena Barrett (June 1, 2004).Management, Labour Process and Software Development: Reality Bites.Routledge.p. 42.ISBN978-1-134-36117-5.Archivedfrom the original on March 17, 2015.RetrievedApril 29,2016.
  49. ^Hamilton, Margaret; Zeldin, Saydean (1974). "Higher order software techniques applied to a space shuttle prototype program". In Robinet, B. (ed.).Programming Symposium.Lecture Notes in Computer Science. Vol. 19. Springer Berlin Heidelberg. pp.17–32.doi:10.1007/3-540-06859-7_121.ISBN978-3-540-37819-8.
  50. ^Cohen, B. (1986).The Specification of Complex Systems.Addison-Wesley.ISBN0-201-14400-X.
  51. ^Paul, Lois (October 11, 1982)."Federal User Offers Free CAD/CAM Software".Computerworld.16(41): 9 – viaGoogle Books.
  52. ^Harel, David (January 1980)."And/Or Programs: A New Approach to Structured Programming"(PDF).ACM Transactions on Programming Languages and Systems.2(1). ACM:1–17.doi:10.1145/357084.357085.ISSN0164-0925.S2CID966526.Archived(PDF)from the original on August 18, 2019.RetrievedOctober 14,2016– viaWeizmann Institute of Science.
  53. ^ Cushing, Steven (1983).Abstract Control Structures and the Semantics of Quantifiers.EACL.Pisa, Italy.doi:10.3115/980092.980093.S2CID10821594.
  54. ^Holland, Michael (June 1, 1997). A Constrained Interface Refinement Method for Embedded System Design (Report). Department of Computing, Macquarie University.CiteSeerX10.1.1.37.7895.
  55. ^Krut, Robert W. (July 1993)."Overview of Hamilton Technologies, Inc. (HTI) 001"(PDF).Integrating 001 Tool Support in Feature-Oriented Domain Analysis Methodology.Software Engineering Institute of Carnegie Mellon University. pp.13–15.Archived(PDF)from the original on July 5, 2019.RetrievedMay 26,2019– via Defense Technical Information Center.
  56. ^Ouyang, Meng; Golay, Michael W. (September 1995). An Integrated Formal Approach for Developing High Quality Software for Safety-Critical Systems (Report). Massachusetts Institute of Technology.hdl:1721.1/67642.MIT-ANP-TR-035.
  57. ^"What to Know About the Scientist who Invented the Term" Software Engineering "".ComputingEdge.October 5, 2018.Archivedfrom the original on November 24, 2018.RetrievedFebruary 12,2019.
  58. ^ab"ICSE 2018 – Plenary Sessions – Margaret Hamilton".YouTube.ICSE 2018. May 31, 2018.Archivedfrom the original on June 3, 2018.RetrievedJune 9,2018.
  59. ^Rayl, A.J.S. (October 16, 2008)."NASA Engineers and Scientists – Transforming Dreams Into Reality".50th Magazine.NASA.Archived fromthe originalon June 29, 2010.RetrievedNovember 25,2016.
  60. ^Johnson, Jordan (2017).Sputnik and the Space Race.Cavendish Square. p. 60.ISBN9781502627223.With her colleagues, she developed the building blocks for modern 'software engineering,' a term Hamilton coined.
  61. ^Rayl, A.J.S. (October 16, 2008)."NASA Engineers and Scientists-Transforming Dreams Into Reality".50th Magazine.NASA.Archivedfrom the original on December 23, 2014.RetrievedDecember 27,2014.
  62. ^"Makers:Margaret Hamilton Videos".Makers.com.Archivedfrom the original on September 5, 2017.RetrievedSeptember 5,2017.
  63. ^"Margaret Hamilton: 2017 Fellow Biography".Computer History Museum.Archivedfrom the original on February 12, 2019.RetrievedFebruary 11,2019.
  64. ^Verne (December 25, 2014)."Margaret Hamilton, the Engineer Who Took the Apollo to the Moon".Medium.Archivedfrom the original on April 13, 2016.RetrievedApril 29,2016.
  65. ^Erdogmus, Hakan; Medvidovic, Nenad; Paulisch, Frances (September–October 2018)."50 Years of Software Engineering".IEEE Software.35(5):20–24.doi:10.1109/MS.2018.3571240.ISSN0740-7459.
  66. ^Hamilton, Margaret H. (2018)."What the Errors Tell Us".IEEE Software.35(5):32–37.doi:10.1109/MS.2018.290110447.ISSN0740-7459.S2CID52896962.
  67. ^"Margaret Hamilton".CHM.May 29, 2024.RetrievedJune 4,2024.
  68. ^"Margaret Hamilton".CHM.May 29, 2024.RetrievedJune 5,2024.
  69. ^McMillan, Robert (October 13, 2015)."Her code got humans on the moon – and invented software itself".Wired.Archivedfrom the original on October 23, 2015.RetrievedOctober 20,2015.
  70. ^"Software — and a Woman — at the Heart of Lunar Triumph".WIRED.August 21, 2014.Archivedfrom the original on May 5, 2016.RetrievedApril 29,2016.
  71. ^Luke Kingma."The Women Who Put Men on the Moon".Futurism.Archivedfrom the original on July 23, 2016.RetrievedJuly 20,2016.
  72. ^Mosher, Dave (June 22, 2017)."Lego's 'Women of NASA' toy set is finally on sale — and it's already Amazon's best-selling toy".Business Insider.Archivedfrom the original on November 7, 2017.RetrievedNovember 3,2017.
  73. ^Berger, Eric (October 18, 2017)."A new LEGO set honors the women of NASA—and it looks pretty awesome".Ars Technica.US.
  74. ^"A moonlit tribute to a moon landing icon".Google.July 18, 2019.RetrievedDecember 31,2019.
  75. ^Guinnessy, Paul (November 20, 2019)."Review: For All Mankind rewrites history with a prolonged space race".Physics Today.RetrievedDecember 1,2023.
  76. ^"Ada Lovelace Awards".Association for Women in Computing.Archivedfrom the original on April 14, 2016.
  77. ^"NASA Honors Apollo Engineer".NASA News(Press release). September 3, 2003.Archivedfrom the original on December 26, 2017.'The Apollo flight software Ms. Hamilton and her team developed was truly a pioneering effort,' said NASA Administrator Sean O'Keefe. 'The concepts she and her team created became the building blocks for modern "software engineering." It's an honor to recognize Ms. Hamilton for her extraordinary contributions to NASA,' he said.
  78. ^"Honour for software writer on Apollo moon mission".BBC News.November 23, 2016.Archivedfrom the original on November 24, 2016.RetrievedNovember 23,2016.
  79. ^"White House honors two of tech's female pioneers".CBS News.November 23, 2016.Archivedfrom the original on April 27, 2017.RetrievedJune 7,2017.
  80. ^Almeida, Andres (November 22, 2016)."Margaret Hamilton Awarded Presidential Medal of Freedom".NASA.RetrievedJuly 26,2022.
  81. ^"The 2017 Fellow Award Acceptance Speech".Computer History Museum.August 4, 2017.Archivedfrom the original on December 21, 2021.
  82. ^"Investiture of scientist Margaret Hamilton as an honorary doctor of the UPC".Polytechnic University of Catalonia.October 18, 2018.Archivedfrom the original on January 26, 2019.RetrievedJanuary 25,2019.
  83. ^"Margaret Hamilton Accepts 2019 Washington Award Nomination".Western Society of Engineers. February 22, 2019.
  84. ^"Bard College - 2019 Honorary Degree Recipients".Bard Annandale Online.Bard College. May 21, 2019.
  85. ^"Salute to Freedom Gala".Intrepid Museum. May 23, 2019. Archived fromthe originalon September 24, 2019.RetrievedSeptember 24,2019.
  86. ^"Enshrinee Margaret Hamilton".nationalaviation.org.National Aviation Hall of Fame.RetrievedFebruary 8,2023.
  87. ^Onwuamaegbu, Natachi (July 20, 2019)."Margaret Hamilton's sister shares her memories as Seattle's seniors celebrate the 50th anniversary of the moon landing".The Seattle Times.RetrievedAugust 10,2019.
  88. ^abcStickgold, Emma (August 31, 2014)."James Cox Hamilton, at 77; lawyer was quiet warrior for First Amendment".Boston Globe.Archivedfrom the original on December 16, 2014.RetrievedDecember 15,2014.
  89. ^ab"Wed In Earlham Meetinghouse Rite".Palladium-Item.Richmond, Indiana. July 2, 1958.RetrievedAugust 10,2019.
  90. ^Sheehan, Alan H. (November 1, 1972)."PuttingEagleon course ".The Boston Globe.Boston, Massachusetts.RetrievedSeptember 22,2019.

Further reading

edit
  • Steafel, Eleanor (July 20, 2019). "One woman in a room full of men".The Telegraph Magazine.London: Daily Telegraph plc. pp.56–59, 61.OCLC69022829.
edit