The tendency for computer software to become gradually worse in performance or responsiveness over time, eventually leading to it becoming completely faulty, unresponsive, or unusable. This is either due to software failing to remain up to date and compatible with the operating system in which it operates, or because the software's code has been updated or altered in ways that have introduced more bugs and errors over time. (It doesn't refer to actual physical decay.) If you want to develop programs that people continue to use for years to come, you've got to factor in ways to avoid code decay with each new update, the users will eventually move on to something that works better. A lot of people just let programs sit on their hard drives for years at a time without being updated or upgraded at all, and then are totally flabbergasted when code decay renders them totally unusable down the line.
Farlex Dictionary of Idioms. © 2022 Farlex, Inc, all rights reserved.