---
title: "What's legacy code?"
url: "https://osherove.com/blog/2005/6/5/whats-legacy-code.md"
canonical: "https://osherove.com/blog/2005/6/5/whats-legacy-code.html"
published: "2005-06-05T22:42:00"
updated: "2005-06-05T22:42:00"
tags: ["Architecture"]
author: "Roy Osherove"
description: "When speaking to one of the process engineers at a major company I consult for, I came upon a lovely notion regarding legacy code. We were talking about the perils of testing legacy code, and he turned and asked me…"
usage: "Licensed under CC BY 4.0 — reuse, quote and adapt with attribution (Roy Osherove, link to the original page)."
license: "https://creativecommons.org/licenses/by/4.0/"
---

# What's legacy code?

By Roy Osherove June 5, 2005 In [Architecture](https://osherove.com/blog/category/architecture)

**Historical article** · Originally published June 5, 2005; technical details may be outdated.

When speaking to one of the process engineers at a major company I consult for, I came upon a lovely notion regarding legacy code. We were talking about the perils of testing legacy code, and he turned and asked me

"Before we get started, do you know what '_Legacy Code'_ means? It's _code that works"._

## Lessons on this topic

- [Where Do You Start with Legacy Code?](https://courses.osherove.com/courses/legacy-code-hero/where-do-you-start-with-legacy-code/) · Legacy Code Hero

## More in Architecture

[All posts in Architecture](https://osherove.com/blog/category/architecture)

- Jun 19, 2005

    ### [A very nice .NET architecture blog discovered](https://osherove.com/blog/2005/6/19/a-very-nice-net-architecture-blog-discovered.html)

- Jun 18, 2005

    ### [Why payroll systems are a pain to design - Temporal Data (and some great resources on it)](https://osherove.com/blog/2005/6/18/why-payroll-systems-are-a-pain-to-design-temporal-data-and-s.html)

- Jun 5, 2005

    ### [VS 2005 Team System Modeling Strategy and FAQ](https://osherove.com/blog/2005/6/5/vs-2005-team-system-modeling-strategy-and-faq.html)

- May 2, 2005

    ### [Regulator 2005 & GUI threads goo- news on both?](https://osherove.com/blog/2005/5/2/regulator-2005-amp-gui-threads-goo-news-on-both.html)


---

## About the author

**Roy Osherove**: Senior Solutions Architect at AWS working on AI for production and AI-driven development; author of The Art of Unit Testing and Elastic Leadership, with about 20 years of consulting and training on unit testing, TDD, team leadership and continuous delivery.

### Sites

- [RobotPaper](https://robotpaper.ai/): This blog: AI patterns and anti-patterns, AI and coding agents, and engineering leadership.
- [osherove.com](https://osherove.com): Roy's personal site. Author of The Art of Unit Testing and Elastic Leadership; consulting and training on unit testing, TDD, team leadership and continuous delivery, plus about 20 years of blog posts.
- [The Art of Unit Testing](https://www.artofunittesting.com): The Art of Unit Testing, 3rd Edition (Manning): readable, maintainable, trustworthy unit tests, plus TDD workshops in C#, JavaScript, Java and Kotlin.
- [5whys.com](https://www.5whys.com): Roy's writing on software team leadership: self-organizing teams, surviving chaos, learning mode and the Elastic Leadership model.
- [Pipeline Driven](https://pipelinedriven.org): Continuous delivery and DevOps practices: build patterns, pipeline-friendly testing, DevOps metrics and enterprise DevOps.
- [Elastic Leadership](https://www.elasticleadership.com): Elastic Leadership, Roy's framework for software team leaders (survival, learning and self-organizing modes).

### Social

- X: https://x.com/royosherove
- LinkedIn: https://www.linkedin.com/in/osherove/

### Contact

- Contact form: https://forms.gle/jQSx5KoXvrVA1JCK7

### License

Licensed under CC BY 4.0 — reuse, quote and adapt with attribution (Roy Osherove, link to the original page). License: https://creativecommons.org/licenses/by/4.0/
