I can think of "perishable". However I do not know if I can use it in context of programming. I want to say that the code or a program is replaced when there is a new and better technology.

Edit: I mean code will someday be replaced someday in the future. It is not obsolete right now.

  • 7
    I think the answers so far are using the wrong tense. The question is asking for words that describe a potential future state of the code. "Deprecated" implies that the code has already become obsolete. The OP wants a word that describes code that, although technically not deprecated now, will likely become that way in the near future. Nov 22, 2016 at 15:06
  • 3
    @SirBraneDamuj Software that will be obsolete in the future can be described currently as "exists". Nov 22, 2016 at 16:37
  • @GalacticCowboy has a point, that most code will be replaced sooner or later. See my answer below, workaround, which is a temporary solution to a problem that will permanently be fixed later. I'm a professional programmer myself, so if you give a little more detail about your situation I may have a more technical, specialized word for what you're dealing with
    – automaton
    Nov 22, 2016 at 19:29
  • 1
    @emmy Can you please use the edit link under your question to tell us whether you mean that the code or program has been replaced or that it will someday be replaced? The answer will determine which term is appropriate. In the first case, deprecated is the correct term. Nov 23, 2016 at 1:35

8 Answers 8


If you just want to say that it is possible for the code to be replaced by something new/faster/better, you could use the adjective supersedable, which means basically "able to be replaced or made obsolete".1 A more casual, modern way to say the same thing is that the code is not future-proof.2

If you want to talk about how long it will probably be before the code is superseded, then I would use half-life.

The term half-life refers to how long it takes for something to undergo some process. It might be most familiar in relation to radioactive decay or drug metabolization.

In the realm of technology it can be used to refer to how long it will be before some new technology makes a product obsolete.3 So if the code you're talking about will probably be obsolete soon, you could say it has a short half-life.

1 From Dictionary.com:

verb (used with object), superseded, superseding.

  1. to replace in power, authority, effectiveness, acceptance, use, etc., as by another person or thing.
  2. to set aside or cause to be set aside as void, useless, or obsolete, usually in favor of something mentioned; make obsolete:
    They superseded the old statute with a new one.

2 From Techopedia:

Definition - What does Future Proof mean?
Future proof is a buzzword that describes a product, service or technological system that will not need to be significantly updated as technology advances. In reality, very few things are truly future proof. In any field that depends heavily on technology, a regular cycle of replacing and updating appears to be the norm.

3 For example:

[W]hat is the half life of your technology devices these days? By that I mean, at what point are you already starting to think about upgrading your devices — from the moment you purchased the last one?

Half-life is the moment when you could continue to use your device but it is either so far behind the functionality of other devices or — because of performance issues — it is increasingly unusable. Both points used to take three to five years, but are now more likely to be only one or two years.

"Why is the half-life of technology getting shorter?" Global Telecoms Business, 2012.

  • 1
    +1 for "not future-proof" as it describes exactly what the OP was asking. Most other answers are about something what is already outdated to begin with. Depending on the context, I would use "not future-proof enough", as to be 100% future-proof is practically impossible.
    – vsz
    Nov 23, 2016 at 11:37

How about transient?

  1. not lasting, enduring, or permanent; transitory.
  2. lasting only a short time; existing briefly; temporary: transient authority.
  3. staying only a short time: the transient guests at a hotel.

Or temporal:

  1. enduring for a time only; temporary; transitory

Both definitions from dictionary.com.

  • 1
    "Temporary" is also a plain word given in both these definitions that means what OP seems to mean. Also, if the replacement of the software is planned, then the software is "transitional" -- intended to sure during the duration from one software product to another. Nov 27, 2016 at 0:04

Consider fleeting:

  1. passing swiftly; vanishing quickly; transient; transitory: fleeting beauty; a fleeting glance.

I would prefer not to use such a fleeting technology on this long-term project.

Saying something like the above would convey that you suspect the technology in question is merely a fad, or not yet mature/stable enough, to consider using it as a long-term solution to a problem.

  • "Evanescent" has a very similar meaning.
    – AdrianHHH
    Nov 23, 2016 at 9:21

The software can become obsolete; When the software is obsolete, it will be superseded by the new technology.

Depending on the context, though, you may not even need to say any of this; software is assumed to be ephemeral and temporary, given the speed of change in the software industry.

  • 2
    How about deprecated?
    – dokgu
    Nov 22, 2016 at 17:42
  • @PatrickGregorio Deprecated means "insulted" or "belittled". Despite it's similarity to depreciated, the two words are distinct and should not be mixed up.
    – Werrf
    Nov 22, 2016 at 17:55
  • 7
    @Werrf Not sure whether you're suggesting he should use "depreciated" instead, but "deprecated" is commonly used (in the software industry, at least) to refer to something that is obsolete or otherwise should not be used. The MW definition includes "criticize", "disapprove of". By contrast, "depreciate" refers to a reduction in the value of something. So something that is deprecated may also have depreciated, but something that depreciates is not necessarily deprecated. Nov 22, 2016 at 18:24
  • 2
    @Werrf that's if you're using the word in the regular sense. In the software industry, the term deprecated means outdated and will soon be obsolete in future versions. Since the OP asked "in the context of programming" I think deprecated is the actual answer here.
    – dokgu
    Nov 22, 2016 at 18:37
  • @Werrf Deprecated is a very common term in in programming.
    – paparazzo
    Nov 23, 2016 at 14:38

You could say the program will be deprecated (Wikipedia explanation).

  • 2
    Should that not be 'deprecated', rather than 'depreciated'?
    – mike
    Nov 22, 2016 at 14:10
  • @mike No - deprecate generally means 'to express disapproval of', disparage or belittle. Depreciate means 'to lose value over time.
    – Werrf
    Nov 22, 2016 at 14:14
  • 7
    I realise that. However, I'm referring to 'software deprecation' - meaning that its usage is no longer recommended, and that it isn't undergoing further development. en.wikipedia.org/wiki/Deprecation
    – mike
    Nov 22, 2016 at 14:20
  • 1
    I've mostly seen "deprecated" applied to functions of past versions, or at most, functions that are not supported in the next version of the software. In this particular case (where some software is replaced by something better) it would be more common to use "made obsolete".
    – Andrew
    Nov 22, 2016 at 15:03
  • 1
    Deprecated is a term of art (for example, there are automated systems that will warn when using deprecated interfaces or features) and specifically means that some particular feature is considered legacy and is a candidate for removal. Nov 22, 2016 at 15:49

Obsolescent means becoming obsolete. It describes something that is in current use, or can be used now, but which is expected to be obsolete in the future. See also here

  • 1
    ...This is the actual answer.
    – djechlin
    Nov 23, 2016 at 5:15

You could say that the program or software becomes obsolete.

http://www.merriam-webster.com/dictionary/obsolete Obsolete: no longer used because something newer exists : replaced by something newer

Although it is a general term that can be used to describe a broad spectrum of things that are outdated, it is commonly used to describe technology or software that is outdated. In fact, some software has built-in or planned obsolescence, where it is purposely designed to have a limited useful lifespan, in order to bring back repeat business by forcing users to upgrade to a newer version.


  • Please edit to include an explanation of why this is correct; answers without explanation do not teach the patterns of the language well. Nov 22, 2016 at 14:38

I'm sure GalacticCowboy was being sarcastic in his comment, but it's a good point. Most software or code will be replaced sooner or later.

If it's some piece of code or feature you're just using now because you have no other options (but possibly will replace or fix when you have the opportunity), try workaround.

noun (used in computing)`
A method for overcoming a problem or limitation in a program or system.

If the code/software is as intended, but will likely get replaced soon after deployment, you can say it has a short half-life as in this answer.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .