4 ms·
The comment you point out reminds me of something Margaret Hamilton said: Also, what became apparent with Apollo – though it is not how it worked – is that it
by mmmBacon 7y ago
The comment you point out reminds me of something Margaret Hamilton said:
Also, what became apparent with Apollo – though it is not how it worked – is that it is better to define your system up front to minimise errors, rather than producing a bunch of code that then has to be corrected with patches on patches.
Source: https://www.theguardian.com/technology/2019/jul/13/margaret-hamilton-computer-scientist-interview-software-apollo-missions-1969-moon-landing-nasa-women https://www.theguardian.com/technology/2019/jul/13/margaret-...
- ghaff 7y agoSo, in other words, it is better to do waterfall development? Indeed, it sometimes probably is, and agile generally shouldn't mean you just make it up as you go along. But I think we've generally come to recognize that, at least in many cases, being more flexible and iterative. This, to be clear, is not in any way a knock on the many people who developed software for Apollo. It was a type of project and set of technologies that made it difficult to be as iterative as, certainly, pure software projects are today.
- mmmBacon 7y agoI think her comment is specifically around software that is critical for human life support. She is advocating for design in such cases. I posted it because I would consider the SW for the F-35 to be in this category. It’s worth questioning whether agile SW development that we do for websites, apps, etc... is good when human life hangs on the line.
- TheOtherHobbes 7y agoClearly, there was never going to be any way to patch the Apollo Guidance Computer in the middle of a mission. Even if that weren't true, the development cycle was so long that iterative development was never a realistic option. I suspect a project like the F-35 is a hybrid, with elements that are life-or-death mission critical and absolutely need to Just Work, and elements that allow for refinement - even refinement-by-failure in some cases. Which just underlines how complex a project like this is. A distant descendant of the Apollo Guidance Computer code is likely just one of (at least) hundreds of equivalently complex routines and features in the F-35 codebase.
- ghaff 7y agoAbsolutely. The techniques depend upon the circumstances and that's often not recognized. Or at least there's over-rotation in one direction or the other to a degree that may not be appropriate.
- jefftk 7y agoSomeone who did impressive things with method A saying they think a method B that they haven't tried is superior isn't much evidence in favor of B.