Table of Contents
41 relations: Abstraction (computer science), Action at a distance (computer programming), Artificial intelligence, Backward compatibility, Best current practice, Central processing unit, Clock rate, Code refactoring, Code smell, Coding conventions, Computer program, Database, Dead code, Dependency hell, Deprecation, Documentation, Evolution, Fatal exception error, Function (computer programming), Generation loss, HTTPS, Jargon File, MariaDB, MediaWiki, Modular programming, Open-source software, PHP, Programming language, Root certificate, SHRDLU, Software, Software bloat, Software brittleness, Software bug, Software maintenance, Spamming, Timer, User interface, Version history for TLS/SSL support in web browsers, Video game, Vulnerability (computer security).
- Software engineering folklore
- Software maintenance
Abstraction (computer science)
In software engineering and computer science, abstraction is the process of generalizing concrete details, such as attributes, away from the study of objects and systems to focus attention on details of greater importance.
See Software rot and Abstraction (computer science)
Action at a distance (computer programming)
Action at a distance is an anti-pattern in computer science in which behavior in one part of a program varies wildly based on difficult or impossible to identify operations in another part of the program.
See Software rot and Action at a distance (computer programming)
Artificial intelligence
Artificial intelligence (AI), in its broadest sense, is intelligence exhibited by machines, particularly computer systems.
See Software rot and Artificial intelligence
Backward compatibility
In telecommunications and computing, backward compatibility (or backwards compatibility) is a property of an operating system, software, real-world product, or technology that allows for interoperability with an older legacy system, or with input designed for such a system.
See Software rot and Backward compatibility
Best current practice
A best current practice, abbreviated as BCP, is a de facto level of performance in engineering and information technology.
See Software rot and Best current practice
Central processing unit
A central processing unit (CPU), also called a central processor, main processor, or just processor, is the most important processor in a given computer.
See Software rot and Central processing unit
Clock rate
In computing, the clock rate or clock speed typically refers to the frequency at which the clock generator of a processor can generate pulses, which are used to synchronize the operations of its components, and is used as an indicator of the processor's speed.
See Software rot and Clock rate
Code refactoring
In computer programming and software design, code refactoring is the process of restructuring existing source code—changing the factoring—without changing its external behavior.
See Software rot and Code refactoring
Code smell
In computer programming, a code smell is any characteristic in the source code of a program that possibly indicates a deeper problem. Software rot and code smell are software engineering folklore.
See Software rot and Code smell
Coding conventions
Coding conventions are a set of guidelines for a specific programming language that recommend programming style, practices, and methods for each aspect of a program written in that language.
See Software rot and Coding conventions
Computer program
A computer program is a sequence or set of instructions in a programming language for a computer to execute.
See Software rot and Computer program
Database
In computing, a database is an organized collection of data or a type of data store based on the use of a database management system (DBMS), the software that interacts with end users, applications, and the database itself to capture and analyze the data.
Dead code
The term dead code has multiple definitions.
See Software rot and Dead code
Dependency hell
Dependency hell is a colloquial term for the frustration of some software users who have installed software packages which have dependencies on specific versions of other software packages. Software rot and dependency hell are software engineering folklore.
See Software rot and Dependency hell
Deprecation
Deprecation is the discouragement of use of something human-made, such as a term, feature, design, or practice.
See Software rot and Deprecation
Documentation
Documentation is any communicable material that is used to describe, explain or instruct regarding some attributes of an object, system or procedure, such as its parts, assembly, installation, maintenance, and use.
See Software rot and Documentation
Evolution
Evolution is the change in the heritable characteristics of biological populations over successive generations.
See Software rot and Evolution
Fatal exception error
In computing, a fatal exception error or fatal error is an error that causes a program to abort and may therefore return the user to the operating system.
See Software rot and Fatal exception error
Function (computer programming)
In computer programming, a function, procedure, method, subroutine, routine, or subprogram is a callable unit of software logic that has a well-defined interface and behavior and can be invoked multiple times.
See Software rot and Function (computer programming)
Generation loss
Generation loss is the loss of quality between subsequent copies or transcodes of data.
See Software rot and Generation loss
HTTPS
Hypertext Transfer Protocol Secure (HTTPS) is an extension of the Hypertext Transfer Protocol (HTTP).
Jargon File
The Jargon File is a glossary and usage dictionary of slang used by computer programmers. Software rot and Jargon File are software engineering folklore.
See Software rot and Jargon File
MariaDB
MariaDB is a community-developed, commercially supported fork of the MySQL relational database management system (RDBMS), intended to remain free and open-source software under the GNU General Public License.
MediaWiki
MediaWiki is free and open-source wiki software originally developed by Magnus Manske for use on Wikipedia on January 25, 2002, and further improved by Lee Daniel Crocker,Magnus Manske's announcement of "PHP Wikipedia", wikipedia-l, August 24, 2001 after which it has been coordinated by the Wikimedia Foundation.
See Software rot and MediaWiki
Modular programming
Modular programming is a software design technique that emphasizes separating the functionality of a program into independent, interchangeable modules, such that each contains everything necessary to execute only one aspect of the desired functionality.
See Software rot and Modular programming
Open-source software
Open-source software (OSS) is computer software that is released under a license in which the copyright holder grants users the rights to use, study, change, and distribute the software and its source code to anyone and for any purpose.
See Software rot and Open-source software
PHP
PHP is a general-purpose scripting language geared towards web development.
Programming language
A programming language is a system of notation for writing computer programs.
See Software rot and Programming language
Root certificate
In cryptography and computer security, a root certificate is a public key certificate that identifies a root certificate authority (CA).
See Software rot and Root certificate
SHRDLU
SHRDLU is an early natural-language understanding computer program that was developed by Terry Winograd at MIT in 1968–1970.
Software
Software consists of computer programs that instruct the execution of a computer.
Software bloat
Software bloat is a process whereby successive versions of a computer program become perceptibly slower, use more memory, disk space or processing power, or have higher hardware requirements than the previous version, while making only dubious user-perceptible improvements or suffering from feature creep. Software rot and Software bloat are software quality.
See Software rot and Software bloat
Software brittleness
In computer programming and software engineering, software brittleness is the increased difficulty in fixing older software that may appear reliable, but instead, fails, when presented with unusual data or altered in a seemingly minor way. Software rot and software brittleness are software maintenance.
See Software rot and Software brittleness
Software bug
A software bug is a bug in computer software.
See Software rot and Software bug
Software maintenance
Software maintenance is the modification of a software product after delivery.
See Software rot and Software maintenance
Spamming
Spamming is the use of messaging systems to send multiple unsolicited messages (spam) to large numbers of recipients for the purpose of commercial advertising, non-commercial proselytizing, or any prohibited purpose (especially phishing), or simply repeatedly sending the same message to the same user.
Timer
A timer or countdown timer is a type of clock that starts from a specified time duration and stops when reaching 00:00.
User interface
In the industrial design field of human–computer interaction, a user interface (UI) is the space where interactions between humans and machines occur.
See Software rot and User interface
Version history for TLS/SSL support in web browsers
Version history for TLS/SSL support in web browsers tracks the implementation of Transport Layer Security protocol versions in major web browsers.
See Software rot and Version history for TLS/SSL support in web browsers
Video game
A video game or computer game is an electronic game that involves interaction with a user interface or input device (such as a joystick, controller, keyboard, or motion sensing device) to generate visual feedback from a display device, most commonly shown in a video format on a television set, computer monitor, flat-panel display or touchscreen on handheld devices, or a virtual reality headset.
See Software rot and Video game
Vulnerability (computer security)
Vulnerabilities are flaws in a computer system that weaken the overall security of the system.
See Software rot and Vulnerability (computer security)
See also
Software engineering folklore
- Benevolent dictator for life
- Boilerplate code
- Cargo cult programming
- Code bloat
- Code smell
- Cowboy coding
- Dependency hell
- Design smell
- Deutsch limit
- Don't repeat yourself
- Experimental software engineering
- Fundamental theorem of software engineering
- Greenspun's tenth rule
- Heisenbug
- Interface bloat
- Jargon File
- Law of conservation of complexity
- Leaning toothpick syndrome
- Magic (programming)
- Magic number (programming)
- Ousterhout's dichotomy
- Programming in the large and programming in the small
- Reinventing the wheel
- Rule of least power
- Rule of three (C++ programming)
- Software rot
- Spaghetti code
- Turing tarpit
- Write once, compile anywhere
- Write once, run anywhere
- Zero one infinity rule
Software maintenance
- Abandonware
- Authorized Program Analysis Report
- Backporting
- Debug code
- Delta update
- Hotfix
- Journal of Software: Evolution and Process
- Lehman's laws of software evolution
- Long-term support
- Maintenance mode
- Microsoft Software Assurance
- OpenFrame
- Patch (computing)
- Patch Tuesday
- Program slicing
- Program temporary fix
- SMP/E
- SQALE
- Schema migration
- Software analytics
- Software archaeology
- Software brittleness
- Software evolution
- Software maintainer
- Software maintenance
- Software map
- Software modernization
- Software rot
- Software visualization
- Source port
- Sourcetrail
- SrcML
- Stovepipe system
- System migration
- Technical debt
- Unofficial patch
- Workaround
References
Also known as Code rot, Coderot, Software Entropy, Software decay, Software entrop, Software erosion.

