Slashdot Mirror


When Do You Kiss Backwards Compatibility Goodbye?

Arandir asks: "Backwards compatibility is great for users. But it sucks for developers. After a while your normally sensible and readable code becomes a nightmare spaghetti tangle of conditions, macros and multiple reinventions of the wheel. Eventually you have to kiss off backwards compatibility as more trouble than it's worth. The question is, when? Should my code conform to POSIX.1 or Single UNIX 2? Should I expect the user to have a ISO Standard C++ compiler? What about those users with SunOS-4.1.4, Slackware-3.2, and FreeBSD-2.2?" This question is really kind of difficult to answer in the general sense. The best advice one can give, of course, is "when you can get away with it". Not much help, that, but the lost of backwards compatibility, like most complex decisions, depends on a lot of factors. The key factor in most developers eyes, of course, is the bottom line. Have many of you been faced with this decision? What logic did you use to come to your decision and what suggestions do you have for others who might find themself in this predicament?

4 of 241 comments (clear)

  1. Ironically.. by Axe · · Score: 5, Funny

    Ironically I am doing it right now. Good part it is Saturday, and other developers do not know. Or they will lynch me..

    --
    <^>_<(ô ô)>_<^>
  2. Reminds me of an old joke... by Anonymous Coward · · Score: 4, Funny

    God created the universe in 6 days because He didn't have to worry about an installed base.

  3. Or, if you really want to annoy people... by deranged+unix+nut · · Score: 4, Funny

    Release a set of updates, only change the minor version number, break one critical function in each update, fix it and break a different critical function in the next. Repeat until users no longer depend on the functionality that you want to change, then introduce the new functionality.

    But first, go read "How to write bad code," and start following those suggestions too. ;)

  4. Analogy by noz · · Score: 4, Funny

    "Programming is like sex. Make one mistake and support it for the rest of your life."