There were quite a few grandiose tributes to the 50th anniversary of the moon landing throughout the United States last year. But for sheer staggering scale, it’d be hard to top Google’s tribute to the woman whose code made Apollo 11 possible: Margaret Hamilton. Google’s salute to Hamilton, a moonlit portrait made out of over 100,000 solar mirrors strategically planted in the Mojave Desert, visible from several thousand feet in the air, covered considerably more terrain than New York City’s Central Park.
It was, all told, a visually stunning gesture, made in the name of a pioneer who genuinely revolutionized tech. And frankly, I wish Google hadn’t made it.
Hamilton certainly deserves every bit of adulation the world can direct her way, and more. But the moon-landing tribute was little more than a clever PR move for Google—one that unfortunately obscured the fact that Hamilton’s entire career has been devoted to a vision of computer science that social tech giants like Google, Facebook, Amazon, and Apple have willfully ignored and repeatedly violated.
As the founder and president of Pivot for Humanity, an organization working to professionalize the tech giants, and as a feminist woman of color working in tech, I spend the majority of my time thinking about the ways tech giants have squandered the legacy of trailblazers like Hamilton. Google, and the broader forces in tech it represents, would better honor Hamilton by following her philosophy of how software should be built.
Hamilton didn’t just put men on the moon. She is responsible for the modern conception of software and software engineering itself. A substantial share of our digital lives, along with every endeavor that considers software engineering a key part of its makeup—including Google itself—owes its existence to Hamilton and her vision that software should be built thoughtfully and with careful attention to the broader impact it can have on society.
The meaning behind “software engineering”
Hamilton is famous for coining the term “software engineering,” but what often gets obscured in that one-sentence origin story is why she started using that term.
At the time Hamilton started referring to her software development process as a kind of “engineering,” engineering itself was on the tail end of its own century-long internal revolution: a process that industrial sociologists call “professionalization,” in which a trade or vocation becomes a profession with universal enforceable standards and norms. Meanwhile, the prevailing conventional wisdom at the time favored an experimental, software-as-art approach to software development. This meant developers were provided no structure or instructions other than “faster!” as they engaged in what upper management believed to be a magical and mysterious process—running directly counter to engineering, with its associated norms and standards.
By framing software development as requiring the rigor and discipline associated with engineering, Hamilton was doing her best to protect her team’s coding from a “fail fast” approach encouraged by management at NASA. The desire to cut corners in the interest of speed devalued Hamilton’s more time-intensive and safety-minded efforts. (It was also the same approach that would later be tragically adopted by Silicon Valley and startup culture in the intervening years, but more on that later.)
Engineering—back in 1969 as well as here in 2020—carries a whole set of associated values with it, and one of the most important is the necessity of proofing for disaster before human usage. You don’t “fail fast” when building a bridge: You ensure the bridge works first.
Hamilton’s software development process, with its watchword of caution, was in line with that ethos. “Everything that could go wrong will try hard to do so,” was the guiding credo—so we better find out as quick as we can everything that could go wrong before anyone uses the software.
Refusing to follow a “move fast” model put Hamilton directly in conflict with NASA itself. In one famous instance, when Hamilton pointed out a potential software error triggered by an errant button-push that could strand Apollo 11 astronauts on the moon, the initial response within NASA was aggrieved disbelief: Astronauts are some of the best-trained people in the world; of course they won’t trigger the error by hitting the wrong button! But that’s exactly what they did on the Apollo 11 mission—and Neil Armstrong, Buzz Aldrin, and Michael Collins only avoided being stranded on the moon (or killed immediately on impact) by Hamilton winning that argument before they took off.
Hamilton’s unfinished legacy
Hamilton’s process for building software was so thorough that not a single software bug is known to have taken place during any Apollo mission with crew onboard. That was Hamilton’s vision for software engineering. And it’s exactly the opposite of the direction the tech sector has taken since—something Hamilton makes explicit in a 2018 speech at the International Conference on Software Engineering: “Today’s traditional system engineering and software development environments support their users in ‘fixing wrong things up’ rather than in doing them right in the first place,” Hamilton laments. “Things happen too late, if at all. Systems are of diminished quality and an unthinkable amount of dollars is wasted.”
There’s a phrase for the kind of process Hamilton is bemoaning: “Move fast, and break things,” Zuckerberg’s once hailed motto for a Silicon Valley enamored with disruption for its own sake, that prioritizes growth and speed over all other concerns, and that doesn’t care for caution or rules or process or systems thinking.
Hamilton’s vision for tech is radically different than the current Wild West approach where private actors, unbound by the constraints of standards and professionalized norms, shoot first and ask questions later. Software engineering was built in the crucible of a mission that could not implode, serving as an instructive contrast to the “fail fast” approach that most self-described software engineers now work within.
Toward “move slow and fix things”
Roughly a year before Google held its tribute to Hamilton, the Pew Research Center conducted a wide-ranging survey of public attitudes towards the major tech giants. They found that 72% of Americans stated that they believed the tech companies could be trusted to do the right thing either only “some of the time,” or “hardly ever.”
It’s clear the industry needs a new North Star to replace the default “move fast and break things” pushed by Zuckerberg at the start of the last decade, which moved so fast and broke so much: our respect for privacy, our sense of community, the safety of our children, even the rule of law.
The industry needs a unifying vision that all technologists can commit to, be held accountable to, and take pride in. Silicon Valley should adopt a new set of norms and values so that software engineers can refocus their efforts on building products that are effective, productive, and transformative rather than acting nonchalantly about the potentially devastating impact of their creations on our mental health, our democracy, and our society.
By emulating engineering, a field that had already undergone professionalization, Hamilton was nobly setting a path for a vision of tech where we recognize there are real stakes for failure.
With the last 50 years as a cautionary tale, let’s reintroduce the discipline of engineering to the current free-for-all that is software development. That would be a fitting tribute to Hamilton: to practice caution every day, with every new product or feature or idea; to consider the consequences of every decision; to build beautiful, rewarding, and generative experiences that move humanity forward, thoughtfully and with integrity.
You want to honor Margaret Hamilton? Don’t just reflect her visage from space. Foster her ethos, adopt her standards, subscribe to the culture she imagined, and encourage everyone who calls themselves an engineer to do the same.
Jumana Abu-Ghazaleh is the founder and president of Pivot for Humanity, an organization working to professionalize the social tech industry, creating a more responsible, ethical, and accountable internet.