I like this video of Admiral Grace Hopper talking about processing speeds. She illustrates it with her famous "nanoseconds" - pieces of wire that a electricity would travel in a nanosecond.
What a great role model, for programmers, for women, but also for anyone working in a bureaucratic system.
One of her famous quotes is "It's easier to ask forgiveness than it is to get permission". It became a classic. Python's programming paradigm, for example, which prefers exceptions instead of condition checks is named that.
"Computer bugs" phrase also seem to originate with her.
Also based on Wikipedia she also was the oldest serving officer in the United States Navy.
> Here's a microsecond. Nine hundred and eighty-four feet. I sometimes think we ought to hang one over every programmer's desk, or around their neck, so they know what they're throwing away when they throw away microseconds.
> An admiral wanted to know why it took so damn long to send a message via satellite, and I had to point out that between here and the satellite there were a very large number of nanoseconds.
In the video, she's very charismatic and dignified, using humor as appropriate, with a firm focus on the subject.
Hamilton had possibly the most exciting and demanding job ever in computer science and engineering. It must have been so much fun. About as full stack as it gets.
Bletchley Park and the Manhattan project were great computing projects too, but Apollo is my favorite since they had such a tiny mass and power budget, real time constraints and the runtime consequences were so personal. Damn that was a great project.
Hopper was a giant of course. But Hamilton is less well known and I've been a fan since my youth.
I actually get choked up watching the appropriate episode of "Moon Machines", the one that covers the MIT team. That project was an 0xCF. But it worked.
I was 9 when the moon lander landed, but I was still old enough to feel the Sputnik emphasis in tech. I grew up with that program. It was the era of EE programs with 50% washout rates.
We would go to Huntsville, Houston or Cape Kennedy on vacation. It was just like that then.
I don't know how anybody could have survived the first real test of a system like that being on national TV. That's the stuff of nervous breakdowns.
Ad then by '74 we killed it because nobody knew any economics back then. Or maybe because they did.
I want a Mad Men style show about the Apollo program. Oh, why not? Why not?
> Ad then by '74 we killed it because nobody knew any economics back then. Or maybe because they did.
Probably the latter. By the time Apollo astronauts landed on the Moon, von Braun and friends were sketching plans for a Mars mission, and pushing for development of nuclear propulsion. According to Wikipedia[0], US Congress saw that and decided to kill the space race, out of fear it will expand beyond the Moon, and consume resources needed elsewhere (like for the arms race).
'Apollo', Charles Murray and Catherine Cox [0] is a terrific book about the engineering and project management of the Apollo program. They don't talk about the software much (if anyone has a suggestion, I'd like to hear it), but there are a ton of great back stories about the technology, planning, and management of the program that led to July 20, 1969.
Oh yeah. It had to be awesome to have so much freedom, responsibility, talent, and ability to explore new things. She said about as much in the Lessons from Apollo paper here [which is actually about her systems language]:
"Apollo was the ideal environment for jump starting a "never-in-the-box" technology. There was no school to attend or field to learn what today is known as "software engineering." When there were no answers to be found, at time we just had to make it up, and we had to design things to work the first time."
It's hard to look at the list of Medal of Freedom awardees and conclude this list is strictly meritocratic (these two individuals are exceptions who absolutely deserve it). There were people nominated, e.g. Jack Bogle, who have made a much more significant impact on Americans' lives than people like Robert De Niro, Tom Hanks, and Frank Gehry. Even Lorne Michaels won one!
But the guy who gave up potentially billions of dollars to help the average American investor get a fair shake hasn't had enough of an impact...
Obama said: "From scientists, philanthropists, and public servants to activists, athletes, and artists, these 21 individuals have helped push America forward, inspiring millions of people around the world along the way."
I'm glad that the award values contributions from creatives whose works and organizations have influenced entire industries and the masses.
>I'm glad that the award values contributions from creatives whose works and organizations have influenced entire industries and the masses.
I don't disagree with that sentiment, but I do disagree that the award sold to the public as the highest public honor a civilian can receive has been awarded disproportionately to artists, politicians and athletes.
There are more musicians alone who have received the award than all scientists combined. More movie stars than human rights activists, more athletes than any of: philanthropists, doctors, or environmentalists.
The award is also awarded not without political consideration. Aside from very obvious examples of those who should have received it, some won't for purely political reasons. Journalists like Glenn Greenwald and Amy Goodman deserve the award, as two examples, but their work is by its nature critical of both parties who have been in power, and so neither one would award it to them.
It should be pointed out, just for balance, that Margaret Hamilton was appointed to be the head of MIT's Apollo software team long after the software was frozen; she was still a junior programmer on the project when the command module software was frozen in the 1966-67 timeframe (she became the head of the command module software development after that), and she became the head of the overall software program sometime in 1969 after the software was complete, and key people (such as Dick Battin) moved on to other things. Obviously it is still a major accomplishment to be responsible for release engineering and integration for something this mission critical, but in the media, I often see references to Margaret Hamilton somehow having "written" or "designed" or "lead the team" which made the Apollo software, which is just false.
What are you balancing by pointing out that she was a junior programmer who relied on the real key people? Are there incorrect references to her achievements in this comment thread or in the article?
Yes, the article states that "Apollo 11 ran her software", which I consider to be a false statement; and many other articles explicitly give her credit for designing or writing the Apollo software. I think writers make that mistake in good faith, since they don't know the timeline of development. And it's not so much that she "relied on the real key people" - she was not a major figure of the development phase of the Apollo software, and certainly did not lead it; Richard Battin and Dan Lickly led the development, and the latter handed the leadership of the software effort over to her as he left the project - but this was after the development itself was over.
I am not at all trying to minimize her accomplishments, which included being responsible for the software work, such as release, integration, and debugging during most of the actual flights. However, a lot of people, basically just because of lack of knowledge, give her credit for leading the development or writing of the software as well, which is incorrect.
NASA[0][3] and MIT[1][2] both agree that Apollo 11 ran her software (where "her software" means "software she and her team wrote", not "software she wrote entirely on her own"). The TechCrunch article echoes them, and I haven't seen anything in the article or this thread suggesting she did everything single-handedly.
Well, if you wanted to find examples of misinformation that needs to be corrected, you've certainly succeeded, since several of these press releases make the mistaken syllogism "Margaret Hamilton led the software team" & "the software team developed the software" -> "Margaret Hamilton led the development of the software". But this is false because of the timing - Hamilton did not lead the team while the team was developing the software.
And the statement from the last link:
"At the start of the Apollo program, the onboard flight software needed to land on the moon didn’t exist. Computer science wasn’t in any college curriculum. NASA turned to mathematician Margaret Hamilton, of the Massachusetts Institute of Technology, to pioneer and direct the effort."
... is just jaw-dropping in how false it is. That simply didn't happen. NASA couldn't have possibly been aware of Margaret Hamilton at the time they decided to rely on MIT for Apollo guidance; she didn't join the project until several years later, and in a small role.
Cool. I'm going to go with NASA, MIT, Wired[0], and the Charles Stark Draper Laboratory History of Apollo On-Board Guidance, Navigation, and Control[1] as my sources of information on this one.
This argument probably should be settled by primary documents like contemporary Apollo org charts and development milestone reports rather than modern press releases.
I can do one better; the source code itself, which has been scanned (https://github.com/chrislgarry/Apollo-11), lists Margaret Hamilton as "COLOSSUS programming leader" - COLOSSUS being the command module software - as of March 28, 1969, reporting to Dan Lickly - Director of Mission Program Development, i.e. in charge of software development at this point, and Richard Battin - Director of Mission Development, who was basically the technical lead of the AGC project at that point. There are also some other senior scientists on the approver list, but those two are the senior software leaders. So Margaret Hamilton was not in charge of the software development team as of March 1969 (she was still in charge of the COLOSSUS module), and in fact not until Dan Lickly left the project, which I think happened around the Apollo 11 flight.
It should be needless to point out that the AGC software was complete and frozen at this point, although bug fixes and some minor features made it in.
This doesn't stop misinformation from appearing all over the place, e.g. Wikipedia says "Details of these programs [LUMINARY and COLOSSUS] were implemented by a team under the direction of Margaret Hamilton", but this is false, as we've seen - LUMINARY, the moon landing software, was frozen while Hamilton was still on the COLOSSUS project. Also, if you root around the history of COLOSSUS itself - which I did at some point - you'll see that Margaret Hamilton became its programming leader in 1968, after COLOSSUS was complete.
"Names notable here are Dr James Miller for the first lunar program SUNBURST, Dr Frederic Martin for the Command Module program COLOSSUS, and George Cherry for the Lunar Module program LUMINARY. These last two were the programs used for the lunar landing missions... [next paragraph] Much of the detailed code of these programs was written by a team of specialists led by Margaret Hamilton. The task assignments to these individuals included, in addition to writing the code, the testing to certify the programming element met requirements."
Goes on to say they had to be error free and were. That was what the NASA press releases and other writings on her team said was essentially their specialty. Consistent so far with claims about her if that author got the right information from the right people. It's hard to say without talking to him about where those claims came from. I do note he's writing on behalf of the laboratory named after one of them (Draper) citing that guy's work along with other solid-looking references. Edit to add that I just noticed his name in the Apollo code you submitted. He apparently was on the team, too. Now I consider his write-up authorative.
Sure. Quoting from the History of Apollo On-Board Guidance, Navigation, and Control (David G. Hoag, 1976):
"Each of these later [complex manned] missions was assigned the responsibility of a senior engineer who assumed a more technical management role for the program....Names notable here are Dr. James Miller for the first Lunar Module program SUNBURST, Dr. Frederic Martin for the Command Module program COLOSSUS, and George Cherry for the Lunar Module program LUMINARY. These last two were the programs used for the lunar landing missions....
"Much of the detailed code of these programs was written by a team of specialists led by Margaret Hamilton. The tasks assignments to these individuals included, in addition to writing the code, the testing to certify that the program element met requirements."
The distance from the that statement to "NASA turned to mathematician Margaret Hamilton, of the Massachusetts Institute of Technology, to pioneer and direct the effort" is greater than from the Earth to the Moon. The fact that Margaret Hamilton wrote code for the AGC, and led programmers who wrote code for the AGC, is not in question. However, she reported to, and worked under the direction of, several people who were in charge of developing these programs, among whom David Hoag correctly mentions Frederic Martin, George Cherry, and Dan Lickly. Her period of being the head of program development started after the software was complete.
I'm getting confused at this point. I thought you were claiming she didn't contribute to the software because you said she showed up after it was frozen. Now, you say:
"The fact that Margaret Hamilton wrote code for the AGC, and led programmers who wrote code for the AGC, is not in question. "
It at least appears contradictory. In any case, you said she didn't contribute to Apollo software, specific ones were frozen, etc. What are your primary sources on those claims so I can review them?
I didn't say she did not contribute to the software. I said that she was in charge of program development after the software was frozen, not that she showed up after it was frozen. And minor (but important, since the software was so fragile and critical) changes were still being made after the freeze.
Confirmation that she was still not program development director as of March 28, 1969 (which was only a few months before the Apollo 11 flight, with the software in pretty deep freeze) can be found in the header of the listing of said software.
That code doesn't prove what you say it proves. That's one snap-shot in time where what you say applies at that moment. There's no telling what happened before or after it by just reading the document. It also doesn't account for the fact that her team worked on multiple modules per Hoag's write-up which just have the team leader's names in that code instead of her team's.
Got any other evidence from primary sources like the one I shared with specific timelines for specific people? I'll actually look that them as I'm willing to change my position with good data. I just tested it on how much her people contributed to the code using the Hoag reference. That got confirmed. Now I'm reassessing her leadership roles within the program.
I am not sure what it is for which you want sources. Statements such as "NASA turned to Margaret Hamilton to develop the Apollo software" are absurd; Margaret Hamilton describes being hired onto the project around 1963-1964 rather than resuming her studies at Brandeis; here's one link: http://futurism.com/margaret-hamilton-the-untold-story-of-th.... The AGC project was well under way; which is why people were being hired to join it. Her job was in the COLOSSUS group; she describes herself thus (http://authors.library.caltech.edu/5456/1/hrst.mit.edu/hrs/a...):
"Then, because I was still a beginner, I was assigned responsibility for what was thought to be the least important software to be developed for the next mission. I was the most of the beginners; I mean, I was the first junior person, on this next unmanned mission."
I think it's fair to say she was not "in charge" of things for a while. She was gradually given more responsibility and eventually became the director of COLOSSUS development; Dan Lickly gave her that job. This couldn't have happened until close to the end of COLOSSUS development (it was frozen at the end of 1966, she was "a beginner" in 1964), and I think it was actually after the freeze. She still held the job of COLOSSUS lead programmer in March 1969. She did not become head of program development until Dan Lickly left; which is exactly what she says. This happened after the Apollo 11 flight. Software development was largely complete. So she was not in charge of the team that developed the AGC software while that happened. OK?
I am not saying "she did not contribute" or anything else. I don't know where you got that from what I wrote.
I've noticed that Grace Hopper and sometimes Ada Lovelace are the only women in computing people ever talk about. I'm glad I got to know about Margaret Hamilton, but this is the first time I've heard of her at all.
There's so many awards, events, and groups named after Hopper or Lovelace that you'd think they're the only two women in computing :/
Radia Perlman deserves more credit than she gets. She invented the Spanning Tree Protocol at DEC. Also Elizabeth Rather, co-inventor of the Forth language.
-- ACM Turing Award, "For contributions to practical and theoretical foundations of programming language and system design, especially related to data abstraction, fault tolerance, and distributed computing"
-- IEEE John von Neumann Award, “For fundamental contributions to programming languages, programming methodology, and distributed systems.”
It actually ticked me off when I found out about her that she and her team did so much with basically no recognition. Here's two nice resources on her. One has a picture of her standing next to the code they did in assembly on hand-made memory that worked the first time in worst environment imaginable. Last is the site with her tool she built to try to eliminate all software errors at spec level.
Back when real programmers where women. I don't think it is nostalgia to say that we need more programmers like these women. They make an excellent case for a more diverse technology workforce.
It's interesting. I was having a conversation about this on Facebook and looked at Wiki's "Timeline of Programming Languages"[1]. It really struck me that a lot of the pioneers in the 1940s and early 1950s had names like "Grace" and "Betty" and "Kathleen", but then in the late 1950s all the female names except "Grace" disappear. I wonder if that had to do with the fact that she was in the military and the other women were in the private sector?
It probably has more to do with millions of male soldiers reentering the workforce around that time. The idea of "gender roles" still had a grip on society and women were forced out of their wartime careers across the country. The only reason they had a chance to take on all these previously male dominated fields was because sixteen million Americans had to leave the workforce to fight a total war.
The GI bills provided a ton of financial assistance to WWII veterans seeking a college education, which explains why women had a little more time in advanced fields like computer science. Due to cultural mores the wartime trained women were bound to be replaced by men, especially in the armed forces, it just took a while after the war to educate the soldiers.
We will take anyone as long as their IQ and capabilities are off the scale (as the two ladies in question) probably won't result in the kind of diversity that the diversity people would appreciate. They (diversity advocates) have been fighting against the SV meritocracy in the last couple of years.
IQ isn't an inherent or even a constant quality. It is a function of many factors. I agree that Hamilton and Hopper are exceptional and extraordinary but they also worked in exceptional and extraordinary circumstances.
Why wouldn't taking anyone intelligent and capable result in more diversity? Are you claiming white males are somehow inherently more capable and intelligent?
The people that are couple of sigmas more talented than the average are unique enough. They are category of their own. So using them as pro-diversity argument is just not working. Because any person with the Turing's level of talent is already employed, no matter what other identities may posses. Brilliance overrides everything else.
The problem is that outside the likes of Srinivasa Ramanujan people need a hell lot of education to become the best. And unlike innate talent education is not equally distributed in society.
So, improve equality of access to education. We already have multiple top computer science programs publishing their courses online for all for free.
So, lower the barrier to getting started and learning from hands on experience. Github and other sites host code, discussions, and documentation for more projects than a lifetime of hacking could touch. No one knows who you are behind a handle.
You seem like one of those people who thinks that quotas will magically improve companies, diversity, and people's lives. You are falling victim to the soft bigotry of reduced expectations. This isn't fair, particularly to the groups in question.
I am staunchly against quotas and affirmative action. And supporter of pure merit hiring - not even culture fit. Just expertise. This does not mean that this approach did not yield something that the current crop of diversity thinkers strongly dislikes.
Question: Did u knew that there will be downvotes, but post-it anyway? Or you didn't expect the downvotes? I'm asking because I'm curious about the impact of the "politically correct" culture and its effects.
With HN lately it is a coin toss whether a statement will be downvoted or upvoted when talking about diversity. It seems that there is split - depends on who is awake what the reaction will be.
Anyway - I never did or intend to do karma whoring. While I tend to rarely post pure troll statements, I do hold views that can be controversial. So when I have something to say I say it.
Why should you worry about imaginary Internet points? If your opinion can stand in it's own no matter how controversial, post it.
Being civil isn't being "politically incorrect" online or offline. If you say something that might get you punched in the face (literally or metaphorically), don't be surprised when you do get punched in the face.
somebody else punching you in the face does not means your comment is uncivil. I'm guessing, but two centuries ago you could be punched in the face for opposing slavery.
You cannot measure and argument by how offended others get when they contemplate it.
> somebody else punching you in the face does not means your comment is uncivil
I never made this argument - you seem to have skipped my first paragraph entirely. I'm all for sharing controversial opinions that have merit and in a manner that is not dickish.
Grace Murray Hopper Memorial Park is right next to my apartment complex (we're across I-395 from the Pentagon and apparently she lived here when she retired because they kept calling her back in for consults). Somebody left some flowers there yesterday; not sure if it was because of this or something unrelated, but I thought it was nice.
I was at a conference recently when someone said that Hamilton invented multi threading. Is that true? Does anyone know if that's what the prioritisation of critical systems this article talks about was?
I think she co-invented it. Several people independently invented some important stuff around the same time. Bob Barton in late 50's for all kinds of things, Hamilton in Apollo, and Dijkstra. They were figuring it out around the same time. Hamilton outdid Dijkstra by doing that, asynchronous execution, real-time, fault detection, recovery system, and putting it into production.
Whether or not Ms. Hamilton invented multithreading, she definitely figured out how to handle thread priorities well enough to get the lander on the moon.
> Not sure how I ended up with male surnames and female first names, but there you go.
A common but subtle sort of sexism in our society, I suspect. I noticed a lot of people talking about Hillary and Trump during the election. Whenever I saw that, I tried to counter with Donald and Clinton, but despite that, I fear I wrote about Hillary and Trump more often than about Donald and Clinton.
"Charles, Alan and Maurice" are not particularly stand-out names in a field of men. You could use "Lovelace, Hopper and Hamilton" to be more balanced, perhaps.
Dijkstra should probably be in there somewhere. He was one of first to structure systems in such a way they could be made correct the first time. Did that in the "THE" system. Plus adding to formal methods.
https://www.youtube.com/watch?v=JEpsKnWZrJ8
What a great role model, for programmers, for women, but also for anyone working in a bureaucratic system.
One of her famous quotes is "It's easier to ask forgiveness than it is to get permission". It became a classic. Python's programming paradigm, for example, which prefers exceptions instead of condition checks is named that.
"Computer bugs" phrase also seem to originate with her.
Also based on Wikipedia she also was the oldest serving officer in the United States Navy.