Now 50% off Gitkraken Pro

Git Blog

Releasing the Power of Git

Margaret Hamilton Coined “Software Engineering” Because Code Deserves the Same Rigor as Bridges

During International Women’s Month, we celebrate women whose technical work changed entire industries. But the lessons from engineers like Margaret Hamilton aren’t seasonal, they’re fundamental to how we should approach software development every single day. Margaret coined the term “software engineering” and built the code that landed humans on the moon. Her approach to rigor is as relevant to your next Git commit as it was to Apollo 11’s descent engine. This week, we honor her. Every week, we should learn from her.

In 1969, Margaret Hamilton’s code landed humans on the moon. More specifically, it prevented a catastrophic abort just 3 minutes before touchdown.

While Neil Armstrong piloted the lunar module, alarms screamed. The computer was overloaded. Mission control debated aborting. But Margaret’s software did exactly what she designed it to do: prioritize critical tasks, shed non-essential processes, and keep the landing on track.

They landed safely. Not because of luck. Because Margaret Hamilton engineered her code the way civil engineers build bridges.

Her philosophy: software that controls life-or-death systems should be treated with life-or-death seriousness.

She coined the term “software engineering” to make a point: code isn’t just typing. It’s a discipline that requires rigor, testing, and architectural precision.

If that sounds like overkill for your Git workflow, consider this: when your deployment process is fragile, every production push feels life-or-death. Margaret understood that better systems remove that anxiety.

The Problem Margaret Solved: Software as Afterthought

In the 1960s, “programming” was considered secretarial work. Definitely not engineering. Hardware engineers designed spacecraft. Programmers just made the computer do what they wanted.

Margaret saw the fatal flaw: as systems grow complex, software becomes the critical dependency, not the afterthought.

Apollo’s flight computer had 64KB of memory. Not gigabytes. Kilobytes. One poorly written routine could consume resources needed for navigation. One unhandled edge case could abort the mission.

Margaret didn’t write code. She architected systems.

Her approach:

  • Exhaustive testing (simulating every possible failure mode)
  • Asynchronous priority scheduling (critical tasks always run first)
  • Error detection and recovery (assume things will go wrong)
  • Human-readable documentation (other engineers must understand the logic)

The result? Code so reliable that it caught an error the astronauts made, prevented a catastrophic abort, and landed the lunar module safely—despite multiple system alarms.

The lesson: When the stakes are high, process isn’t overhead. Process is how you ship with confidence.

What Modern Developers Inherited From Margaret

Margaret Hamilton fought to be taken seriously as an engineer. Not a coder. An engineer.

The difference? Engineers don’t just make things work. They make things work reliably, predictably, and maintainably.

Margaret’s principles applied to modern software:

1. Test exhaustively before deployment Margaret simulated every possible failure scenario. You should review every commit before merging.

2. Architect for failure recovery Her code assumed errors would happen. Your workflow should too (version control is your recovery system).

3. Make your work auditable Apollo’s software had paper printouts for every routine. Your Git history should tell the story of your decisions.

4. Treat your craft like lives depend on it They did for Margaret. For you, careers and companies depend on it. Same rigor applies.

The Engineering Rigor Margaret Brought to Code

Margaret Hamilton didn’t tolerate sloppy practices because she couldn’t. The Apollo program’s margin for error was zero.

Here’s what rigor looked like in 1969:

Before launch:

  • Every line of code reviewed by multiple engineers
  • Every module tested in isolation, then integration
  • Every edge case documented and simulated
  • Every change tracked with meticulous version control (yes, they had version control in 1969—on paper)

During the mission:

  • Real-time monitoring of system state
  • Automatic error detection and recovery
  • Priority-based task management
  • Fallback systems for every critical function

After landing:

  • Post-mission analysis of every software decision
  • Documentation updates based on real-world performance
  • Lessons captured for future missions

Sound familiar? That’s modern DevOps practices. Margaret was doing CI/CD before the term existed.

The Modern Parallel: Your Git Workflow as Engineering Practice

Margaret Hamilton proved that code quality isn’t about perfection. It’s about process.

You can’t test every edge case in a lunar landing simulator. But you can build systems that catch errors before they become disasters.

Applied to Git workflows:

Margaret’s approach to Apollo software:

  • Every change reviewed before integration
  • Every module tested in isolation
  • Every error logged and analyzed
  • Every decision documented for future engineers

Margaret’s approach applied to Git:

  • Every commit reviewed in a pull request
  • Every branch tested before merging
  • Every merge conflict resolved with full context
  • Every change tracked with clear commit messages

The principle is identical: Rigor isn’t about being slow. Rigor is about being confident.

When Margaret’s code triggered alarms 3 minutes before landing, she wasn’t panicking. She knew exactly what the code was doing because she engineered it with that scenario in mind.

When your deployment triggers errors, are you panicking? Or do you have the tools to understand exactly what changed?

Process Enables Confidence, Not Restricts It

Here’s the counterintuitive truth Margaret understood: the more rigorous your process, the faster you can move.

Apollo’s software development seemed slow by modern standards. Every change required reviews, simulations, documentation. But when it mattered most—3 minutes from a moon landing—the process paid off. No guessing. No panic. The code worked exactly as designed.

Modern fast-paced development often inverts this. Move fast, break things, fix in production.

That works until it doesn’t. Until a deployment takes down your service. Until a merge corrupts your main branch. Until you’re spending more time recovering from speed than benefiting from it.

Margaret’s alternative: Move fast with guardrails.

In Git workflows:

  • Pull request reviews aren’t bureaucracy, they’re peer validation
  • Branch protections aren’t restrictions, they’re catastrophe prevention
  • Commit message standards aren’t pedantic, they’re future-you documentation
  • Visual diff reviews aren’t hand-holding, they’re quality gates

When Margaret’s team launched Apollo 11, they weren’t hoping it would work. They knew it would work because their process guaranteed it.

When you deploy to production, do you know it will work? Or are you hoping?

What Margaret Would Tell Modern Developers

If Margaret Hamilton were reviewing your Git workflow today, here’s what she’d say:

1. “Can you explain every change in your commit history?”

Margaret could walk through every line of Apollo’s code and explain why it existed. Can you walk through your last 10 commits and explain the reasoning?

If not, your Git history isn’t documentation. It’s noise.

2. “What happens when this fails?”

Margaret designed for failure. Her code assumed the astronauts would make mistakes, sensors would give bad data, and systems would overload.

Does your Git workflow assume you’ll make mistakes? Or does it punish you when you do?

3. “Who else needs to understand this?”

Apollo’s code had to be maintainable by engineers who didn’t write it. Your commits should be understandable by teammates who didn’t make them.

If your commit messages are “fix bug” and “update code,” you’re not engineering. You’re typing.

4. “Is your process auditable?”

NASA reviewed every software decision post-mission. Can you review every change that went into your last deployment?

If your Git history is a mess of “WIP” commits, you can’t audit your own work.

The Modern Parallel: Visual Git as Quality Infrastructure

Margaret Hamilton built tools to make complex software comprehensible. Paper printouts. Flowcharts. Documentation that showed how modules connected.

Visual Git tools serve the same purpose: make complex history comprehensible so you can make better decisions.

Here’s what engineering rigor looks like in Git:

Without visibility (fragile):

$ git log --oneline
3e2f891 fix
7b4c023 update
2f8e567 wip
9a1d344 changes
4c9a123 stuff

What changed? Why? Who can tell?

With visibility (rigorous):

  • Visual graph shows branch structure and merge history
  • Each commit has context (what changed, why, who reviewed)
  • Blame view shows which change introduced which line
  • Diff tools show exactly what’s different before merging

Margaret would recognize this immediately: you can’t maintain what you can’t see.

Craft Mastery Requires Engineering Discipline

Margaret Hamilton didn’t just write code that worked. She wrote code that worked under the worst possible conditions. In zero gravity. With overloaded systems. While astronauts’ lives hung in the balance.

That level of reliability requires discipline. Not because rules are fun—but because lives depended on it.

Your code might not control lunar landings. But it controls systems that people rely on. Businesses depend on. Careers are built on.

Margaret’s standard: Treat your craft like it matters, because it does.

Applied to Git:

  • Write commit messages that explain your reasoning
  • Review changes thoroughly before merging
  • Test branches before marking them ready
  • Keep your history clean so others can learn from it
  • Treat version control as engineering documentation, not just timestamps

When Margaret’s code prevented an Apollo abort, it wasn’t luck. It was the result of treating software development as an engineering discipline.

When your deployment succeeds without incident, it shouldn’t be luck either. It should be the result of treating your Git workflow as a quality system.

The Takeaway: Code Quality Starts With Process Quality

Margaret Hamilton’s legacy isn’t just the Apollo software. It’s the principle behind it: software deserves the same engineering rigor as any system people depend on.

Every time you:

  • Write a clear commit message explaining your change
  • Review your diff before committing
  • Request peer review on your pull request
  • Keep your main branch protected and clean
  • Treat your Git history as documentation for future engineers

You’re applying Margaret’s philosophy. Treat your craft with rigor. Build systems that catch mistakes. Make your work auditable and maintainable.

Margaret Hamilton coined “software engineering” to demand respect for her discipline. Fifty years later, we’re still learning what that means, one commit at a time.

Margaret Hamilton fought to have her work recognized as “engineering,” not just “programming.” This International Women’s Day, we’re spotlighting her contribution – but the fight for recognition shouldn’t be an annual event. Every time you treat your Git workflow with engineering discipline, you’re continuing what Margaret started. Every time you write maintainable code with rigorous process, you’re proving her point. We celebrate her this week. We should apply her standards every day.

Like this post? Share it!

Read More Articles

Visual Studio Code is required to install GitLens.

Don’t have Visual Studio Code? Get it now.

Team Collaboration Services

Secure cloud-backed services that span across all products in the DevEx platform to keep your workflows connected across projects, repos, and team members
Launchpad – All your PRs, issues, & tasks in one spot to kick off a focused, unblocked day. Code Suggest – Real code suggestions anywhere in your project, as simple as in Google Docs. Cloud Patches – Speed up PR reviews by enabling early collaboration on work-in-progress. Workspaces – Group & sync repos to simplify multi-repo actions, & get new devs coding faster. DORA Insights – Data-driven code insights to track & improve development velocity. Security & Admin – Easily set up SSO, manage access, & streamline IdP integrations.
winget install gitkraken.cli