Maintenance Glossary
Browse 70 maintenance terms defined in plain English, from the cultural dictionary of computing.
70 Maintenance Terms
- Backport
- Applying a fix or feature from a newer version of software to an older, still-supported version. Essential for security patches on LTS releases — users...
- Bit Rot
- The gradual degradation of software over time even without code changes, caused by evolving dependencies, changing environments, and shifting assumptions. The...
- Bit Rot Slang
- A slang term for software or systems degrading over time because dependencies change, assumptions drift, and nobody actively maintains them. In engineering...
- Brownfield
- Brownfield in software development refers to a project that involves working with existing, legacy codebases and infrastructure rather than building from...
- Bug Report
- A report describing a software defect, usually including observed behavior, expected behavior, environment details, reproduction steps, and supporting evidence...
- Cleanup
- The work of releasing resources, removing temporary state, deleting no-longer-needed data, or reversing setup after an operation completes. Cleanup logic is...
- Codebase Health
- The overall condition of a codebase as reflected in maintainability, tests, documentation, issue load, dependency state, and ease of contribution. In...
- Code Burden
- The maintenance weight imposed by code that is costly to understand, test, migrate, or keep alive. In engineering slang, code burden is what accumulates when...
- Code Cleanup
- Work that improves readability, structure, or maintainability of code without intentionally changing its external behavior. Code cleanup often includes...
- Code Debt
- A cultural or conversational variant of technical debt that emphasizes accumulated shortcuts and deferred cleanup in code. The phrase is often used when teams...
- Code Debt Collector
- A person or effort focused on forcing long-ignored technical debt to be paid down. In engineering slang, the code debt collector is often the one making...
- Code Drift
- The gradual divergence of code from intended design, docs, neighboring services, or its own earlier assumptions. In engineering slang, code drift is what...
- Code Evolution
- The way a codebase changes over time as features, fixes, refactors, and workarounds accumulate. In engineering culture, understanding code evolution helps...
- Code Garden
- A codebase thought of as something that needs regular tending, pruning, and healthy growth rather than only heroic rescue work. In engineering slang, code...
- Code Gardening
- The ongoing, low-drama work of tending a codebase through small cleanups, dependency updates, test fixes, documentation, and minor refactors so it stays...
- Code Hygiene
- The routine habits that keep a codebase clean, understandable, and safe to modify, such as formatting, deleting dead code, naming clearly, and keeping tests...
- Code Janitor
- A self-deprecating or appreciative label for someone who spends significant time cleaning up code, deleting dead paths, fixing style drift, updating docs, and...
- Code Legacy
- The inheritance a team receives from earlier code decisions, whether in the form of stable foundations, technical debt, or institutional memory encoded in...
- Code Maintenance
- The ongoing work of updating, cleaning, fixing, and adapting code after initial release. In engineering culture code maintenance is often undervalued compared...
- Code Refactoring Culture
- A team's shared attitude toward improving code structure without changing external behavior. Healthy code refactoring culture means cleanup is treated as...
- Code Rot
- The gradual decline of a codebase’s usefulness or maintainability as dependencies change, assumptions drift, documentation ages, and no one actively tends the...
- Code Surgery
- A delicate, targeted code change made deep inside a fragile system where the goal is to fix one thing without disturbing everything around it. Teams use it...
- Code Tax
- The recurring extra effort imposed by a codebase, tool, or architecture before real feature work can even start. It often shows up as boilerplate, slow builds,...
- Code Triaging
- The process of sorting, classifying, and prioritizing incoming code-related work such as bugs, pull requests, failing tests, or refactor requests so...
- Cyber Hygiene
- The routine security practices that reduce avoidable risk, such as patching, MFA, asset inventory, backup discipline, and least privilege. Good cyber hygiene...
- Data Janitor
- A person or process that spends most of its time cleaning, normalizing, deduplicating, or repairing messy data before anyone can use it. The term highlights...
- Deprecated
- Marked as outdated and discouraged for new use, even if it still works for backward compatibility. In practice it often means 'this will become your problem...
- Downstream Fork
- A derived project or package maintained separately from an upstream source, usually carrying its own patches, packaging choices, or release cadence. Downstream...
- Fix It Friday
- A recurring practice or informal ritual of reserving Friday time for cleanup, bug fixes, tooling improvements, or long-postponed maintenance. In tech culture...
- Gardening (Code)
- A metaphor for the steady ongoing care a codebase needs, such as pruning dead code, improving naming, adjusting boundaries, and keeping things healthy over...
- Infrastructure Week
- A dedicated period set aside for reliability, migrations, cleanup, and internal engineering improvements instead of product features.
- Issue Tracker
- A system for recording and managing bugs, feature requests, tasks, and support problems over time. For many open source projects, the issue tracker is the...
- Issue Triage
- The process of reviewing incoming issues to decide whether they are bugs, support questions, feature requests, duplicates, or invalid reports, and to...
- Keep the Lights On
- To do the routine reliability, support, and maintenance work required to keep an existing system or business running. It usually contrasts with new feature or...
- Lame Duck Release
- A release that is technically still supported or publicly available but already overshadowed by its replacement and receiving minimal strategic attention....
- Legacy Code
- Legacy Code refers to existing source code that is outdated, poorly understood, or difficult to modify, typically inherited from previous developers or earlier...
- Legacy Codebase
- An existing codebase that has been around long enough to accumulate business-critical behavior, outdated assumptions, undocumented edge cases, and maintenance...
- Legacy System
- An older software system still in production use, often built on outdated technology, poorly documented, and difficult to modify — but too critical or costly...
- Open Source Maintainer
- A person responsible for reviewing contributions, making release decisions, handling issues, and guiding the direction of an open source project. Maintainers...
- Open Source Sustainability
- The challenge of keeping open source projects viable over the long term through funding, governance, contributor health, maintenance capacity, and realistic...
- Package Update
- An update to a package version, metadata, build recipe, or distribution artifact. In ecosystem maintenance culture, package updates are routine but can still...
- Package Upgrade
- The act of moving from one package version to a newer one, usually through a package manager or release workflow. In operations culture, package upgrades are...
- Patch
- A discrete change applied to source code or software, historically often represented as a diff and now also commonly as a pull request or commit set. The term...
- Point Release
- A small release, usually reflected in the final segment of a version number, intended to deliver bug fixes, minor improvements, or maintenance updates without...
- Project Health
- The overall condition of a project as reflected by factors such as maintainer activity, release cadence, issue responsiveness, contributor diversity,...
- Project Release
- A release of a project's software, documentation, or assets, often tied to a version and changelog. In maintenance culture, project releases are moments where...
- Refactor
- Verb form of refactoring. 'Let me refactor this.' In practice, can mean anything from renaming a variable to rewriting an entire module while insisting 'it's...
- Refactoring
- Restructuring existing code without changing its external behavior, improving internal structure, readability, or performance. The disciplined art of making...
- Refactoring Guilt
- The nagging sense that code should be cleaned up properly even when deadlines or incentives push the team toward quick fixes instead.
- Refactoring Monday
- A deliberately chosen period, often at the start of the week, reserved for cleanup, simplification, and debt reduction rather than new feature work.
- Repository Health
- The overall condition of a repository as judged by signals like activity, issue response time, docs quality, test coverage, and release reliability. In...
- Run the Business
- Work required to keep an existing business or product operating reliably, as opposed to net-new feature or innovation work.
- Security Fix
- A code or configuration change intended to remove or mitigate a security weakness. In software maintenance culture, security fixes often require both code...
- Shotgun Surgery
- A code smell where one conceptual change requires small edits across many different files or modules. It signals poor cohesion because related behavior is...
- Software Garden
- A metaphor for a codebase or platform that needs regular tending, pruning, and healthy growth. In engineering slang, a software garden improves when teams...
- Software Gardening
- The ongoing practice of cleaning, refactoring, documenting, and gently improving software over time. In engineering slang, software gardening is the opposite...
- Software Rot
- The gradual decline in usefulness, reliability, or maintainability of software as dependencies change, assumptions age, and upkeep falls behind. It is often...
- Stitches in Time
- A reference to fixing something early before it grows into a larger mess. In engineering slang, stitches in time are the small maintenance tasks that save...
- Support Lifecycle
- The timeline describing how long a version, product, or release line will receive fixes, updates, or assistance. In operations planning, support lifecycles are...
- Tech Debt
- The accumulated cost of shortcuts, quick fixes, and deferred refactoring in a codebase. Like financial debt, it accrues interest — the longer you leave it, the...
- Tech Debt Culture
- The shared organizational habits that determine whether technical debt is acknowledged, managed, ignored, or continually deferred. A weak tech debt culture...
- Tech Debt Swamp
- A condition where accumulated technical debt makes normal movement slow, messy, and exhausting. In engineering slang, a tech debt swamp traps teams in constant...
- Time Sink
- Something that consumes far more time than its value seems to justify, often because it is messy, repetitive, or hard to make progress on. Engineers use it for...
- Toxic Codebase
- A codebase so unpleasant, unstable, or conflict-heavy that working in it harms morale and productivity. In engineering slang, a toxic codebase usually reflects...
- Update Hell
- A painful state where upgrades are blocked by cascading dependency issues, breaking changes, and incompatible version requirements. It is especially common in...
- Update Policy
- A documented policy describing when and how updates are released, supported, or applied. In operations and product maintenance, update policies help users plan...
- Upstream Contribution
- A patch, fix, feature, or other work submitted back to the original project rather than kept only in a private fork or downstream package. Upstream...
- Upstream First
- A policy or mindset that prioritizes getting changes accepted into the original project before carrying them only in internal forks or downstream...
- Vacuum
- A PostgreSQL maintenance operation that reclaims storage from dead tuples (rows that were updated or deleted but not yet cleaned up due to MVCC). VACUUM also...
- Versioning Strategy
- The overall approach a project takes to numbering releases and signaling compatibility, stability, or lifecycle stage to users. A versioning strategy may use...
Related Topics
- Technical Debt (11 terms in common)
- Slang (10 terms in common)
- Code Quality (7 terms in common)
- Open Source (6 terms in common)
- Refactoring (5 terms in common)
- Versioning (4 terms in common)
- Releases (4 terms in common)
- Engineering (4 terms in common)
- Issues (3 terms in common)
- Engineering Culture (3 terms in common)
- Business (2 terms in common)
- Software (2 terms in common)
- Productivity (2 terms in common)
- Packages (2 terms in common)
- History (2 terms in common)
- Prioritization (2 terms in common)
- Updates (2 terms in common)
- Legacy Systems (2 terms in common)
- Security (2 terms in common)
- Metaphor (2 terms in common)