legacy code

Predecessor's programming remains

Legacy code is software inherited from earlier development—code that remains in use but was written by others, in older styles, or for outdated systems.

The term usually carries negative connotations: legacy code is often poorly documented, difficult to maintain, and risky to modify.

Nobody wants to touch the legacy code.

In some contexts, legacy simply means existing: We need to support legacy systems during the migration.

obsolescence

deprecated

Formally advised against using

outmoded · end-of-life · unsupported · unmaintained · archaic · abandoned · orphaned · COBOL · FORTRAN · mainframe

quality

technical debt

Accumulated coding shortcuts

unmaintainable · buggy · inefficient · bloatware · bit rot · patchwork · hotfixes · rework · kludge · workaround

system

maintenance

Preserving working condition

compatibility · documentation · debugging · patches · updates · APIs · interfaces · version control · repository · modernization

Categories
Opposites
code quality/maintainability

legacy codeclean code

Well-organized, maintainable programming

architectural modernity

legacy codemodern architecture

Recent building styles

microservices

Family

code, legacy, legacies

Familiarity
Top 500,000
Profile
Used worldwide · Timeless · Abstract · Negative · Rated G