OK, laugh all you want, but I used to think deprecated was depreciated. Never had an issue with obsolete, but I recently felt a little better about myself when an acquaintance and much more experienced programmer used “depreciated” instead of deprecated to describe something. It made me wonder if anyone else had the same confusion I did.
My problem started with English and my perceived understanding of words–and my attitude towards looking up words in the dictionary. My style has always been, “Word I don’t recognize? Eh, I’ll just assume its meaning within the context of the sentence/paragraph”. You see, I hadn’t ever really used the word deprecated before I got into development. To me, it always meant: “To disapprove of something”. Which is technically accurate, if somewhat vague. The word didn’t mean enough to me, like it was too general to use in a programming context to describe something that was outdated, being replaced or out of fashion. I was wrong (obviously).
Which is why I thought depreciated was the correct word, which to me seemed to mean more like, “something that’s worth less as time goes on”. Which I looked up prior to dropping the word from use when describing aging programming practices because it seems to be geared towards the value or worthiness of something. While it’ll still work in a lexical sense (don’t look at me, I’m not a writer–certainly not a technical one anyway), I can understand why more people use deprecated instead.
So here, the difference between deprecated, depreciated and obsolete as they related to development and programming. And when to use each so you never have an embarrassing moment again…
Deprecated: Something is becoming outdated, or slowly being phased out. Often, a deprecated practice or element is still in use, but it is encouraged to stop using it as it may become obsolete in the next iteration or release. An example of a deprecated HTML element is the <center> tag.
Depreciated: Something is being reduced in value over a period of time. The homes on Mount Terrible are worth less year after year, it means their property values are depreciating.
Obsolete: No longer being used, dropped from standards. The HTML <blink> tag is obsolete and should not be used anymore, tragically.
So there you have it. Three words. Two of which beginning developers and programmers get mixed up now and then.