Boat Anchor

dead-metaphor Tool UseSoftware Programs

Categories: software-engineering

What It Brings

A heavy, useless object that drags you down maps onto obsolete code or technology kept in a project despite serving no current purpose. The metaphor originates from military and hobbyist slang for broken equipment too heavy to move and too expensive to dispose of — the decommissioned radar unit that becomes a literal boat anchor because that is all it is good for. In software, the term captures systems, libraries, or modules that no one uses, no one understands, and no one dares remove.

Key structural parallels:

Where It Breaks

Expressions

Origin Story

The term “boat anchor” for useless heavy equipment predates software. It appears in military and amateur radio slang from at least the 1970s, where a broken radio or oscilloscope too heavy to discard might literally be described as “only good for a boat anchor.” The joke is that the equipment’s only remaining virtue is its weight.

The term migrated into software engineering in the 1990s, appearing in the anti-patterns literature alongside related concepts like dead code, gold plating, and lava flow (hardened code from old, poorly understood projects). William Brown, Raphael Malveau, and colleagues included it in AntiPatterns: Refactoring Software, Architectures, and Projects in Crisis (1998), helping formalize it as a recognized anti-pattern.

References

Related Mappings