Slashdot Mirror


The Importance of OS Backwards Compatibility

gbjbaanb writes "Raymond Chen (of ancient Microsoft heritage) has a blog where he describes some of the things he's worked on, as well as oddments of obscure code and design decisions in Windows. Regardless of what anyone thinks of Windows, it is informative and often thought-provoking. Recently, Raymond posted an entry about backwards compatibility, and why it is such a big deal for large corporations. Something that I have read about on Slashdot regularly (where Windows is criticized for bothering with it at all), I thought readers would be interested in exactly why Microsoft spends so much effort on backwards compatibility, and by inference, why it is an important topic for getting Linux adopted by big business."

380 comments

  1. Omelette? by caluml · · Score: 3, Insightful

    You've got to break a few eggs to make an omelette, I always say.
    For a tasty omelette, add cheese, tabasco sauce, and ground black pepper.

    1. Re:Omelette? by CockMonster · · Score: 5, Insightful

      no point breaking eggs if no-one will be able to eat your omelette

    2. Re:Omelette? by Monokeros · · Score: 4, Funny

      (+1 Yum.)

      --
      The Statue of Liberty is America's lawn jockey.
    3. Re:Omelette? by Woldry · · Score: 1

      Whoever modded parent "Offtopic" missed the analogy bus.

      --
      How can a post be modded "overrated" or "underrated" when it hasn't been rated yet?
    4. Re:Omelette? by TheRaven64 · · Score: 1

      (+1 Apt.)

      --
      I am TheRaven on Soylent News
    5. Re:Omelette? by thc69 · · Score: 2, Funny

      Maybe they were 16 bit ISA analogy moderators. The PCI analogy bus is 32 bits and not backwards compatible...

      --
      Procrastination -- because good things come to those who wait.
  2. Linux fall very short on backwards compatiblity by InsaneProcessor · · Score: 5, Insightful

    I am still working on 2.4 to 2.6 kernel issues. Linux and it's authors have no concept of backwards compatiblity. We have to redo everything and our purchased software suffers even more.

    --

    Athiesm is a religion like not collecting stamps is a hobby.
    1. Re:Linux fall very short on backwards compatiblity by Anonymous Coward · · Score: 1, Interesting

      Hopefully in the future (this applies to all OS's, not just Linux) the backwards compatibility issues will be somewhat muted by our ability to run virtual machines to support the old applications.

    2. Re:Linux fall very short on backwards compatiblity by Anonymous Coward · · Score: 0

      Windows MUST be backward compatible to justify Microsoft's business model -- imagine what would happen if you were required to upgrade every Microsoft and 3rd party applications when you upgraded Windows -- you'd probably not upgrade at all.

      With Free/Open Source Software, you are free to upgrade the applications with the OS, and it's the distros' business to make it work.

    3. Re:Linux fall very short on backwards compatiblity by Anonymous Coward · · Score: 2, Insightful

      The fact that most software found on a typical Linux install has source available only mitigates the backwardly-incompatibility. In the same way that Internet Explorer vulnerabilities are mitigated by "the attacker must trick the user to visit a web page". Sure it helps, but... not really.

    4. Re:Linux fall very short on backwards compatiblity by gmack · · Score: 1

      What issues are those? Nothing other than system software should even see a difference between the two.

    5. Re:Linux fall very short on backwards compatiblity by TheRaven64 · · Score: 1
      Try FreeBSD. Each new major release comes with a compatibility environment for previous versions. Old versions of shared libraries can be installed in /compat. If you are running FreeBSD 6.x, and want to run applications built for 4.x, then you just need to enable COMPAT_FREEBSD4 option in the kernel (enabled by default), and install the compat4x port. The first adds a kernel personality which ensures that a FreeBSD 4.x program will find all the system calls in the locations it expects, doing the things it expects. The second installs old versions of the standard libraries in /compat/compat4x.

      It's quite useful when upgrading the system over a major revision, since it allows you to upgrade the base system and third party applications separately; even if something in the base system breaks backwards compatibility, stuff should keep working.

      --
      I am TheRaven on Soylent News
    6. Re:Linux fall very short on backwards compatiblity by dumfrac · · Score: 1

      2.4 is still supported (http://www.kernel.org).

    7. Re:Linux fall very short on backwards compatiblity by Don+Giovanni · · Score: 1

      Linux is for system builders and technology companies, people who build solutions themselves. Not for selling shrinkwrapped software.

      --
      P2P Anonymous Distributed Web Search: http://www.yacy.net/
    8. Re:Linux fall very short on backwards compatiblity by 5pp000 · · Score: 1

      Yes, Linux is terrible about this. I have a machine that's still running SuSE 9.0 because I have a commercial app on it that doesn't link with recent glibc versions. Eventually I might have to upgrade the box anyway and run SuSE 9.0 under VMware for the benefit of this app.

      --
      Your god may be dead, but mine aren't!
    9. Re:Linux fall very short on backwards compatiblity by shmlco · · Score: 1

      Sort of answers that whole "When will Linux take over the desktop" question, doesn't it?

      --
      Any sect, cult, or religion will legislate its creed into law if it acquires the political power to do so.
    10. Re:Linux fall very short on backwards compatiblity by bubulubugoth · · Score: 1

      You can still build a new kernel for your distribution.

      You can still maintain you distribution.

      If your application canot be upgraded, you are using an out of date, unsupported application.

      So you have a not relaible software provider, who isn't interested in keeping your bussines up to date.

      Be aware of that.

      --
      Â_Â
    11. Re:Linux fall very short on backwards compatiblity by budgenator · · Score: 1

      Oh come on let's get serious, that is not a Linux problem it's an application problem; and even then it might not be that big of a deal. The application developers knowing that they need a specific version of glibc instead they linked to the most current and got burned, chances are you can copy the glibc version needed onto a new machine, let say you put it in /usr/local/lib and the app will be fine with it and the distro will not over write during updates because its in local. I'm not a programmer so check out the man pages for ld and ldcongfig and for heaven's sake experiment in a sandbox not a production machine

      --
      Apocalypse Cancelled, Sorry, No Ticket Refunds
    12. Re:Linux fall very short on backwards compatiblity by Kazoo+the+Clown · · Score: 1

      It's been my impression that as long as when you update to a new release you keep all the old library versions, Linux is pretty backwards compatible. I'm still running binaries that were built on 0.9 on the 2.6 kernel-- though my /lib directories are getting pretty darn huge...

    13. Re:Linux fall very short on backwards compatiblity by Anonymous Coward · · Score: 0

      Are you also still working on getting a grip on the old IT'S MEANS IT IS thing?

    14. Re:Linux fall very short on backwards compatiblity by Anonymous Coward · · Score: 0
      All I want to be able to do is distribute a binary application that works on all flavors of linux avaliable for the past 5 years and the same for FreeBSD. Is that really too much to ask? Is this an unreasonable request?

      I don't care about direct kernel calls or distribution specific quirks just the standard APIs/c library. Operating systems need to support this out of the box not with a flag or with an optional compatibility library. Its in my opinion rediculous. Not everyone has access to or the desire to run "make" or the resources to keep up on every incompatible update to system libraries.

      Linux is a pain in the ass because there are too many people who incorrectly assume running make solves all the worlds problems. The amount of effort needed to effectivly solve this problem seems very minimal to me ... install compatibility support by default!!

    15. Re:Linux fall very short on backwards compatiblity by dbIII · · Score: 1

      There is no DLL hell on most platforms. Multiple libraries are not a big deal - not even libc.

    16. Re:Linux fall very short on backwards compatiblity by emilper · · Score: 1

      and I have a machine with SuSE 6.2 on it, and I am not going to upgrade it since I'll have to spend like 2 man-month to test the combination between my old app., the new OS and the old hardware. I'd better use that time to test a new version on new hardware on a new OS.

      You don't have to upgrade Linux: older versions of the kernel/libs are still maintained and the bugs fixed, so you can stay with what you are running now. Windows upgrades are ... mandatory ... since MS is always promising that the next M.S.Windows will s*** less.

  3. With open source ... by b0s0z0ku · · Score: 1
    the issue is less worrisome, since the same app (if written well) can be written to compile on many different platforms, unlike compiled applications that are basically immutable unless recompiled.

    -b.

    1. Re:With open source ... by PFI_Optix · · Score: 4, Insightful

      Allow me to do a variation on a Balmer-related meme:

      Dependencies! Dependencies! Dependencies! Dependencies! Dependencies! Dependencies! Dependencies!

      I'm a broken record on this subject, but I've had quite a few nightmare compiles on Linux that have resulted in me abandoning it on my laptop in favor of Windows. At least there the software I want to use works. They have *got* to fix that problem if Linux is going to become a mainstream desktop product.

      --
      120 characters for a sig? That's bloody useless.
    2. Re:With open source ... by archaic0 · · Score: 5, Insightful

      You're sort of missing the point here though. This statement is pretty common in the Linux world... "all you have to do is recompile..." ALL you have to do? Really? All I have to do is re-compile? Assuming I have the proper kernel to begin with, and the proper libraries, along with all their dependencies... I just want to run a program man, I don't want to become a programmer just to use my computer. (90% of office workers speaking, I.T. specific roles excluded)

      The truth is that compiling a program (under ANY platform) IS rocket science level stuff as far as computers are concerned. Yes, a programmer does it in his sleep (as do most Linux daily users). But Joe CEO and Jack employee can click next all day but the moment he has to type ./configure or ./make or whatever, his eyes will glaze over and he'd rather spend a million dollars on a setup wizard app than have to go to school just to learn how to install a free app. Not to mention the fact that 6 times out of 10, you'll get an error and have to track down what went wrong and fix something before you can attempt to compile again.

      Compiling source to a binary IS complex stuff despite what any mainstream Linux supporters might think. And having to re-compile something EVER, WILL keep it from being accepted main stream.

      I've even heard people say "well all ya gotta do is just make your own kernel and there ya go, piece of cake". As easy as that might sound for the Linux guru, that is exactly equal to telling a driver to build their own car. Plenty of mechanics out there that can do it, yes, but EVERYONE isn't a mechanic nor should they be. People who build their own kernels and compile software are the mechanics of the computer world and shouldn't expect all computer users to be mechanics.

      I for one do not ever want my bosses to be as 'smart' as us I.T. guys are. Why then would they have any use for me if THEY know how to compile a kernel? If the world was so enlightened as some people seem to want it to be, then a lot of people would be without jobs because their skills wouldn't be needed.

      Don't get me wrong though, I'm not saying one way is the end all better way, I'm just saying that as long as the corporate world is run by people who just 'want it to work' (which will be forever) software that requires the user to do the programmers job will not fly. All my servers are Linux servers, but that's only because myself and the other techs here are skilled at making them work. I wouldn't DREAM of putting Linux on our desktops. Are you crazy?! Will YOU then be the one who baby sit every soccer mom who comes to work for us and teach them how to use it for free?

      If products could be packaged such that they get compiled during install, but in the background with the user being none the wiser, then it might fly. Like say your installer went out and did all the work on its own of gathering the required libraries while the user only ever saw a wizard with a next button.

      My two cents, take it or leave it...

      --
      [ http://www.dvigroup.net/self ] ...where I keep my pennies and nickels...
    3. Re:With open source ... by letxa2000 · · Score: 2, Insightful
      I agree. From 2002 to early 2006, I was using Linux exclusively on my laptop desktop. I got used to things not working. And although I am a geek, my goal in life is not to Google and investigate to see if I can tweak my OS to do what I want. This year I got a new laptop with XP on it. Everything just worked so I just stayed with that.


      I still have my Linux laptop which I ironically use as a Linux server--something that Linux is good at.

    4. Re:With open source ... by b0s0z0ku · · Score: 1
      If products could be packaged such that they get compiled during install, but in the background with the user being none the wiser, then it might fly. Like say your installer went out and did all the work on its own of gathering the required libraries while the user only ever saw a wizard with a next button.

      Yep, that's more or less what I was thinking. It *can* be done.

      My original point was different. Given a high-value proprietary software package from 1985 with the publishing company long gone and not providing support and a open-source package with the same circumstances, where do you think backward compatibility matters more? One can be tweaked/rewritten to run on newer platforms without completely reinventing the wheel. The other one cannot.

      -b.

    5. Re:With open source ... by Magada · · Score: 2, Insightful

      Products can and are packaged like that. Ever heard of Gentoo, for instance? True that you are left staring at that "Next" button for a long time, ;-) but it does work, there's no dependency hell and when it doesn't work, it's usually a bug in the app, not missing kernel header files or some such inanity. Under the GPL, you are supposed to have the sources. Why not use them?

      Also, soccer mom doesn't need kernel upgrades, or tweaked kernels, or upgrades to apps. She needs security patches, no more, no less. Apps can and should stay the way they are because Aoccer mom doesn't really want to "upgrade". She wants things to JustWork(tm), 'cause she's a luddite.

      --
      Something bad is coming when people are suddenly anxious to tell the truth.
    6. Re:With open source ... by DutchUncle · · Score: 1

      Immutable is good sometimes. I have to be able to prove that I'm shipping the same package, with the same components, and only tiny little bug fixes, or my product's certification is worthless and I have to pay a lot of money to get it recertified. You're saying "Just change everything". That works for toys and games, maybe, but not for telecom and medical and other harshly-tested purposes.

    7. Re:With open source ... by 99BottlesOfBeerInMyF · · Score: 3, Insightful

      If products could be packaged such that they get compiled during install, but in the background with the user being none the wiser, then it might fly. Like say your installer went out and did all the work on its own of gathering the required libraries while the user only ever saw a wizard with a next button.

      I think modern package management is weak on every platform, but by combining several into the OS would bring the benefits you crave. I'm a huge fan of OpenStep/GNUStep/OS X where applications are folders ending in ".app" with a specific structure. This allows for multiple binaries for different platforms in one "file" that can just be copied and run anywhere. There is an increase in size, but given modern hard drives it is tiny, especially since all resources can be shared rather than duplicated. And having those resources separate is great for those of us that want to grab a song or image used in some game we have. The portability and lack of an installation step is really, really nice, especially for novice users.

      To get back to your specific point, I see no reason why source code and build instructions cannot likewise be included in this package. Add a little "build custom binary" option for each application and you have the ability to do just what you ask, but without the drawback of having to wait for an install process. In fact, the OS could automatically schedule the compiling of a custom binary the first time a program is run. There is no need for a wizard at all. Drag the program where you want it and double click. There's no need for dependency checking either since needed libraries are in the package. I really think this level of simplicity would benefit everyone.

    8. Re:With open source ... by tchuladdiass · · Score: 4, Insightful

      The fix is simple, but most people argue against it. Use shared libraries where appropriate, and static libraries where it makes sense. The argument for shared libraries everywhere is that it saves disk space, and it makes updating all your apps easier by just upgrading the libraries they depend on. This is ok for widely deployed and tested libraries, where it is very unlikely that something will break between minor versions. But if a library is likely to be used by only a handfull of apps (such as audio / video codecs), then by all means compile them into the app. That way you reduce the number of dependancies and the breakage, at the expense of a bit more disk space used and the inconvience of upgrading a few more packages when a bug is found in the library in question.

      Note, that this is mearly an issue for third-party packages for your os. Everything that comes with the os can follow whatever rules is best suited for it, as the whole thing is developed together. But I see no advantage to having to track down and install a dozen seperate library packages in order to get a particular app installed, esp. if those libraries are use _only_ by that app. Also, the worst offense a package can commit is to require major updates to packages that are included as part of the os. If the os ships with a supported version of libfoo-1.7.2.so, then the app package should be compiled against that version and not against (and requiring) libfoo-1.7.5.so (or worse, libfoo-1.8.x.so), instead if it actually requries functionality that is only present in the newer lib version, then it should ship with a private copy either statically linked, or installed in the app's lib directory. Because if something else uses that lib, chances are it will need libfoo-1.7.4.so, and be incompatible with libfoo-1.7.5.so (even though minor version increases shouldn't break compatibility, but it happens anyways).

      [ /soapbox ]

    9. Re:With open source ... by Lord+Ender · · Score: 1
      If products could be packaged such that they get compiled during install, but in the background with the user being none the wiser, then it might fly.

      This is called Gentoo. But it can't fly; it's a penguin.

      But because Gentoo doesn't do the minor/major version thing, config files can change with any given update. This again rules it out for all but the most die-hard users.
      --
      A slashdotter who didn't build his own computer is like a Jedi who didn't build his own lightsaber.
    10. Re:With open source ... by bunions · · Score: 1

      >Also, soccer mom doesn't need kernel upgrades, or tweaked kernels, or upgrades to apps. She needs security patches, no more, no less. Apps can and should stay the way they are because Aoccer mom doesn't really want to "upgrade". She wants things to JustWork(tm),

      Ok, great. Now what happens when the security patch -is- a kernel tweak?

      --
      there is no need to sign your posts. this isn't usenet. your username is right there above your post. stop it.
    11. Re:With open source ... by jZnat · · Score: 2, Interesting

      I think the only problem with that is proprietary apps can't statically compile GPL or LGPL libraries, and proprietary apps seem to be the ones that have unfixed dependency issues.

      --
      'Yes, firefox is indeed greater than women. Can women block pops up for you? No. Can Firefox show you naked women? Yes.'
    12. Re:With open source ... by orasio · · Score: 1

      Have you tried Ubuntu?
      What software does your mom need to install?

      My girlfriend uses Dapper and is happy with it.
      My parents use XP, with firefox and thunderbird.
      They use msword to create their own content. They had openoffice, and didn't realize the difference (their tech support guy installed his msoffice copy sometime without their asking for it, and I don't mess with their machine, other than firefox and thunderbird).
      If I wanted to migrate them, they probably wouldn't notice.

      I believe most home users wouldn't have a problem using ubuntu. Most of them have someone to install and configure their XP machines, they need someone to do the same for Ubuntu.

      I don't understand the people that say that installing and configuring linux is difficult for home users, when those are not task for home users. The home user uses what is available. What is available with Ubuntu + Automatix is good enough for the home user, they don't need anything else.

      When people come to my house, they see my gnome desktop, and don't perceive any difference with their XP computer, they can use it with no problems at all.
      Opening a .DOC, exploring with nautilus, importing pictures from the digital cam, synchronizing the cellphone contacts, web browsing, all are tasks that don't need any expertise in Ubuntu. Most non tech-savvy people who use my machine don't even notice it's a non familiar system.

      I think you are making the argument for a fictional user who knows nothing about computers, but is able to successfully install windows software, and administer his windows machine, but somehow can't administer a GNU/Linux machine, and that user just doesn't exist.

    13. Re:With open source ... by tchuladdiass · · Score: 2, Insightful

      But they could ship the dynamic versions, and store them in their own app directory. Then use LD_LIBRARY_PATH, or LD_PRELOAD, or even use dlopen().

      Also, even open source apps have that issue, when you are downloading pre-built packages. MythTV is an example (of coures, it is an unfair example as it is still considered beta). I would rather download one RPM that has the needed shared libraries in a private directory or have most of them statically compiled in this case. That way it would be easy enough to make one package that works on multiple os distros (one rpm should work with rhel / centos 3.x, 4.x, fedora core 4, 5, 6, for example).

    14. Re:With open source ... by Anonymous Coward · · Score: 0

      It's a nice solution, it happens a lot more than you think. However, it can't always work:
      1.) You may need shared libraries internally just for nice plugin support.
      2.) If you want your little instable library to become a big (highly used) stable library you're going to have to make it available like it was as much (with a notice that it's in development).

      Generally speaking this is only an issue with newer applications, and yes, it can be a royal PITA there. And guess what: Half the time the result wasn't worth the effort, because it was a young application and it doesn't do all that much yet anyway.

      The only application I have ever failed to build is Cinerama. I'll admit to giving up on a few others (on Slackware) because I just didn't want to spend 6 hours fishing for dependencies on a slow machine.

      A nice distribution is going to have 97% of the libraries you're going to need. Unfortunately, sometimes they're not up to date (like RedHat's eternally outdated Gtk versions).

    15. Re:With open source ... by SanityInAnarchy · · Score: 2, Informative

      Looks like I'm arguing against it.

      Those who do not understand package management are doomed to reimplement it, poorly. Although you do make a point:

      Note, that this is mearly an issue for third-party packages for your os.

      Perhaps, but most distros now support adding third-party repositories, and even if you don't, when you download a .deb file manually, it's still going to pull in dependencies when you install it.

      Ultimately, I see compiling things statically as being kind of like offering a WinZip Self-Extractor file for a Windows XP program. Ok, it's guaranteed to work, but it's still a bit of pointless waste.

      And by the way:

      Because if something else uses that lib, chances are it will need libfoo-1.7.4.so, and be incompatible with libfoo-1.7.5.so (even though minor version increases shouldn't break compatibility, but it happens anyways).

      There are multiple, very good ways of dealing with this. The libfoo guys shouldn't have broken compatibility, or should've sat around and come up with all the ways they'd like to break compatibility and put together libfoo-2.0.0. Or, the package that's incompatible with libfoo-1.7.5 could depend on libfoo-1.7.4 -- both can easily exist on the same system. Or you could just not symlink libfoo-1.7.5.so to libfoo-1.7.so or any of its other aliases -- packages that know about 1.7.5 can link to the 1.7.5 version, packages which don't know about them will stick with 1.7.4 automatically.

      All of this can be handled by a distro maintainer, so a really simple solution for most of these problems is to simply find a way to allow your app to be distributed, or if you can't do that, pay some developers to maintain parts of the distro that your app cares about, and keep everything compatible.

      And audio/video codecs should not break compatibility between versions... period. How simple can you get? But if you let your app use a shared library, that means your app could automagically get any codec I install with the system.

      --
      Don't thank God, thank a doctor!
    16. Re:With open source ... by Hortensia+Patel · · Score: 1

      Huh? Why can't a proprietary app static-link against an LGPL library? That was the whole point of the license.

      You have to distribute linkable object code for the app, which is what puts people off and pushes them down the .so route, but there's no legal problem.

    17. Re:With open source ... by gfxguy · · Score: 1

      But you're looking at an extreme pathological case. First, if it was so high-value, then the company that made it would likely not have gone out of business. Second, even if that did happen, you're talking about a tiny, tiny fraction of overall computer use.

      In this case, you need to make the most people happy, not some fringe segment who need a 20 year old application to run, in which case they are still free to run just that application on an old OS, if it's that important to them.

      Now, I'm not arguing backwards compatibility isn't important, but there's got to be a time when you say enough is enough and don't let that hold you back from progressing. You're not going to find a requirement to run 20+ year old applications in all but the most extreme circumstances.

      --
      Stupid sexy Flanders.
    18. Re:With open source ... by b0s0z0ku · · Score: 1
      In this case, you need to make the most people happy, not some fringe segment who need a 20 year old application to run, in which case they are still free to run just that application on an old OS, if it's that important to them.

      Actually, there are a lot of cases, just not necessarily in the service industry. Custom control software for manufacturing (no, not all of it runs on microcontrollers). The telecoms industry - phone company *switching equipment* can be 30 yo in some cases, not to mention software. What else? Building automation - many schools throughout NJ are still using Solidyne automation boxes that have long since ceased to be supported. Complete with modems connected to 300 baud serial ports. The application to control them (in a company that I worked at) was a 20 yo UNIX application that no one felt the need to reinvent since the company had 7 employees with better things to do with their time. So when the time to migrate from Radio Shack Xenix boxes (in the 2000s), the code could be somewhat redesigned and recompiled to run under BSD without reinventing the wheel. Had the upgrade been from DOS to Server 200x, I suspect that it would have been total hell.

      -b.

    19. Re:With open source ... by smcdow · · Score: 1
      I don't want to become a programmer just to use my computer.

      I knew it was a bad idea to let the unwashed masses start using computers.

      --
      In the course of every project, it will become necessary to shoot the scientists and begin production.
    20. Re:With open source ... by gfxguy · · Score: 2, Insightful

      But they wouldn't upgrade the OS on those boxes!

      --
      Stupid sexy Flanders.
    21. Re:With open source ... by westlake · · Score: 2, Insightful
      She wants things to JustWork(tm), 'cause she's a luddite.

      a "luddite" rebels against technology that threatens her employment. your soccer mom simply wants to get the weekly financial reports out on time so she can get home to her kids.

      she has every right to expect tech that "just works."

    22. Re:With open source ... by aron1231 · · Score: 0

      No, definitely not a fictional user. I work in IT, and I would NEVER ALLOW, nor ASK or EXPECT end users to install Windows, administer their machine, or even install their own software (some, yes, but not most by a far cry)! There is a very wide range of users out there, most of which fall under the i-don't-know-jack category, or the i-think-i-know-jack-but-really-only-know-enough-to -do-more-harm-than-good category. They are happy if they can do their simple daily tasks without breaking the computer and waiting for hours while I (support) find the time to fix their blunder.

    23. Re:With open source ... by aron1231 · · Score: 0

      let us bow to the new bourgeoisie...

    24. Re:With open source ... by gbjbaanb · · Score: 1

      lol. Yeah, IBM had it right years back - "there will not be a need for more than 6 computers in the world". And *you* won't be allowed to play with them.

    25. Re:With open source ... by shmlco · · Score: 1

      Want to complain about the unwashed masses? Try visiting a college computer lab.

      --
      Any sect, cult, or religion will legislate its creed into law if it acquires the political power to do so.
    26. Re:With open source ... by budgenator · · Score: 1

      Most of us have never had a problem with dependencies, on my distro i just use pacman and it gobbles everything up I need; in most modern distro's it's pretty much a simple operation. Pacman even upgrades across major releases without a problem. I hear Gentoo's package manage is nearly bulletproof and debian's apt-get is legendary.

      The last times I had any issues with dependencies was when I was compiling some pretty exotic applications; some perl modules got intense for a while as well.

      --
      Apocalypse Cancelled, Sorry, No Ticket Refunds
    27. Re:With open source ... by jZnat · · Score: 1

      I understood it as that you had to link to the library if you weren't compatible with the licence.

      --
      'Yes, firefox is indeed greater than women. Can women block pops up for you? No. Can Firefox show you naked women? Yes.'
    28. Re:With open source ... by orasio · · Score: 1
      My original point was different. Given a high-value proprietary software package from 1985 with the publishing company long gone and not providing support and a open-source package with the same circumstances, where do you think backward compatibility matters more? One can be tweaked/rewritten to run on newer platforms without completely reinventing the wheel. The other one cannot.


      That's a political problem, for me because I care aboute free software.
      Free OSs could be able to support that kind of stuff.
      I don't think they should, though.
      If you have a software package from 1985, and are now having trouble with support, maybe your TCO study at the time was not that bright.
      The solution for that kind of problem is: if you can, virtualize the hardware, or get a beter solution, or pay through the nose to the 5 guys who are willing to support you. Then, learn your lesson, and buy/use free software, free software can't die that death.
    29. Re:With open source ... by orasio · · Score: 1

      No one sells that kind of machine.
      Computers at the moment are hard to administer, and not that reliable.
      What she wants doesn't exist.

      Assuming she wouldn't know how to administer her machine...

      She can buy an XP machine, and pay someone to administer and secure it. Ocassional "doesn't work" incidents. Not a bad learning curve for a complete newbie. Easy for an experienced Windows user.

      She could get a machine with Ubuntu, from very few providers, and pay someone to administer. Less "doesn't work" incidents. A good learning curve for a complete newbie. Not bad for an experienced Windows user.

    30. Re:With open source ... by orasio · · Score: 1
      Read again:

      I think you are making the argument for a fictional user who knows nothing about computers, but is able to successfully install windows software, and administer his windows machine, but somehow can't administer a GNU/Linux machine, and that user just doesn't exist.


      I was pointing out that the OP was talking about a user who knew nothing about computers, BUT was proficient administering Windows. That was becuase he was talking about the kind of user to describe, and then complained about Ubuntu administration being hard. That would only matter to someone who actually did administer their machine, not a regular user.

    31. Re:With open source ... by ookaze · · Score: 1

      Really? All I have to do is re-compile? Assuming I have the proper kernel to begin with, and the proper libraries, along with all their dependencies

      Actually, what he says is wrong. All you have to do is have the legacy dependancies, which is what some distro actually did : they furnished legacy compatibility libraries for old closed source apps. So don't get high like that : he was wrong.

      I just want to run a program man, I don't want to become a programmer just to use my computer. (90% of office workers speaking, I.T. specific roles excluded)

      Two news flash : you don't have to, and office workers don't install their apps.

      But Joe CEO and Jack employee can click next all day but the moment he has to type ./configure or ./make or whatever, his eyes will glaze over and he'd rather spend a million dollars on a setup wizard app than have to go to school just to learn how to install a free app. Not to mention the fact that 6 times out of 10, you'll get an error and have to track down what went wrong and fix something before you can attempt to compile again

      All of this is BS, as you don't have to do that, and Joe CEO and Jack employee just don't install their app, be it through "Next" or "./configure". So stop the BS.

      Compiling source to a binary IS complex stuff despite what any mainstream Linux supporters might think. And having to re-compile something EVER, WILL keep it from being accepted main stream

      Fortunately, no one has to do that. Even Gentoo users don't have to do that : it's all embedded in a frontend.

      I've even heard people say "well all ya gotta do is just make your own kernel and there ya go, piece of cake". As easy as that might sound for the Linux guru, that is exactly equal to telling a driver to build their own car. Plenty of mechanics out there that can do it, yes, but EVERYONE isn't a mechanic nor should they be. People who build their own kernels and compile software are the mechanics of the computer world and shouldn't expect all computer users to be mechanics.

      That's because you're completely out of context here. People don't say that to newbies, but to people that want to go the next level of expertise, and have their kernel faster than the stock one. Like someone that want to add power to his car engine. He will have to do it himself or pay for someone to do it for him. His engine then won't be the stock one that everyone has.

      I for one do not ever want my bosses to be as 'smart' as us I.T. guys are. Why then would they have any use for me if THEY know how to compile a kernel? If the world was so enlightened as some people seem to want it to be, then a lot of people would be without jobs because their skills wouldn't be needed

      BS again. Even if your boss knew, that doesn't mean he wants to do it. You would still have your job. Most people know how to clean their room, wash their garments, ... And yet, some companies propose this very service, and they still have lots of clients.

      I wouldn't DREAM of putting Linux on our desktops. Are you crazy?! Will YOU then be the one who baby sit every soccer mom who comes to work for us and teach them how to use it for free?

      You don't have to do that either ... nor have to do it for free.

      If products could be packaged such that they get compiled during install, but in the background with the user being none the wiser, then it might fly. Like say your installer went out and did all the work on its own of gathering the required libraries while the user only ever saw a wizard with a next button

      Gentoo sort of does that, XFCE did that.

  4. Huh? by Salvance · · Score: 5, Insightful

    Something's not right with these links ... is someone just trying to /. their own blog here or am I being redirected? The first link is completely off topic and goes to a post about SoftMac (a Mac emulator), the second is just an example of how one company has 9000 legacy scripts that require older version of windows (+ 400 16 bit programs). So what? This hardly seems like the a front page of slashdot argument for OS Backwards Compatibility ... there's really no argument other than stating the 9000 # and the 3 years it would take to convert them.

    Pure and simple, Microsoft has protected their market share by remaining backwards compatible, and will continue to do so for that reason only. A company like Apple can afford to ignore backwards compatibility to some extent, as this actually drives greater revenue from their loyal customer base buying new software. Microsoft though, cannot afford to give their corporate users a chance to make a migration decision.

    If Microsoft eliminated backwards compatibility, thousands of companies would be in a position where they needed to include the cost of migrating software in the upgrade decision. All of a sudden, Linux would become a viable option for these corporate clients, which Microsoft can't afford. For example, my company currently has over 900 16 bit applications that we haven't touched in ~10 years. Almost all of these run fine under XP and the beta versions of Vista, so upgrading to Vista will be a cheap option. However, if Vista didn't support these 16 bit apps, we'd have to spend years of time and Millions of dollars upgrading ... in this case Linux would likely become our new O/S.

    For this reason, Linux advocates (and many others) would love to see Microsoft remove backwards compatibility, but from a business standpoint Microsoft just can't do it.

    --
    Crack - Free with every butt and set of boobs
    1. Re:Huh? by blindd0t · · Score: 3, Interesting

      Just know that while your 16 bit apps will run under Vista, but this is only true for the 32bit version of Vista, as your programs will always fail to run in the 64bit version... This may not be a big deal now, but it could become a problem as 64bit processing becomes more common.

    2. Re:Huh? by TheThiefMaster · · Score: 4, Interesting

      Then why upgrade the machines running the legacy apps / scripts at all? It's not like the older versions of windows don't run fine. Making sure they're not connected to the internet is all you need to do to make them secure, or if that's not viable then heavily restrict their access with a firewall (preferably hardware). After all, why should a weather data sensing and reporting machine (for example) be able to connect to anything except the database it's sending the data to? Why should it be able to get any incoming connections at all? Even running unpatched windows 3.0 it would be safe if set up like that.

      Do small in-line hardware firewalls exist? Just with an incoming and outgoing RJ45 socket and a hardware circuit that only allows data through to or from a single ip (or range)? I can see many businesses could use these.

    3. Re:Huh? by SillyNickName4me · · Score: 1, Insightful

      Pure and simple, Microsoft has protected their market share by remaining backwards compatible, and will continue to do so for that reason only.

      Since they are a business, in it to make money, NOT to make cool technology, that is the only correct decision for them to begin with.

      A company like Apple can afford to ignore backwards compatibility to some extent, as this actually drives greater revenue from their loyal customer base buying new software.

      Aha? Apple invested a lot of time and efford into making at least the important OS9 applications work on OSX, and for the exact same reason. Again now they moved to Intel hardware, they are spending time and efford to ensure powerpc based apps will work.

      Microsoft though, cannot afford to give their corporate users a chance to make a migration decision.

      Migration is expensive anyway, and is not what this is about. This is about selling upgrades and not shooting yourself in the foot.

      If Microsoft eliminated backwards compatibility, thousands of companies would be in a position where they needed to include the cost of migrating software in the upgrade decision.

      migration: move to another platform/application
      upgrade: move to a newer version of the same platform/application

      Yeah, you can quite argue the later is a special case of the first, but the conversation is a lot easier to follow when you don't do that.

      All of a sudden, Linux would become a viable option for these corporate clients, which Microsoft can't afford.

      It becomes a viable option as soon as the applications for Linux exist. Where they do, it becomes a matter of which choice is more attractive, but all choices that offer the desired functionality are 'viable'

      For example, my company currently has over 900 16 bit applications that we haven't touched in ~10 years. Almost all of these run fine under XP and the beta versions of Vista, so upgrading to Vista will be a cheap option. However, if Vista didn't support these 16 bit apps, we'd have to spend years of time and Millions of dollars upgrading ... in this case Linux would likely become our new O/S.

      A large part of the business world still runs Windows 2000, and I'm pretty sure that if those apps won't run on Vista, your company would stay on XP, possibly paying Microsoft for extended support, untill such moment that there are new applications that will run on Vista.

      The cost of migration in a large environment is first of all related to training people for the entirely different system.

    4. Re:Huh? by stickb0y · · Score: 1
      Something's not right with these links ... is someone just trying to /. their own blog here or am I being redirected? The first link is completely off topic and goes to a post about SoftMac (a Mac emulator)
      The first link goes to the weblog itself. The current entry just happens to be about SoftMac. And Raymond Chen has no need to spam Slashdot to advertise his weblog; it's already well-known in Windows-focused programming circles.
    5. Re:Huh? by Anonymous Coward · · Score: 0

      Maybe you should spend some time learning how to read so you don't look like an ass so frequently.

      Pure and simple, Microsoft has protected their market share by remaining backwards compatible, and will continue to do so for that reason only.

      Since they are a business, in it to make money, NOT to make cool technology, that is the only correct decision for them to begin with.

      Who the hell said new code, or dropping backwards compatibility had anything to do with "cool technology"? Nice strawman. It could just as well be about easing the pains of maintaining the code etc, etc. There is nothing quite like digging in into some old crufty stuff someone else wrote ages ago...

      A company like Apple can afford to ignore backwards compatibility to some extent, as this actually drives greater revenue from their loyal customer base buying new software.

      Aha? Apple invested a lot of time and efford into making at least the important OS9 applications work on OSX, and for the exact same reason. Again now they moved to Intel hardware, they are spending time and efford to ensure powerpc based apps will work.

      And how did you manage to read to some extent as totally? Another strawman. Back to elementary school with you. I won't even bother with the rest of your post.

    6. Re:Huh? by rainman_bc · · Score: 2, Insightful

      If Microsoft eliminated backwards compatibility, thousands of companies would be in a position where they needed to include the cost of migrating software in the upgrade decision.

      As compared to the upgrade path to OSX, where non native apps wrong like a slug in emulator mode?

      Flame away here, but Microsoft has been fairly good with their backwards compatibility. At least as good as OSX, if not better.

      If a law firm for example continues to insist they should be running Word Perfect 5.1 because that's all the legal secretaries want to use, that isn't Microsoft's problem. Moving to Linux isn't going to make that any different either.

      --
      09 F9 11 02 9D 74 E3 5B D8 41 56 C5 63 56 88 C0
    7. Re:Huh? by Jerf · · Score: 2, Informative

      Raymond Chen's blog is worth reading for the technical posts, and the most interesting ones are about Windows reverse compatibility or why certain Windows API things are the way they are, but there is no one link that you can give for them. That's probably why the submitter's links seem unfocused. His blogging software doesn't seem to have any categorization.

      There are some real gems in there and if you are serious about software development you should probably just read the whole blog. Doesn't take that long and you can skip the more personal posts if you like.

    8. Re:Huh? by SillyNickName4me · · Score: 1

      Maybe you should spend some time learning how to read so you don't look like an ass so frequently.

      I suggest you take a bit of your own medicine, and while at it, in your head there is supposedly some grey mass, if that is indeed the case for you, maybe start using it.

    9. Re:Huh? by morgan_greywolf · · Score: 1
      For example, my company currently has over 900 16 bit applications that we haven't touched in ~10 years


      Good news: chances are good that all or most of those 900 16-bit applications would run under Wine without any modification at all.

    10. Re:Huh? by Anonymous Coward · · Score: 0

      How does it feel to be standing in public with your trousers around you feet? Didn't you think anyone would set fire to your strawmen? You must be even more stupid than I thought.

    11. Re:Huh? by Anonymous Coward · · Score: 0

      So I'll have no problem with my legacy 64-bit applications, then?

      http://www.microsoft.com/technet/archive/winntas/t ips/winntmag/dukalph1.mspx?mfr=true

    12. Re:Huh? by SillyNickName4me · · Score: 1

      Since you are obviously too stupid to understand more complicated language, I will put the argument in a very simple statement.

      Technical arguments are irrelevant, the only thing that counts is if it makes Microsoft money.

      Since they are a business, they are entirely correct in arguing that way.

    13. Re:Huh? by bunions · · Score: 1

      I'm sure they have their reasons. In my experience, large IT departments typically don't just upgrade 5000 machines for shits and giggles.

      --
      there is no need to sign your posts. this isn't usenet. your username is right there above your post. stop it.
    14. Re:Huh? by Pope · · Score: 1
      As compared to the upgrade path to OSX, where non native apps wrong like a slug in emulator mode?

      That's a hardware issue, not a software one. Microsoft doesn't make the PCs their OS runs on. I went from 10.0 to 10.4 without having to change the hardware underneath, so your argument is specious at best.
      --
      It doesn't mean much now, it's built for the future.
    15. Re:Huh? by sBox · · Score: 1

      With the rise of virtualization, shouldn't all this be moot? How hard would it be for an IT department to install VMware or MS Virtual PC for many of these OS questions? For legacy DOS/Win9x applications not requiring network support, it's seems very simple. Networked applications running in legacy OSes will have issues with their OS's flaws, but some might run in a NAT'ed environment for improved security. As future feature, the Host OS (XP/Vista presumably) could utilize it's firewall or networking controls to limit exposure. It's really not a leap to see this is where it needs to go. Using virtualization, the host OS could be streamlined into something much, much smaller.

    16. Re:Huh? by 644bd346996 · · Score: 1

      Have you actually used an Intel Mac with Rosetta? Sure, PowerPC binaries are noticeably slower, but even 3d games are have decent performance in Rosetta. Or are you talking about the "Classic" OS9 environment for PowerPC based Macs? That transition is over, and I never heard any performance complaints about Classic - it was early OS X software that was slow. Or maybe you are talking about the 68k to PowerPC transition - I can't imagine a 68k program on a G3 being slower than on a 68k.

      Sure, Microsoft has been very good about backwards compatibility, with a few exceptions. But consider that Apple has changed CPU architectures with fewer problems than some of the Windows rewrites. The Intel transition is worse than previous migrations for Apple.

    17. Re:Huh? by Salvance · · Score: 1

      Thanks - based on your suggestion I went through his blog and realized that it is pretty good. I wish the original story would have been more clear, as the links appeared almost entirely off-topic on first glance.

      --
      Crack - Free with every butt and set of boobs
    18. Re:Huh? by suv4x4 · · Score: 1

      If Microsoft eliminated backwards compatibility, thousands of companies would be in a position where they needed to include the cost of migrating software in the upgrade decision. All of a sudden, Linux would become a viable option for these corporate clients, which Microsoft can't afford.


      I guess you're still missing the point. If Microsoft removes backwards compatibility, Linux won't magically become a viable option at all.

      99.99% of those businesses just won't upgrade. To anything. Ever. I still know banks which use MS DOS 6.0 based software for critical tasks.
    19. Re:Huh? by aron1231 · · Score: 0

      did you add anything useful? maybe i missed it...

    20. Re:Huh? by MojoStan · · Score: 1
      Just know that while your 16 bit apps will run under Vista, but this is only true for the 32bit version of Vista, as your programs will always fail to run in the 64bit version...
      I'm pretty sure a software emulator or virtualization can be used to run those 16-bit apps in the 64-bit version of Vista. Maybe this is one reason Microsoft bought Virtual PC and now offers it for free.

      Their Virtual PC home page says: "Microsoft will also offer the free download of Virtual PC 2007, with support for Windows Vista, available in 2007." Their Vista Team Blog page about Virtual PC 2007 Beta says: "For those not familiar with Virtual PC, it also works the other way around--you can run Windows XP or an earlier OS on Windows Vista. This can be helpful if you have an older application that does not work well in Windows Vista."

      --
      TO START
      PRESS ANY KEY

      Where's the 'ANY' key? I see Esk, Kitarl, and Pig-Up...

    21. Re:Huh? by rainman_bc · · Score: 1

      That's a hardware issue, not a software one.

      Sorry I wasn't more clear - Mac OS 9 to OSX.

      It was an unpleasant upgrade path but one the users followed.

      OSX users tend to upgrade when told to. Windows users just tend to sit back and bitch about being told to upgrade.

      --
      09 F9 11 02 9D 74 E3 5B D8 41 56 C5 63 56 88 C0
    22. Re:Huh? by ConceptJunkie · · Score: 1

      OSX users tend to upgrade when told to. Windows users just tend to sit back and bitch about being told to upgrade.

      That's because Windows users (end users, especially) have learned that upgrading Windows rarely gives you anything you care about.

      Unless you are upgrading hardware to something not supported, I have yet to see a compelling reason to stop using Windows 2000. In fact, the only compelling reason possible is that MS will simply stop supporting it, leaving you vulnerable to whatever new vulnerability comes down the road that week. Of course, for a properly protected machine, even that won't be an issue. MS's biggest problem is that they really got it right with Windows 2000 and haven't done anything since (besides fixing bugs) that 99% of their users care about.

      --
      You are in a maze of twisty little passages, all alike.
    23. Re:Huh? by ThaReetLad · · Score: 1

      If you like Raymond's Blog, you should also watch his talk at PDC05 "Five Things Every Win32 Programmer Needs to Know" - FUN412

      Also check out Larry Osterman's blog (another good MS blogger)

      --
      You can't win Darth. If you mod me down, I shall become more powerful than you could possibly imagine
  5. Standard data format by Neil+Watson · · Score: 1, Insightful

    If corporate data was stored in more open format legacy applications would not be such a problem.

    1. Re:Standard data format by archen · · Score: 1

      That's not always the case. Where I work we have some legacy programs that write their own file formats. It's just binary stuff. We have all the source code from the guy who wrote it too. And it's reams and reams of uncommented qbasic. So are we going to pay some guy thousands to write some updated version in C#? We could also use a different application, but then that's not really a legacy issue if we're willing to abandon the program. No the key here is that it's not worth our time and money to futz with something that already works fine - and that's exactly the sweet spot Microsoft adores. The simple fact is we're more willing to use old versions of windows rather than upgrade the program, and I believe Microsoft is fully aware of that situation because it's not an uncommon opinion.

    2. Re:Standard data format by Anonymous Coward · · Score: 0

      So true.

    3. Re:Standard data format by SanityInAnarchy · · Score: 1

      You have just proceeded to argue directly for parent's point. If your corporate data was stored in an open format, you wouldn't have this problem. "Open" does not mean you have the source code.

      Maybe it becomes clearer if we talk about the second half of that: Standard. An open standard means it's a no-brainer to migrate.

      --
      Don't thank God, thank a doctor!
    4. Re:Standard data format by archen · · Score: 1

      And what is this open standard? XML? SQL? We also have apps that use SQL that are so tangled in table schema logic that we can't migrate those applications either. The point isn't that it's binary, the point is that it's there but no one can be bothered to migrate it. I could read/write the file just fine in perl/ruby/whatever, so in this case XML and other format isn't going to help. Simply put there IS no standard when you make in-house applications where there is no equivalent. And there are a lot of them out there.

  6. I admit to have not RTFA, but by wobblie · · Score: 0

    on the surface, this seems ridiculous.

    Free Software - and also commercial UNIX to a great degree - has the highest standards of backwards compatibility - far more rigorous than anything Microsoft has come up with.

    MS' idea of backwards compatibility is hampered by an ever changing filesystem layout where developers are encouraged to step on the OS as well as other apps. It does not work and never has. For MS, backwards compatibility is delusional lip service - but that is what IT managers like, after all.

    It all goes back to essentially the UNIX focus on adherence to protocol standards, and the MS focus on profit - and a big part of that is breaking protocols to force obsolesence.

    1. Re:I admit to have not RTFA, but by Pantero+Blanco · · Score: 1

      TFA doesn't compare UNIX's backwards compatibility to Windows', or even mention UNIX. It was just an explanation of why the author (not the submitter) feels backwards compatibility is important.

    2. Re:I admit to have not RTFA, but by abigor · · Score: 5, Insightful

      "For MS, backwards compatibility is delusional lip service - but that is what IT managers like, after all."

      Er, have you ever worked in software or IT? Microsoft place the highest emphasis on backwards compatibility, running 16 bit software in virtual machines and 32 bit software natively. I'll ignore your inane comment about IT management, since you sound like you're just making stuff up anyway.

      Can you explain the precise mechanism of this Unix binary backwards compatibility you're talking about? I work with Linux every day and have since 1998. I'm pretty sure if I grabbed a version of, say, Postgresql from those days and tried to launch it now, it wouldn't work, nor would it even compile. Same with any gui desktop app or driver. I haven't worked a lot with AIX or HP-UX since the '90s, but I'd be pretty surprised if a CDE app from 10 years ago just fired up without any problems.

    3. Re:I admit to have not RTFA, but by oldmanmtn · · Score: 1

      If you were running on Solaris, it would "just fire up."

      http://www.sun.com/software/solaris/guarantee.jsp

      --
      - Old Man of the Mountain ---- "I want to disturb my neighbor"
    4. Re:I admit to have not RTFA, but by abigor · · Score: 1

      That's pretty cool! I never really used Solaris, unfortunately, except to fool around with OpenSolaris recently.

      Does this only apply to statically-linked stuff, or does Sun ship all the ancient libs (gui, etc.) like Microsoft does? Either way, it's nice to see.

    5. Re:I admit to have not RTFA, but by pyrotic · · Score: 1

      Highest standards of backwards capability?! What if you maintain a largeish app written in a scripting language like Perl or PHP or Python with a SQL backend? A "simple" OS upgrade required us to change the new default apache config for our URL rewiting scheme, rewrite all our code for PHP safe mode, work out how the distro had changed SQL handling between releases, and go through a rigourous testing process. OK, PHP is one of the most unstable platforms to develop for, but this kind of case isn't that unusual. And doing all this work is required not by the customer, who doesn't care what platform the app runs on as long as it runs, it's required by sloppy backward compatibility between OS releases. "But it's more secure! Think of the new features!" Great. If only we could charge the client for all those hours.

    6. Re:I admit to have not RTFA, but by Anonymous Coward · · Score: 0

      Er, have you ever worked in software or IT? Microsoft place the highest emphasis on backwards compatibility, running 16 bit software in virtual machines and 32 bit software natively.

      Not the "highest emphasis", surely. Windows backwards compatibility is very good, but it has also resulted in various people whose computers I support trying to run 16-bit apps or old 32-bit apps on their WinXP boxes. Guess what? Maybe copy and paste to newer apps doesn't work, or maybe some window doesn't show up, or some menu option doesn't do anything, that sort of thing. There are always little problems, and of course the users expect everything to work perfectly because "Windows is backwards-compatible, right?"

      Let's just say that I know of a few people (including myself) who have set up Win98 systems in VMs to run older apps correctly, and that MS could potentially put more emphasis on backwards compatibility. :)

    7. Re:I admit to have not RTFA, but by ms139us · · Score: 2, Informative

      I appreciate where you are coming from and I cannot comment on AIX or HPUX, but I can comment on Solaris. Sun has been fascist about binary backword compatibility.

      I wrote a 32 bit SCSI target driver in the early-90s using the (then deprecated) Solaris 2.3 ABI and it worked flawlessly until the early 2000s when we were required to switch to a 64 bit kernel, a switch we had delayed since the 90s.

      The company still runs a version of Oracle compiled for Solaris 2.2 (1992?) and it works flawlessly, except it has a bug in its use of log archiving that was masked by earlier versions of the UFS. They still run the 14-year old 32 bit Oracle binaries on a 64 bit Solaris 8 box.

      Backword compatibility is critical in the enterprise, and honestly, much of the OSS world ignores this.

    8. Re:I admit to have not RTFA, but by abigor · · Score: 1

      Yes, I responded to an earlier comment made about Solaris. Very commendable policy. I also fully agree about the importance of this sort of thing in enterprise apps - decision-makers want predictibility looking both forwards and backwards. Surprises and broken apps that may or may not work after a recompile are liabilities, pure and simple.

    9. Re:I admit to have not RTFA, but by christurkel · · Score: 1

      It probably would. I use Solaris and OpenLook apps (remember those?) still work on Solaris 10. This is stuff from the Solaris 2.4 days. So yes, Sun does make sure your old apps work.

      --

      CDE open sourced! https://sourceforge.net/projects/cdesktopenv/
    10. Re:I admit to have not RTFA, but by bunions · · Score: 1

      > Free Software - and also commercial UNIX to a great degree - has the highest standards of backwards compatibility - far more rigorous than anything Microsoft has come up with.

      uh, no. I've run into several programs that just didn't work on given kernels. iBCS springs readily to mind. However, I don't think I've ever found an windows app that didn't work at least adequately well on XP.

      I like Linux just fine, but let's not be blind to it's faults.

      --
      there is no need to sign your posts. this isn't usenet. your username is right there above your post. stop it.
    11. Re:I admit to have not RTFA, but by SanityInAnarchy · · Score: 1

      iBCS is not an app, really -- as I understand it, this kind of thing would have to be in the kernel, right?

      If that's right, let's not be blind to XP's faults, either. I've had a device which had a driver for "Win98 or higher", which, in fact, only worked on Win98, Win98SE, and WinME. 2000 and XP wouldn't even touch it. Fortunately, I only needed this device to work for about 5 mins, so it was possible to set up a Win98 box to run it on, but come on -- Office even breaks file format compatibility across versions of itself -- newer versions of Office can't always read files from older versions.

      Microsoft seems to do a good job of backwards compatibility, and in fact a good job of everything, but only where it would cost them a significant amount of money by not doing a good job.

      --
      Don't thank God, thank a doctor!
    12. Re:I admit to have not RTFA, but by bunions · · Score: 1

      > iBCS is not an app, really -- as I understand it, this kind of thing would have to be in the kernel, right?

      It allows you to run SCO binaries. It was a kernel module, then there was no support for a while, then an awful kernel patch which sort of worked.

      > Microsoft seems to do a good job of backwards compatibility, and in fact a good job of everything, but only where it would cost them a significant amount of money by not doing a good job.

      Well, yeah. But you can say this about pretty much any sufficiently large company. My only point is that the Linux kernel is not exactly something you want to hold up as an example of backwards compatibility.

      --
      there is no need to sign your posts. this isn't usenet. your username is right there above your post. stop it.
    13. Re:I admit to have not RTFA, but by SanityInAnarchy · · Score: 1
      Well, yeah. But you can say this about pretty much any sufficiently large company. My only point is that the Linux kernel is not exactly something you want to hold up as an example of backwards compatibility.

      Well, like anything else, it's backwards compatible through defined interfaces. For one thing, I didn't see a single program notice or complain about the switch from 2.4 to 2.6, probably because the kernel<->userland interface is fairly stable and well-defined.

      As soon as you start talking about a kernel module, it all falls apart. Trying to make that compatible is like trying to make patches to another program compatible across all versions. For clarification: Linux program running on the Linux kernel is kind of like, say, xmms plugin running in xmms -- and, indeed, most xmms plugins run unmodified on new versions of xmms (or bmp, or audacious). However, Linux module running in Linux kernel is like xmms patch working with xmms -- if the module still works across a major version change, that's like saying a wholly custom xmms patch still works in Audacious.

      Miracles do happen, but I think if a kernel can still run unmodified binaries from earlier versions of itself, it's doing pretty damn well, and I do hold it up as an example of backwards compatibility.

      --
      Don't thank God, thank a doctor!
    14. Re:I admit to have not RTFA, but by TheRaven64 · · Score: 1

      I'm fairly sure Linux doesn't move system calls around (most *NIXes don't), so any statically linked binary should work. If your binary depends on shared libraries, then it's the responsibility of the distribution, not Linux, to ensure that it works (yes, buck-passing, I know). I don't use Linux much, but I'll tell you how it works in FreeBSD:

      Each major release is allowed to break backwards compatibility. If it does, an option is added to the kernel to present the appearance of a previous version (i.e. all system calls behave as they would have done in the old version). If you need this then you might need to compile a custom kernel with this support; it's typically enabled for the last two major revisions and some legacy platforms by default. If you're running dynamically linked binaries, you will need to install the old versions of shared libraries. These go in /compat/{platform name}, and can typically be installed from a single port (e.g. compat3x for FreeBSD 3.x compatibility).

      Commercial UNIXes have similar strategies, I believe. The real problem comes with third party libraries; if you have an application that depends on a library that is not part of the base system, then there is absolutely no guarantee that it will work. In the Windows world, people get around this by just bundling a copy of the library with their app. In the *NIX world, this can work too. Static linking is another option.

      --
      I am TheRaven on Soylent News
    15. Re:I admit to have not RTFA, but by oldmanmtn · · Score: 1

      It applies to apps built using shared libraries. Solaris doesn't include
      static libraries anymore, and hasn't for years.

      Apps that statically link against system libraries are evil.

      --
      - Old Man of the Mountain ---- "I want to disturb my neighbor"
    16. Re:I admit to have not RTFA, but by turgid · · Score: 1

      Can you explain the precise mechanism of this Unix binary backwards compatibility you're talking about? I work with Linux every day and have since 1998.

      So go and read about Solaris. They guaratantee 15 years.

      Linux, in the "brave new world" of compile-it-yourself software, does not consider backwards compatibility at all significant.

    17. Re:I admit to have not RTFA, but by abigor · · Score: 1

      You're the third or fourth person to point out Solaris - I am convinced! I have no experience with it, however, which is why I made no mention of it in my post.

      Anyway, my point mainly applied to Linux, and I agree with you 100%.

    18. Re:I admit to have not RTFA, but by swordfishBob · · Score: 1
      Let's see. 10 years ago, OS/2 supported more Windows applications than any version of Windows. (Win95 broke a lot of 16-bit and Win32s apps). I was going to say MS do better now, but the new version of Exchange only runs (supported) on 64-bit OS. The previous version only runs on 32-bit Windows. There will be no in-place upgrades of Exchange.
      Against that there's the repeated /. arguments on MS default security settings vs breaking applications that assume the old, generous defaults.

      IBM's iSeries (AS/400) has maintained backward compatibility through some major system upgrades, including change of CPU, without requiring access to source code, and I believe this was actually a progression through several platforms (system 37, 38, 380, 390 or something like that).

      --
      -- All your bass are below two Hz
    19. Re:I admit to have not RTFA, but by drsmithy · · Score: 1

      Free Software - and also commercial UNIX to a great degree - has the highest standards of backwards compatibility - far more rigorous than anything Microsoft has come up with.

      Which explains why minor kernel upgrades break most kernel modules, right ? That "highest standard" of backwards compatibility ? Why "dependency hell" causes problems "DLL Hell" could only dream of.

      MS' idea of backwards compatibility is hampered by an ever changing filesystem layout where developers are encouraged to step on the OS as well as other apps.

      Developers who hardcode directory paths need to be taken out behind the barn and shot, because they certainly aren't competent enough to be writing anything more complex than "Hello, World".

      It does not work and never has. For MS, backwards compatibility is delusional lip service - but that is what IT managers like, after all.

      For Microsoft, "backwards compatibility" means something that is actually useful, rather than a bunch of theoretical bullshit unix weenies like to boast about on Slashdot.

    20. Re:I admit to have not RTFA, but by drsmithy · · Score: 1

      Can you explain the precise mechanism of this Unix binary backwards compatibility you're talking about? I work with Linux every day and have since 1998. I'm pretty sure if I grabbed a version of, say, Postgresql from those days and tried to launch it now, it wouldn't work, nor would it even compile. Same with any gui desktop app or driver. I haven't worked a lot with AIX or HP-UX since the '90s, but I'd be pretty surprised if a CDE app from 10 years ago just fired up without any problems.

      In all fairness, backwards-comatibility problems on unix platforms are largely contained to Linux. Most other unixes like Solaris - and even OSS unixes like FreeBSD - offer excellent legacy support.

    21. Re:I admit to have not RTFA, but by ookaze · · Score: 1

      Can you explain the precise mechanism of this Unix binary backwards compatibility you're talking about?

      Can you explain the one in Windows ?

      I work with Linux every day and have since 1998. I'm pretty sure if I grabbed a version of, say, Postgresql from those days and tried to launch it now, it wouldn't work, nor would it even compile

      What was your point exactly ? The latest version of Postgresql will work just fine with your old database of 1998. So this is a pretty stupid example.
      The old Postgresql woudl also have far more bugs, far more security problems, ...
      Talking about app backwards compatibility for what are basically servers, is plain stupid. As long as the protocol doesn't change, you have no reason to launch an old version. I'm not sure an old Apache version would compile either, but my web site will work just better on the latest version.

      Same with any gui desktop app or driver. I haven't worked a lot with AIX or HP-UX since the '90s, but I'd be pretty surprised if a CDE app from 10 years ago just fired up without any problems

      That's because you don't know what you are talking about. Backward compatibility on Linux is in fact excellent.
      Lesstif compiles just fine on the latest Linux OS available, and that's what CDE will use, and it will work just fine too, without ANY problem.
      It will actually work better than with older versions of Lesstif. Very old apps will work just fine with the latest libX11 too (except if you use XCB).

    22. Re:I admit to have not RTFA, but by abigor · · Score: 1

      "Can you explain the one in Windows ?"

      Sure. 16 bit apps run in a VM. 32 bit apps have native binary support. MS have an entire team that tests backwards compatibility.

      "What was your point exactly ? The latest version of Postgresql will work just fine with your old database of 1998."

      We are talking about backwards compatibility of binaries. The original poster said Linux backwards compat. is excellent; it is not. It stinks. If I took an old binary, and tried to run it today on my modern Gentoo system, it would not launch. Period. As others have pointed out, Solaris would in fact run a 10 year old binary, because Sun, like MS, have made a special effort to guarantee it.

      "Backward compatibility on Linux is in fact excellent."

      It is terrible. We are not talking about recompiling here. Take a BINARY from 10 years ago, and launch it on a modern system. It won't run. Recompiling is not an option for commercial software purchased by end-users. (Read that last sentence again). Companies with significant investments in legacy systems therefore can't upgrade their Linux systems without breaking stuff. It's normally not a problem with MS and (I've just learned) Solaris, because MS and Sun take special pains to guarantee a high degree of backwards compatibility.

      It is a recognised problem in the enterprise - Linux legacy support sucks. That fact that you won't recognise this tells me you don't work with real systems professionally, but are instead some kind of home hobbyist whose opinions are worth shit.

  7. Helps if you plan ahead... by IvyKing · · Score: 1

    One of the problems with maintaining backwards compatiblity in Windoze is that the whole mess evolved by acreting guano rather than having a clear path for upgrades. That is define where the various modules will interface with each other before you start coding.

  8. Blog's interesting;submission gave me a WTF moment by Pantero+Blanco · · Score: 1, Insightful
    Something that I have read about on Slashdot regularly (where Windows is criticized for bothering with it at all), I thought readers would be interested in exactly why Microsoft spends so much effort on backwards compatibility, and by inference, why it is an important topic for getting Linux adopted by big business.


    Perhaps I misunderstand, but is the submitter trying to say that Linux should learn from Windows in this area? Backwards compatibility is one of Linux's strong points, and Windows' performance in the area is terribly weak. Where are these people complaining about Microsoft spending TOO MUCH time on backwards compatibility; I've only seen people complaining about things being broken with every upgrade.

    Raymond's blog is interesting, though. I'm glad to see someone at MS interested in backwards compatibility.
  9. What the ... ? by khasim · · Score: 1
    Something that I have read about on Slashdot regularly (where Windows is criticized for bothering with it at all),...

    Yeah, and you'll also see posts by people who don't understand all sorts of basic concepts.

    Why complain about them? Why even bother to mention them at all?

    Whether you need backward compatibility has never been in doubt. You simply cannot expect your customers to re-enter all their data every time you issue a patch.

    The question is whether you should bring the old bugs forward for the sake of "backwards compatibility".

    Personally, I believe it should be more of a case of killing the bugs with a new major release and treating it more as a "migration" than an "upgrade".
  10. Compatibility freak? by smittyoneeach · · Score: 2, Funny

    Compatibility freak?
    Retro chic
    Tweak the hardware
    Old-school sleek
    Burma Shave

    --
    Get thee glass eyes, and, like a scurvy politician, seem to see things thou dost not.--King Lear
  11. billions at stake by yagu · · Score: 4, Interesting

    There is a bit of a "you rub my back..." going on when Microsoft maintains backwards compatibility. While MS is still the 800-lb Guerrilla, they have an audience with which they collaborate to some degree to make billions of dollars. MS holds the reins, but the team would refuse to pull at all if Microsoft cut them all of at the compatibility pass -- that would guarantee a stampede to find alternatives in OS implementations.

    I don't think many are aware how hard Microsoft has to work to maintain compatibility... I once talked with one of the MS engineers -- he said much of the OS code has preamble code to run through a giant "case" statement to accommodate and make allowances for either bad or incorrect coding by outside developers, or bugs in their code that don't execute correctly for the outside software. It's a lot of baggage to carry around, but it's baggage worth billions of dollars.

    Interestingly (to me) is I don't think Linux's big task yet is to maintain backwards compatibility with Linux programs (though that would be nice, and seems to mostly be a given anyway), I think the bigger task for Linux is to maintain backwards compatibility with Microsoft programs, specifically legacy Windows software. Unless and until that hurdle is cleared, Linux will always be #2, or #3, etc.

    (Sorry for the paragraph of metaphors.)

    1. Re:billions at stake by clickclickdrone · · Score: 2, Funny

      >While MS is still the 800-lb Guerrilla
      Please tell me you meant gorilla?

      --
      I want a list of atrocities done in your name - Recoil
    2. Re:billions at stake by Lonewolf666 · · Score: 1
      I don't think many are aware how hard Microsoft has to work to maintain compatibility... I once talked with one of the MS engineers -- he said much of the OS code has preamble code to run through a giant "case" statement to accommodate and make allowances for either bad or incorrect coding by outside developers, or bugs in their code that don't execute correctly for the outside software. It's a lot of baggage to carry around, but it's baggage worth billions of dollars.

      Interestingly (to me) is I don't think Linux's big task yet is to maintain backwards compatibility with Linux programs (though that would be nice, and seems to mostly be a given anyway), I think the bigger task for Linux is to maintain backwards compatibility with Microsoft programs, specifically legacy Windows software. Unless and until that hurdle is cleared, Linux will always be #2, or #3, etc.

      I wonder if Microsoft would be better off if they disregarded at least the incorrect coding by outside developers. I guess the baggage you mentioned has had its share of delaying Vista.

      Speaking of Linux, where do they need to maintain backwards compatibility with Microsoft programs?
      That may be a problem for WINE and Samba, but those are Linux applications rather than core components. The Linux kernel is not compatible to Microsoft programs, except if you count the support for FAT.

      --
      C - the footgun of programming languages
    3. Re:billions at stake by VGR · · Score: 1
      I wonder if Microsoft would be better off if they disregarded at least the incorrect coding by outside developers. I guess the baggage you mentioned has had its share of delaying Vista.

      Yes, they would.

      While it's true that the level of backward compatibility Windows achieves is a truly impressive feat, it is also a painful solution for a tragic situation of Microsoft's own creation.

      Microsoft's own plethora of undocumented but useful APIs has caused programmers everywhere to rely on things that were never actually reliable. Microsoft could have told those people that they are engaging in risky behavior and they have no right to complain if a later version of Windows breaks the program. In fact, I have some old MS-DOS books which document the INT 21h assembly calls with that very language: if you don't follow certain rules, we don't guarantee that your program will work.

      It is like a Java program using classes in the "sun.*" packages. You can use the "hey, it works, so why not use it" excuse, but you have no business complaining if the same classes are different or missing in a different Java version. You were warned. And if you submit a bug about it, Sun will glibly tell you, "You were told not to use those."

      --
      The Internet is full. Go away.
    4. Re:billions at stake by Doctor+Memory · · Score: 1
      I wonder if Microsoft would be better off if they disregarded at least the incorrect coding by outside developers.

      Better off from a development and maintenance standpoint, yes. But I've heard that one of the biggest offenders among the "buggy third-party apps" crowd is Lotus Notes. Which is still insanely popular, even among people who have actually used it. I wouldn't be surprised if several of the most popular Windows apps (modulo Office, although who knows?) had some kind of legacy support within Vista. All it takes is one corporation like Exxon-Mobil or GM who has a business-critical app written in Frameworks or something to lean on MS and there you have it.

      With all this virtualization support available now, I wonder if MS is considering just encapsulating entire installations of Windows 3.11/98/NT and running legacy apps on those. That way they could at least clean up their current codebase.
      --
      Just junk food for thought...
    5. Re:billions at stake by LoveGoblin · · Score: 1
      >While MS is still the 800-lb Guerrilla
      Please tell me you meant gorilla?

      Nope. His mental image of Microsoft is a fat man in the jungle setting booby traps. Which I suppose isn't entirely inaccurate.

    6. Re:billions at stake by Anonymous Coward · · Score: 0

      "Microsoft's own plethora of undocumented but useful APIs has caused programmers everywhere to rely on things that were never actually reliable. Microsoft could have told those people that they are engaging in risky behavior and they have no right to complain if a later version of Windows breaks the program"

      ahhhh they did, hence the complaints to the justice department by symantec and mcfee claiming that MS is being anti competitive by blocking said undocumented API's.

  12. It's the data! by cpinto · · Score: 3, Insightful

    Actually, I see a much bigger need to be able to access information than to be able to run old applications. The big problem in all of this is that a lot (if not all) legacy applications have closed data repositories so being able to run those applications in a modern OS is imperative.

    1. Re:It's the data! by CaptKilljoy · · Score: 1

      >Actually, I see a much bigger need to be able to access information than to be able to run old applications. The big problem in all of this is that a lot (if not all) legacy applications have closed data repositories so being able to run those applications in a modern OS is imperative.

      Oh, sure, because the investment in writing and testing the app, refining it over years of use, and learning it by the users can be replaced for free...not.

      Might as well say that leveling a city is no big deal since the land is still there.

    2. Re:It's the data! by cpinto · · Score: 1

      The price you pay for not having more up-to-date applications that are able to do something with that data is an OS that's hard as hell to maintain.

  13. I want to know... by dizzy8578 · · Score: 1

    Why the "copy" command is still broken after all these years. Someone lose the source?

    And speaking of open source, I am building a new bsd box to migrate users to since the original admin missed a year of upgrades and the pieces cannot be upgraded now without serious downtime.

    Ah well. If *nix had backwards compat, we would have the millions of compromised zombies on unpatched boxes.

    --
    *"Cogito Ergo Liberalis"*
    1. Re:I want to know... by Anonymous Coward · · Score: 0
      Ah well. If *nix had backwards compat, we would have the millions of compromised zombies on unpatched boxes.
      Strange, I don't see millions of NetBSD zombies[1]. I think the best proof of a good system is when you have backwards compatibility[2] but still manage to maintain a clean system. That shows you have a good track record of planning ahead well.

      Contrast this to Linux where they don't necessarily have backwards compatibility and rather like to just discard ideas and start from scratch. That's why you see dozens of implementations for certain concepts. Off the top of my head, I'd have no idea what the latest fad du jour is for doing the simple thing of maintaing the /dev tree on Linux. Frequently redoing things and breaking compatibility completely is very bad, because you can never settle on anything. The smallest dissatisfaction with something usually results in a complete redo. How are users supposed to learn Linux this way?

      OTOH, maintaining complete compatibility while doing a lousy job of designing your system is much worse. It means you can never reach the goal of a well-designed system because you always have to drag your past mediocrity with you. Best example is, of course, Windows. It's so rotten beneath the surface that I have given up trying to understand it long ago. It always ends in frustration.

      I'm not saying NetBSD is perfect. It has its drawbacks for sure. However, using it feels very consistent and clean. Its developers are doing a great job of careful planning before implementing things. You can almost always rely on things not completely breaking from one version to another. That's why I personally like the BSDs much better for real world stuff.

      You know if a system sucks when reinstalling is a better option than upgrading (Linux) or when it even degrades by itself over time (Windows).

      [1] To the BSD-is-dead crowd: stfu :)
      [2] From NetBSD's current kernel config:

      # Compatibility options
      options COMPAT_NOMID # NetBSD 0.8, 386BSD, and BSDI
      options COMPAT_09 # NetBSD 0.9
      options COMPAT_10 # NetBSD 1.0
      options COMPAT_11 # NetBSD 1.1
      options COMPAT_12 # NetBSD 1.2, 386BSD, and BSDI
      options COMPAT_13 # NetBSD 1.3, 386BSD, and BSDI
      options COMPAT_14 # NetBSD 1.4
      options COMPAT_15 # NetBSD 1.5
      options COMPAT_16 # NetBSD 1.6
      options COMPAT_20 # NetBSD 2.0
      options COMPAT_30 # NetBSD 3.0
      options COMPAT_43 # 4.3BSD, 386BSD, and BSDI
      options COMPAT_386BSD_MBRPART # recognize old partition ID
    2. Re:I want to know... by SillyNickName4me · · Score: 1

      Why the "copy" command is still broken after all these years. Someone lose the source?

      It works as designed, that you happen to not like how it is designed does not make it 'broken' (tho maybe it makes the design 'broken')

      And speaking of open source, I am building a new bsd box to migrate users to since the original admin missed a year of upgrades and the pieces cannot be upgraded now without serious downtime.

      Don't know what BSD you are talking about, but I have done such upgrades without major downtime, it is merely a matter of making good use of the tools you have (chroot or jail and the ports collection or pkgsrc, depending on which system you use)

  14. Re:Windows Backward Compat? by NineNine · · Score: 4, Informative

    Do people really think Windows does a good job with backward compatibility?

    Absolutely. Probably the best in the industry. You can still run Visicalc on any Windows machine.

  15. With open source the same problem exists by PadRacerExtreme · · Score: 5, Insightful
    Not true at all. All that has to happen is have a supporting library change and the code doesn't work. Two examples:

    I am looking into a problem we have here where my software works fine with GD 2.0.23. If I upgrade GD to 2.0.28 (compiling from source, not using binaries) my code stops working. Everything compiles fine. Everything links fine. Just doesn't work.

    Look at the FOX toolkit. The interface completely changed from 1.X to 2.X. No backwards compatibility. I need to re-write all of my source to handle the new interface.

    --
    Just remember - if the world didn't suck, we would all fall off.
    1. Re:With open source the same problem exists by AdamKG · · Score: 4, Insightful

      The difference is, you still have 2.0.23, and you can keep it forever. With restrictive-licensed software, that isn't the case. With MS moving to yearly licenses- especially for companies- F/OSS is going to look more attractive to companies who can't afford to rewrite their software at a whim- they will love the option of sticking with the earlier library.

      Notice that even though it would be convenient for you to be able to upgrade GD- it's not required. You have an eternal license to it (Assuming it's under an OSS license, which I don't know for sure as I have no idea what GD is :D but it wouldn't make sense in the context if it were proprietary... but whatever. )

      --
      groupthink: It's good for self-esteem.
    2. Re:With open source the same problem exists by Fastolfe · · Score: 3, Interesting

      So don't upgrade major versions. Something breaking between 2.0.23 and 2.0.28 is a bug, and should be filed and treated as a bug (unless it was your error). Have you done that? Important applications should undergo testing when new releases of libraries come out, specifically to catch issues like this. The fact that your testing picks up problems doesn't mean there's a flaw in the process. This demonstrates that the process is working. If you had simply upgraded all of your clients with the assumption that things would work, that would indicate a flaw in the process.

      Something breaking between 1.x and 2.x is expected. A lack of compatibility is expressed right there in the version number. Major projects will keep each major version going independently for some time. You should continue to see bug fixes in the 1.x line even though 2.x is out, provide demand and interest is there.

      It's also open-source, so you're free to keep your own development and bug fixes going if you can fund it yourself.

    3. Re:With open source the same problem exists by Darkforge · · Score: 2, Insightful
      So don't upgrade major versions. [...] Something breaking between 1.x and 2.x is expected.
      You and I have come to expect that, because we're used to it. But that's not the way it has to be; Microsoft has billions of dollars and enormous market share because they don't break backwards compatibility, even with major releases. (If they did, nobody would upgrade, just as you say.)
      --

      When I moderate, I only use "-1, Overrated". That way, I never get meta-moderated!

    4. Re:With open source the same problem exists by mha · · Score: 5, Insightful
      So don't upgrade major versions.


      Not possible - no one supports that old version. If there are any important fixes (not just security, anything) they are always for the latest version. Open source people don't bother supporting older versions... ;-)

      It's also open-source, so you're free to keep your own development and bug fixes going if you can fund it yourself.


      This argument isn't even worth refuting, it's so obviously childish.
    5. Re:With open source the same problem exists by Arker · · Score: 4, Funny

      Not possible - no one supports that old version. If there are any important fixes (not just security, anything) they are always for the latest version. Open source people don't bother supporting older versions... ;-)

      Nonsense. Just use Debian.

      --
      =-=-=-=-=-=-=-=-=-=-=-=-=-=-
      Friends don't let friends enable ecmascript.
    6. Re:With open source the same problem exists by Sancho · · Score: 2, Insightful

      Can you point me to a place that shows that MS is moving to yearly licenses? Also, point me to a clause that says I can't continue running an older version of their software? Thanks in advance.

    7. Re:With open source the same problem exists by Anonymous Coward · · Score: 1, Informative

      > my software works fine with GD 2.0.23

      There are two possibilities: either later versions introduced a bug that breaks your code, or your code does not follow the spec correctly and relies on a bug in the earlier version.

      > Look at the FOX toolkit. The interface completely changed from 1.X to 2.X.

      The FOX toolkit is not 'Linux'. But help is at hand. Just make your code link to (libraryname).so.1 and it will not use the .so.2. You are not forced to use the latest version.

    8. Re:With open source the same problem exists by bunions · · Score: 1

      > Something breaking between 1.x and 2.x is expected.

      Well, right. But the point of the article was that MS doesn't do that. Programs that ran under win3.1 still run on XP. And that's very valuable behavior from a bidness standpoint.

      --
      there is no need to sign your posts. this isn't usenet. your username is right there above your post. stop it.
    9. Re:With open source the same problem exists by Alphager · · Score: 2, Informative

      why this is modded funny is beyond my understanding: Debian supplies its releases with updates for _ALL_ the software included. Oldstable still includes KDE 2.2 .......

    10. Re:With open source the same problem exists by julesh · · Score: 1

      You must be new here. It's a common joke around these parts that Debian takes a very long time to upgrade to new versions of anything.

    11. Re:With open source the same problem exists by SQLGuru · · Score: 1
      Not possible - no one supports that old version.


      1. Hire all of the laid off customer service reps that lost their jobs to India
      2. Contiue to support all of the old versions
      3. Profit!!!

      Notice there isn't a line about ???? in there.

      Layne
    12. Re:With open source the same problem exists by Arker · · Score: 1

      It's modded funny because slashcode does a very good job of selecting fixated morons to be moderators.

      --
      =-=-=-=-=-=-=-=-=-=-=-=-=-=-
      Friends don't let friends enable ecmascript.
    13. Re:With open source the same problem exists by jwsd · · Score: 1

      You are missing the big picture altogether. Software license is but a small part of enterprise IT spending. By keeping legacy systems, IT departments must hire admins who can maintain different systems, which frequently translates into double staffing. It greatly simplifies the jobs of IT departments if they only have to maintain a single version of OS.
      Many OSS zealots, like you, make wrong assumptions about how corporations operate based on their limited personal experience. Doling out a few hundred bucks may be a big deal for you as an individual, it is no big deal for a corporation which has to pay 100 times more to hire a worker. If a several hundred dollar software can make that worker more productive, then it is a very good investment for the corporation. If they have to hire an admin with a six-figure salary to maintain a legacy system because it was free, then it may not be such a good deal after all.

    14. Re:With open source the same problem exists by hairpinblue · · Score: 1

      That's why they call it the stable branch. There's also the testing branch for newer releases, the unstable branch for cutting edge, and if you really want to stay at the tip of the bleeding edge you can compile your own software from source code from the individual projects and make your own .deb packages.

      All hail Debian because it is good.

      --
      Hustlers exist solely through charity. I see their scams, lies, and deceit: I'm too charitable to outright shoot them.
    15. Re:With open source the same problem exists by Alphager · · Score: 1

      I understand the joke, but right in this thread having extremely old software is _positive_ ( = long term support). The Post should have been modded insightful or informative, not funny. It is not a joke in this context.

    16. Re:With open source the same problem exists by budgenator · · Score: 1

      If they did, nobody would upgrade, just as you say after WinXP SP2, we'll have to see what happens with Vista.

      --
      Apocalypse Cancelled, Sorry, No Ticket Refunds
    17. Re:With open source the same problem exists by SnowZero · · Score: 1

      That's because Windows libraries never get past 1.x. Features/cruft get added, but the original design decisions can never be altered, even if they turn out to be terrible. No thanks.

      There are a lot of libraries in Linux/*nix, so you must choose wisely before you commit to one. You have to make sure that their design goals overlap with your needs. If you want stability in interfaces, only choose libraries which are mature, and developed by a community that cares about interface stability.

    18. Re:With open source the same problem exists by SnowZero · · Score: 1

      Apples and oranges. Take that Windows app, and replace some of the DLLs in its program folder with the newest versions, and see how well it runs. Just about everything on Windows is effectively statically linked, save for a few core libraries. If I statically link a Linux app, I don't have any library issues either (this is what many commercial closed-source apps on Linux do).

      Of course, some "important" business apps dive into all sorts of details that they have no business accessing, and feel the need to reimplement the OS whenever possible *cough*Oracle*cough*. They will of course break on an upgrade, as they were effectively designed to do so. Keeps the support contracts up to date I guess.

    19. Re:With open source the same problem exists by beoba · · Score: 1

      Get a stopwatch.

      Connect to the internet using Windows 95/98/NT/whatever's old nowadays.

      Start the stopwatch.

      Find out how many seconds it takes to get a virus.

      Now, find the patch which resolves the vulnerability that said virus took advantage of. Can't find it? That's why people aren't able to run that version of Windows anymore!

      --
      I am not a number - I am a free man!
    20. Re:With open source the same problem exists by Sancho · · Score: 1

      That's absurd, and only applicable if a company needs to a) connect those computers to the internet and b) can't do it behind a router of some sort. I'm not claiming it's a great solution, but it's there. Microsoft doesn't prevent anyone from running these old versions of their OS, and it is quite possible to do so without exposing yourself to viruses.

    21. Re:With open source the same problem exists by dbIII · · Score: 1

      Then bundle the library that works with your application. That is how a lot of commercial software with slow release cycles does it on *nix. Other applications that expect a newer library will be unaffected due to version numbers in the library filename making DLL hell another platforms problem.

    22. Re:With open source the same problem exists by ookaze · · Score: 1

      Not possible - no one supports that old version. If there are any important fixes (not just security, anything) they are always for the latest version. Open source people don't bother supporting older versions... ;-)

      This is pure BS. Older versions are supported where it makes sense, for example the Linux kernel. Even the Gnome 1.x framework was supported for a long time (perhaps it still is). In GD, where later versions are fixes and improvements, this makes no sense. In most FOSS libs, this is the same and makes no sense.
      Only keeping the latest major versions is enough on Linux.
      If what you say is true about GD, it's a bug, and the author will fix it. But I'd bet you use it on Windows, and there's a big fat warning about gd 2.0.24 (and higher) right there on the main page which says you have to recompile your apps on Windows for them to work. Note that this is a Windows only problem.
      You rather sound like someone who tried hard to find a fallacious problem with old minor versions.

    23. Re:With open source the same problem exists by Fastolfe · · Score: 1

      At the risk of perpetuating more "childishness", your hostility suggests you're misunderstanding something. If you pay some vendor for support, you're, of course, at their whim as far as what is or is not supported. But you're always free to move to another vendor that is continuing to provide support when your original vendor stops.

      But you're right: at some point, people are going to say it isn't worth it to continue supporting. At that point, you need to take a look at what you have, what it would cost to upgrade, and what would be involved in self-supporting. If you have developers that are tying into open source libraries to do some work, presumably they have a certain minimum level of competency and could do at least a marginal amount of self-support with little extra expense (aside from their time). If you need more than that, you need to budget for it. Bear in mind that your incremental support costs may go up, but if you've gone this long without needing bug fixes or the like with this open source library, you might find that you don't actually need to support it very much, so the number of incidents should go down.

      Like it or not, you're going to pay to support something. If the vendors have chosen not to, then you need to bring it in house. I don't understand what's so childish about that. It's simple business/economics. Weigh that against backwards compatible upgrades where support is "automatic"--if you pay for the upgrade. There's no such thing as a free lunch.

  16. update treadmill by Speare · · Score: 3, Interesting

    (Also from an ancient Microsoft experience.)

    Microsoft's continued existance has ALWAYS depended on cash cow products such as MS-DOS, Word, Excel and Windows. The only way that a product goes from concept to cash cow is through multiple releases which are sold to end users, offering the vital feedback to improve the product and market preparation to need the product. The only way a cash cow does not turn into a dead cow is through multiple releases which are sold to end users, offering newer features for devotees and fixing some of the most egregious integration problems for enterprises. Without new versions, people grow out of a product. Users adopt a new methodology entirely, or adopt a new product from someone else.

    An update treadmill necessarily requires that the updates keep coming. Users cannot adopt a new update unless it is nearly seamless to synchronize and integrate with the other treadmills they are running.

    --
    [ .sig file not found ]
    1. Re:update treadmill by LurkerXXX · · Score: 1

      The only way a cash cow does not turn into a dead cow is through multiple releases which are sold to end users, offering newer features for devotees and fixing some of the most egregious integration problems for enterprises. Without new versions, people grow out of a product. Users adopt a new methodology entirely, or adopt a new product from someone else.

      Somehow this sounds like accusing MS of doing some evil thing by deliberately creating upgrades for people.

      Is anyone still using Linux 1.0, or Open/Net/FreeBSD 1.0? How about Emacs 1.0? Apache 1.0? OpenOffice 1.0? Still no takers?

      Pretty much any 'big' software package you care to mention is going to have new versions come out over time. Any big package is going to have bugs that need fixed. Any big package is going to have a large percentage of it's users want some new features the wasn't thought of, or feasible on current hardware, when it was originally created. This is hardly surprising or a "MS trick to keep you on a treadmill".

      And very few people who upgrade one software package want to be forced to upgrade/change all the other software they use. Occasionally it will happen, say when someone changes entire platforms (mac to windows or vice versa) when they think the move is worth the extra expense/drawbacks to them, but this happens infrequently, so backewards compatibility is key. There's nothing "MS-only" about it.

  17. Re:Windows Backward Compat? by jimstapleton · · Score: 1

    aside from some stuff that latches on to the kernel (antivirus and drivers mostly), I've found windows to have very good backwards compatability...

    Forward compatability (windows using software written for later versions), unsurprisingly, sucks.

    --
    34486853790
    Connection too slow for X forwarding? Try "ssh -CX user@host"
  18. FUD, FUD, and more FUD by NineNine · · Score: 1, Insightful

    I can run the original Visicalc on Windows XP Pro. Can you name one 27 year old program that you can run on a Mac? I know you can't do that on Linux without having to re-compile, which isn't at all acceptable for end-users.

    1. Re:FUD, FUD, and more FUD by wobblie · · Score: 0, Troll

      Pick any random Linux distribution or *BSD and you will find many "30 year old programs"

      Stop being stupid - most 16 bit windows software does NOT run on windows XP.

    2. Re:FUD, FUD, and more FUD by chrismcdirty · · Score: 1

      That's also the reason Windows is extremely bloated. Is there a reason I need 16-bit compatibility libraries on a 64-bit machine? I don't ever plan to run 27 year old programs, and neither do a large amount of people. Is there a reason that they can't include this backwards-compatibility as an optional patch?

      --
      It's like sex, except I'm having it!
    3. Re:FUD, FUD, and more FUD by abigor · · Score: 1

      "Stop being stupid - most 16 bit windows software does NOT run on windows XP."

      Actually yeah it does, unless it's doing something really wonky. I had occasion to run a few 16 bit freeware programs at a job awhile back, and I was amazed at how well they ran.

    4. Re:FUD, FUD, and more FUD by NineNine · · Score: 2, Insightful

      I don't ever plan to run 27 year old programs, and neither do a large amount of people

      I disagree. There are tons and tons of old DOS programs that are still at work today in many, many businesses. I user several, myself, along with a few 16 bit programs. Not using something simply because it's old is pretty dumb. Do you just throw out old things once they get too old, even if they're still working?

    5. Re:FUD, FUD, and more FUD by chrismcdirty · · Score: 1

      No, but I was thinking more along the lines of home users, not corporate users. It's been a good while since I've seen someone using DOS WordPerfect.

      Vista is already split into 7 different editions, why not a "Compatible" edition for users who wish to have that feature?

      --
      It's like sex, except I'm having it!
    6. Re:FUD, FUD, and more FUD by Daniel_Staal · · Score: 1

      A current Mac? No. The PPC - Intel switch left anything that couldn't run natively under OS X at the roadside.

      Prior to that, yes. Many 'Classic' Macintosh applications could run just fine under the Classic compatablitly layer. Unfortunately that layer has been dropped. There are third-party workarounds avalible though. And G4-G5 Macs are still for sale from Apple at discount.

      Apple has done very well in backwards compatablity. Not as well as Windows, but then Windows hasn't managed two archetecture changes and a complete system rewrite. Currently you can still run programs compiled using the 'Carbon' interface introduced with System 9, without change, but that's as far back as you can go. (Still, that's nearly 8 years. Not great, but not bad.)

      --
      'Sensible' is a curse word.
    7. Re:FUD, FUD, and more FUD by Alioth · · Score: 1

      Since you're running the 27 year old version (which predates both the PC and Macintosh) you will be using an emulator. Therefore, yes - I can run the 27 year old Visicalc on an Apple II emulator on PC, Linux, Mac, BSD and I dare say Solaris.

      As for programs written for the platform - I sometimes like to wind down by playing a bit of Crystal Quest on my Mac. Circa 1986 I think, that game is. Plays just as well on my PowerBook as it did on the Mac Plus in the mid 80s.

    8. Re:FUD, FUD, and more FUD by profplump · · Score: 1

      Windows is backwards compatible, but that it isn't a unique attribute.

      Ignoring the difference in age (1984-2006), almost any Mac program should still work. I run several ancient games -- shareware that I frist played on my 512k (Non-Enhanced) circa 1985 -- on a semi-regular basis on my G5.

      Now you can nitpick about how the second processor family switch broke that compatibility, but Windows doesn't transparently support any processor family switches, and both Intel and PPC Mac supports at least one (either 68k->PPC or PPC->x86).

      Any Mac program that doesn't make assumptions about address length and that follows the standard event processing model works fine. I have run across programs that require 24-bit addressing (which was never recommended; the 68k was 32-bit internally), and programs that don't draw windows or otherwise break when run in a MutliFinder environment (again, never recommended), but for the most part things work correctly. Even things like Desk Accessories, which were never meant to run in a MultiFinder environment, still run without issue.

    9. Re:FUD, FUD, and more FUD by Richard+Steiner · · Score: 1
      That's also the reason Windows is extremely bloated.

      No, it isn't. OS/2 and Linux+Wine or WABI could run several 16-bit Windows programs concurrently and smoothly in an amount of RAM that XP or Vista won't even BOOT in. Something else is causing the bloat.

      There's more to the story than legacy compatibility.

      --
      Mainframe/UNIX Bit Twiddler and long time Windows/Linux Hobbyist.
      The Theorem Theorem: If If, Then Then.
    10. Re:FUD, FUD, and more FUD by TheRaven64 · · Score: 1

      I just ran Visicalc (all 27KB of it), the original DOS version, on my PowerPC Mac, so, I think the answer to your question is 'yes' (if Visicalc is really 27 years old). On FreeBSD, I can happily run applications from System V Release 4, assuming that it was compiled for the same hardware architecture I use. This includes GUI applications.

      --
      I am TheRaven on Soylent News
    11. Re:FUD, FUD, and more FUD by TheRaven64 · · Score: 1
      You can still run Classic MacOS applications on OS X86 in SheepShaver (originally written to allow MacOS apps to run on BeOS). Even copy and paste works. For many things, it's actually better than Apple's Classic environment (for example, Classic apps can run in 256 colour mode, or even 2-colour mode, without affecting the OS X resolution). It runs at about 1/8 native speed, which on an Intel Mac is faster than the fastest machine you could buy when a lot of these applications were released.

      In my opinion, a virtualised or emulated environment is often a much better choice for running old applications than a tacked-on compatibility layer. For one thing, it's a lot easier for it not to take any system resources if you aren't using it.

      --
      I am TheRaven on Soylent News
    12. Re:FUD, FUD, and more FUD by TheRaven64 · · Score: 1
      Now you can nitpick about how the second processor family switch broke that compatibility, but Windows doesn't transparently support any processor family switches

      The Alpha port of Windows NT supported (some) x86 applications via the FX32! compatibility layer.

      --
      I am TheRaven on Soylent News
    13. Re:FUD, FUD, and more FUD by profplump · · Score: 1

      I stand corrected.

    14. Re:FUD, FUD, and more FUD by westlake · · Score: 1
      That's also the reason Windows is extremely bloated...Is there a reason that they can't include this backwards-compatibility as an optional patch?

      does anyone but a Geek a damn about bloat? install the program. run the program. no patching required.

    15. Re:FUD, FUD, and more FUD by drsmithy · · Score: 1

      Apple has done very well in backwards compatablity. Not as well as Windows, but then Windows hasn't managed two archetecture changes and a complete system rewrite.

      Windows has never had an architecture change (although it has been - and remains - available on multiple architectures), but it most certainly has had a "complete system rewrite" (and a much more comprehensive one than OS X at that) - Windows NT.

  19. Two ways by Bluesman · · Score: 4, Interesting

    Backwards compatibility is important, but there are two ways you can do it.

    One is to include all of the old stuff in your new OS, the other is to continue to support the old version, or possibly emulate it on the new version.

    It seems that backwards compatibility significantly impedes progress. Why not continue to support the older versions, but separate them from the new stuff? Our computers are fast enough to run Windows 3.1 in a VM, much faster than it would run on the hardware it was designed for.

    Better yet, include a copy of the old software in the new one, with a built in emulator designed to run it.

    It's important to maintain backwards compatibility, but it's just not a good excuse for bad design decisions in new softare.

    --
    If moderation could change anything, it would be illegal.
    1. Re:Two ways by CaymanIslandCarpedie · · Score: 1

      there are two ways you can do it. One is to include all of the old stuff in your new OS, the other is to continue to support the old version

      At the risk of stating the obvious, continuing support for an old product has nothing to do with backwards compatibility. Now obviously, you can continue to work on old systems to keep something running but that is no way related to backward compatibility.

      That would be like MS advertising:
      The Xbox 360 as 100% backward compatible with every game ever made *
      * - most of those previous games will require you to purchase the console they were originally released for

      That is NOT backward compatibility!

      --
      "reality has a well-known liberal bias" - Steven Colbert
    2. Re:Two ways by beuges · · Score: 2, Insightful

      Mr Chen has also addressed that issue at length as well. There are many problems with simply including an emulator with the new OS that can host the old OS, for example supporting copy/paste between apps in the native OS and apps in the emulated OS. Simply providing an emulated solution for backwards compatibility with the old OS was considered but rejected because it provided a crappy user experience.

      Another example - you have a network share mapped on your native OS. You double-click a file in the network share which is associated with a program written for a previous version of the OS, so it needs to be launched in the emulator. Emulator lauches, and launches the old application. How does the emulator know that this drive needs to be network mapped?

      Not to mention the fact that you'd have two task bars, two system trays, two start menus, etc.

    3. Re:Two ways by Anonymous Coward · · Score: 0

      What?!?!?
      for example supporting copy/paste between apps in the native OS and apps in the emulated OS
      There are emulators (like Virtual PC) and then there are emulators (like running OS 9 programs in OS X) The first has a little window that contains the OS. Yes, this is not the ideal solution but works when the two desktop styles are so dissimilar. (like OS X vs. Windows) However, cut and past does work quite seamlessly between the two. Heck, I can seamlessly cut and paste from my windows machine to my linux box using synergy. (A software based KM switch)

      Simply providing an emulated solution for backwards compatibility with the old OS was considered but rejected because it provided a crappy user experience.
      While not the ideal solution, once the emulator environment is loaded, your programs can run just like they used to, you would just have the overhead of the old OS. In my mind, this helps ease the transition to a new platform while being able to still use those one or two programs you depend on that have no upgrades. I'd much rather have this than have all the bloat in the underlying OS. (Because if I don't need backwards compatibility, I can just kill the emulator)

      Another example - you have a network share mapped on your native OS. You double-click a file in the network share which is associated with a program written for a previous version of the OS, so it needs to be launched in the emulator. Emulator lauches, and launches the old application. How does the emulator know that this drive needs to be network mapped?
      If you've launched the file, your current OS knows it's a mapped file. It passes the file location (as \\machinename\share\prog.ext) and the emulator deals with it. It's not rocket science.

      As I've said, OS X has used this model when they first made the transition to OS X. Once the OS 9 emulator was loaded (which you could tell it to do on startup) you just ran OS 9 programs in OS X. Of course with the switch to the intel chip, it opens up a whole slew of other issues that they bagged backwards compatibility altogether, but different chipsets are a completely different issue. (Probably could have been done but I guess it wasn't worth it to them because it would have been a lot of work)

    4. Re:Two ways by lavaface · · Score: 1

      Using emulation is definitely a great idea, but it would seem that many legacy apps run on legacy/specialized hardware as well. Emulation might not work so well in such an environment, especially if the drivers or protocols for any specialized hardware are closed. Of course, as the cost of new computers plummets and the variety of USB enabled hardware spirals upwards, it may be a decision that makes sense for many businesses in the near future. Especially if the newer machines take the place of several older machines (thin clients, etc.) I realize you must have a license to run older software in emulation environments. How does this work for corporate volume?

  20. a couple questions by stoolpigeon · · Score: 1

    he says, This isn't a company that bought some software ten years ago and don't have the source code. They have the source code for all of their scripts.
     
    this is a bit confusing to me. is he saying they have the source code of the apps and the install scripts or that they have the 'source code' of install scripts only? and if so- wouldn't that just make sense? Are there people out there running some kind of binary install scripts that they can't read themselves?
     
    my next question is this - is the need to run older apps one of cost, or one of technical complexity? i ask this because my initial reaction is that, when i don't want to upgrade something it is usually because i don't want to pay for the new version, if the old version meets my needs. with the open source software i use, i may hold off on an upgrade until i'm sure it is stable, but then i go get it. i understand that in the corporate world it isn't that simple, but is it so complicated that this blog post is accurate? would it still take three years to get their software to install on a new setup if the software and os were both open?

    --
    It's hard to believe that's how Micronians are made. Why don't we see it right now by having you both kiss one another?
  21. This is a good thing by soft_guy · · Score: 1

    Personally, I don't use Windows. I am a self admitted Mac fanboy (OK, also a professional mac developer for the past 10 years.) However, I love diversity. I like the fact that Windows provides the ultimate in backwards compatbility because I can related to the fact that for some businesses, backwards compatbility is the most important thing.

    I love the fact that Windows and Mac and Linux exist. I wish that Amiga and Be could still be serious choices. Because more choices is better.

    --
    Avoid Missing Ball for High Score
    1. Re:This is a good thing by chthon · · Score: 1

      The ultimate of backwards compatibility is IBM mainframes or VAX emulators running code from 40 and 20 years old.

    2. Re:This is a good thing by soft_guy · · Score: 1

      How is that "backwards compatbile"? Oh, it isn't. It is just emulation which is totally different.

      --
      Avoid Missing Ball for High Score
    3. Re:This is a good thing by daverabbitz · · Score: 1

      I don't know about VAx, but on IBM z/Series the hardware natively supports all instructions dating back to the System/360 and if you are running z/OS (formerly MVS), then it implements all API's dating back to the first MVS release.

      I wouldn't really call that emulation, rather than arcane stupidity. Still there are some VERY big companies still running code from the 1970's, though sometimes I wonder if the code is that old, does it really require so much performance that it couldn't be emulated on a much smaller system (hint: Hercules is a mainframe emulator which runs on 64-bit PC's (and 32bit but the performance sucks)).

      --
      What could be better than a jet powered motorcycle? http://www.youtube.com/watch?v=u8l6GTHLSWE
  22. Backwards Compatibility is the ONLY option by Jennifer+York · · Score: 4, Insightful
    Any argument against Backwards Compatibility (BC) is usually based form the point of view from the developer and not the user. A developer decides that it is too hard to implement a feature, or some such thingy, and they decide that a "re-write" is the best option. This is quite often the wrong decision if you are developing software for money. Throwing away the mountain of existing code so that a developer "feels" more comfortable is bad business. There are often better ways to solve this problem, and refactoring the code early and often is a good strategy.

    Now, if you happen to write code for fun, like me, then you are of course free to chuck it all out and start again. The Fun Factor outweighs the cost, since the cost is free. So govern yourselves accordingly, if you want to make money, then do as little as possible to develop the code, if you are in it for love and glory then do it for yourself.

    1. Re:Backwards Compatibility is the ONLY option by Smack · · Score: 1

      It's nice to know your time is worthless.

    2. Re:Backwards Compatibility is the ONLY option by a.d.trick · · Score: 1

      Backwards Compatibility is not a binary thing. There can be systems that are partially compatible and even among those which are not, breaking compatibility amongst hidden kernel interfaces is much different that breaking compatibility with a file format. Also sometimes the benefit can over-weigh the cost. For example computers are not really backwards-compatible with pen-and-paper, but that doesn't mean computers are bad.

      I think what we need is more separation of data formats which should be very, very backwards compatible, API's which should be available as long as their actually being used, and the actual implementations which could turn inside out without bothering the users.

      In this view, Linux isn't actually all that bad. It does have a habit of dropping API's prematurely, especially in the kernel parts, but things like tk and motif are still hanging around for the few applications that use them and data format libraries like libpng etc aren't going anywhere.

    3. Re:Backwards Compatibility is the ONLY option by Evil+Pete · · Score: 1

      I have seen systems running on DOS, at the time Win2k was out. One in particular had been written by a colleague who's solution was so elegant and bug free no-one wanted to upgrade the OS because it would mean a rewrite and the result would not be as good. Time and again I've seen code re-written which ignores a lot of little fixes that are there for a reason but are typically not documented and so seem to make no sense. Sometimes you have to re-write but if you have backwards compatibility it can remove an enormous headache and support burden.

      --
      Bitter and proud of it.
    4. Re:Backwards Compatibility is the ONLY option by syousef · · Score: 1

      That's a twisted point of view and the reason free software is treated with disdain in the business world despite the cost saving.If you're going to spend the time coding, even for fun, and if you're going to release it, make sure it's decent code. Right or wrong people will come to rely on it. If you want to start from scratch the very least you can do is call it something new. Realise you're going to lose a lot of fans by leaving them out in the cold.

      Yes backward compatibility is import. No it's not always the developer that decides not to include it. Management can decide its too costly, or it may simply actually be too hard to mesh new features into the old design.

      --
      These posts express my own personal views, not those of my employer
  23. On the other hand.... by Qwavel · · Score: 1

    While this all makes sense, and some Linux distros must be sensitive to the practical requirements of these corporations, there is another side...

    It is very useful if you can, occasionally, break backward compatibility. With time, it becomes apparent that past decisions were a mistake. Being able to correct some of those mistakes, and do it in a reasonably clean way, makes for a better system.

    So I wouldn't say that backward compatibility is a rule. After all, lot at MS with dotNet. dotNet 2.0 is not backward compatible with dotNet 1.0. If you want your 1.0 program to run on 2.0 you will need to make changes. But you can keep running your 1.0 program on the 1.0 stack which sits side-by-side with the 2.0 stack. In this way they allow for backward compatibility but they also allow for compatibility breaking changes.

  24. Re:Windows Backward Compat? by abigor · · Score: 1

    It is the best in the business, period. Ancient software (i.e. Windows 3.1, 16 bit stuff) will normally run on modern versions of Windows with few if any problems.

  25. Re:Windows Backward Compat? by thomasdz · · Score: 2

    Well, as far as basic filesystems ... Micro$oft has done pretty well...
    I'm guessing that good old FAT-12 (floppy) filesystem from the 1980's is still supported in Vista, right?
    FAT-32 and the more-than-eight-letter-filename system from Windows-98 (95?) is also supported in Vista.

    But I guess, almost everybody still supports lots of old stuff...
    I think Linux still supports the old Minix partition type
    The latest & greatest VMS release can still read & write old VMS hard disks from the 1980s also.

    Thomas Dzubin

    --
    Karma: Excellent. 15 moderator points expire sometime.
  26. Re:Windows Backward Compat? by lymond01 · · Score: 4, Funny

    I put my CD in backwards and it worked just great in Windows. What needs some hard core journalistic investigation is Windows Upside-Down compatibility.

  27. Compromise by MichaelKaiserProScri · · Score: 1

    You need backward compatibility because people still use old apps. You need to eliminate backwards compatibility to get rid of bloat. Seems like the answer is to make the legacy features into optional packages that sys admins could choose to install or not install based upon their needs. They then could balance security against functionality. They could also clearly see what they needed to ask developers to upgrade first. (If we upgrade APP X, we can uninstall LEGACY PACKAGE Y)...

  28. Backwards compatability a must by ohearn · · Score: 4, Insightful

    Trust me in a corporate setting not having backwards compatability is a big deal. For home users it is even worse.

    If you loose backwards compatability you run into the same problem that all the smaller OSs have in getting the corporate world to adopt them on a larger scale. An IT manager may be able to convince the bean counters to give enough money to do the OS swap, but try asking them for the money to have to swap every application you have as well because the old ones won't work anymore. Then on top of that try getting the funding and the authorization for the time to retrain all your employees on new applications that they are not as familiar with. Beyond that, productivity will go down for a while until people get used to the new systems even with training. Now if the new system is truely more efficient (from a worker bee point of view in time to complete a task) this may eventually pay for itself, but do you really think most upper managers are going to be that patient before firing the IT manager for screwing over the entire company's productivity rates? If you do then you are dealing with much more patient managers than I am used to or just folling yourself. That is the true cost of loosing backwards compatability, especially when a large number of your key applications are built in house, then you can't just go purchase the new version that will run on the new platform with minimal retraining needed. For companies that develop a lot of thier own applications in house, you have a lot of down time until the IT departments can recode to whatever new standard the new OS requires.

    Home users are better and worse off in some senses. While a lot of home users will probably just buy the new versions of major software (office software, email, etc.) when they purchase a new computer that still adds a lot to the cost of a machine. For the more technically savvy people out there (this is /. after all), even if you like the new OS and it's features, do you really want to have to replace every app you've got because they don't work properly anymore. Yes VM solutions can mitigate a lot of this, but those solutions are not perfect.

    I was one of the people that MS picked up on a 6 month contract for the extra support load when XP SP2 came out. Take it from someone who was there, the biggest complaint (especially from corporate customers) was when it broke compatability with old apps they were using. I heard a lot of people (and people I knew personally) say that they would install SP2 once the compatability issues were fixed when they eventually swapped to a newer version of the key app that they couldn't live without. Now MS did fix some of those issues with patches shortly after SP2 came out, but imagine that problem scaled up to replacing an entire OS without regards to backwards compatability. I know everyone around here likes to bash MS, but they are not nearly stupid enough to piss off thier corporate customers that badly. They know that would be the fastest way to push people away from Windows in a heartbeat, or at least to insure that not many people bithered swapping to the new version instead of just staying with what they already had that works.

    1. Re:Backwards compatability a must by bigpat · · Score: 1

      On the desktop, backwards compatibility with Windows binaries (through WINE or something) would be better than backwards compatibility with apps written for previous versions of Linux. I think backwards compatibility needs to be looked at carefully and selectively. For years, many Microsoft users just grumbled and accepted it when Microsoft broke backwards compatibility with its .doc format, knowing full well that it was a ploy to get people to upgrade MS Office. Selective backwards compatibility has been Microsofts hallmark, not full backwards compatibility.

    2. Re:Backwards compatability a must by Anonymous Coward · · Score: 0
      Well, if they'd used open source and incremental update and a dependency tree (like debian provides) then they'd be able to upgrade regularly pretty easily.

      Fact is they got pwned because they chose a proprietary operating system and allowed MSFT to attach the furry handcuffs to keep them on a never-ending treadmill of OS reinstalls and service packs.

      Another item on this guy's blog talks about the ShellExecute function and what kind of hoops the implementors had to jump through to make it seem to work in 64 bit, 32 bit, 16 bit environments, with signed and unsigned return code comparisons. I think if MSFT had just designed the API a bit better, those issues wouldn't arise.

      Backward compatibility does leave an OS looking ugly. Best to break it at well-defined places.

  29. I've never criticized Windows for compatability by Chris+Burke · · Score: 3, Insightful

    Because I know they need it. Without compatability with old Windows software, the next buying cycle every CTO on earth would have a chance to consider whatever operating system they wanted since all would involve switching to entirely new software, as opposed to now where buying Windows to replace Older Windows is the automatic choice. It isn't just Window's market share that maintains there monopoly, it's the resulting market share of software for Windows that really does it. Drop that, and Windows' real advantage is gone.

    I do make fun of them for not being able to stabilize and secure some of the old code, though I understand it's tough when the code is old, complicated, and crufty, and a lot of old programs require "bug for bug" compatability.

    I think the solution for them is deprecation. Old interfaces that are stuffed with crufty code, and which were often insecure by design anyway, should simply be made unavailable for new applications. You have an old app that wants to use it, fine. You want to code a new app using OLE or ActiveX or what have you? Tough. Eventually software gets replaced, and eventually you wouldn't have any software using the old systems and you could disable them. Sadly there's still plenty of new development using ActiveX and other crap, so MS both shows no interest in doing this nor may they be able to.

    Now how does this apply to Linux? In Free Software Happy Land, you have the source to all the software on your system, so with the ability to recompile you don't need binary backward compatability. Being able to link your source code against new libraries can fix a lot of the problems with having to support really old binaries. There's still the issue of interface compatability (which is tied up in binary compatability in the Windows world), but a lot of the interfaces are stable.

    This isn't Free Software Happy Land, though, we're talking about businesses. Personally I think that adopting Linux should also come with adopting some of its philosophies, in particular that having source code is much much better than not having it, so if you aren't getting source then it had better be much much better than the program you can get with source. Linux does not have a strong history of binary compatability, and I'm not sure it's best for Linux to start establishing such a history. Business may not like it, but maybe they need to adapt to Linux not the other way around. Who knows, they might figure out that they like getting source code from their vendors and accidentally discover a better way to do things.

    --

    The enemies of Democracy are
    1. Re:I've never criticized Windows for compatability by msormune · · Score: 1

      This is not really fair to Microsoft. They go to great lengths to keep old applications running with new Windows versions, and not just old versions of actual Windows OS. This is because 99% of people do not even know what "source code" is, and they do not need to know. Which means only about 1% of people are able to accept Linux onto their desktops the way you mention.

    2. Re:I've never criticized Windows for compatability by Chris+Burke · · Score: 1

      They go to great lengths to keep old applications running with new Windows versions, and not just old versions of actual Windows OS.

      Of course that's what I was talking about. If it was 'just old versions' that would be, I don't know what you'd call it, "not-changing-anything compatability", which most systems are pretty good at.

      --

      The enemies of Democracy are
    3. Re:I've never criticized Windows for compatability by Rodness · · Score: 2, Insightful

      This isn't Free Software Happy Land, though, we're talking about businesses. Personally I think that adopting Linux should also come with adopting some of its philosophies...

      That's an idealistic view, and completely out of whack for most people. Remember that most businesses (at least in the US) are small businesses, meaning that the IT person usually wears other hats. That IT person is more likely to be a Mom or Pop type who just wants the damn thing to work and doesn't want to go fiddling with source. The moment they upgrade and there's bustage, if they don't switch outright then they're going to make a mental note that it fucked up the business for a week and the next time there's upgrading to be done, they're going to consider something with better backwards compatibility, ie Windows Server or something.

      The analogy to your view would imply that just because I drive a car, I'm interested in doing the maintenance myself.

      If you use Windows, do you automatically share Redmond's philosophies? I didn't think so, or you wouldn't be reading Slashdot. So why should Linux users necessarily share Linux's philosophies?

    4. Re:I've never criticized Windows for compatability by dominator · · Score: 1
      Now how does this apply to Linux? In Free Software Happy Land, you have the source to all the software on your system, so with the ability to recompile you don't need binary backward compatability.

      This is still a huge problem in Free Software Happy Land, and there's a good reason why the GTK+/GNOME and the QT/KDE folks strive *really hard* to maintain API and ABI compatibility between releases.

      If your program relies upon a shared library, and that library breaks ABI compatibility, though, you're still screwed. Sure, there are work-arounds if you control your program's sources - you could statically link things in, or do some LD_PRELOAD hack to load the right version of the right shared libraries. But this assumes that you have a lot under your control. You might not have this luxury if you're using a 3rd-party proprietary library or program.

      But then there's also API breakage, which is a major part of "backwards compatibility" that must be taken into account. If the kernel syscall numbers (or the arguments thereto) change, there's major breakage. inotify vs. dnotify vs. fam? udev vs. static dev? Does your program assume that /dev/fd0 is the floppy drive?

      In short, the solution isn't always as simple as "just recompile your apps against the newer library".

    5. Re:I've never criticized Windows for compatability by Chris+Burke · · Score: 1

      If your program relies upon a shared library, and that library breaks ABI compatibility, though, you're still screwed. Sure, there are work-arounds if you control your program's sources - you could statically link things in, or do some LD_PRELOAD hack to load the right version of the right shared libraries. But this assumes that you have a lot under your control. You might not have this luxury if you're using a 3rd-party proprietary library or program.

      I come at this from the standpoint of a debian user, where the update of the library would also bring an update of dependent software, so ABI compatability isn't as important because everything gets updated to the new ABI. Yeah, it's true that a 3rd party proprietary program can't do this, which is why I'm suggesting that to get the most out of Linux businesses may want to move away from such programs or start negotiating for source access. I readily admit this may not be feasible.

      But then there's also API breakage, which is a major part of "backwards compatibility" that must be taken into account. If the kernel syscall numbers (or the arguments thereto) change, there's major breakage. inotify vs. dnotify vs. fam? udev vs. static dev? Does your program assume that /dev/fd0 is the floppy drive?

      Yeah, I realize that APIs are actually less stable than I implied. Free software still has the nice property of being a more dynamic system that can be updated to track API changes, but it isn't as easy as just recompiling in all cases by any means.

      --

      The enemies of Democracy are
    6. Re:I've never criticized Windows for compatability by Chris+Burke · · Score: 1

      You have some good points, especially regarding maintenance, however...

      That's an idealistic view, and completely out of whack for most people. Remember that most businesses (at least in the US) are small businesses, meaning that the IT person usually wears other hats.

      Actually I thought small business IT centers were a place where Linux (being cheap and not having any licensing issues) started its rise to server prominence. In particular, my step father is an example of exactly who you are talking about (the "IT person" whose main hat is developer) and for him it's Linux, Linux, Linux.

      That IT person is more likely to be a Mom or Pop type who just wants the damn thing to work and doesn't want to go fiddling with source. The moment they upgrade and there's bustage, if they don't switch outright then they're going to make a mental note that it fucked up the business for a week and the next time there's upgrading to be done, they're going to consider something with better backwards compatibility, ie Windows Server or something.

      Well then that person isn't an "IT person" in quotes or otherwise. If they are non-technical, then they should be buying a pre-built server and pay for support from their OS and application vendor, and make it their problem to figure out the backward compatability issues when Mom and Pop decide to purchase new machines. Yes, this might mean they buy a Windows machine. Or RHEL and a support contract. Or they break down and hire a techie.

      If you use Windows, do you automatically share Redmond's philosophies? I didn't think so, or you wouldn't be reading Slashdot. So why should Linux users necessarily share Linux's philosophies?

      I don't use Windows. But if I did, I would have to adopt some of Redmond's philosophies in order to make optimal use of the machine. I'm not talking about the "how I should live my life, what is the definition of freedom?" kind of philosophy, I'm talking about design and software usage philosophies. And the reason Linux users should necessarily share some of Linux's philosophies is because they make sense in that system. Why should Linux have to change its philosophy to suit other people's philosophies any more than Redmond changes their design based on what free software hippies like me want?

      --

      The enemies of Democracy are
    7. Re:I've never criticized Windows for compatability by Anonymous Coward · · Score: 0

      Your ideas won't work. Deprecating old APIs doesn't buy you anything because some people never migrate to new software. There are still hospitals running their operations on 20-year-old software. They can't ever run the app in a VM because it has to interact with other systems (like reporting) that aren't 20 years old. And having source code wouldn't help because it would have to be ported, which is much more work than just leaving it as is.

      Just look at Raymond's example. This company has hundreds of 16-bit applications. Porting them is too much work even if they have the source code and replacing them requires too much retraining.

      Even Unix source isn't easy to port. Old code has assumptions like all filenames are no more than 14 characters long, all users are stored in a file called /etc/passwd, and certain things are found by traversing data structures in /dev/kmem! Of course code like that wouldn't run anymore anyway.

      dom

  30. Not only backwards compatibility... by evansvillelinux · · Score: 1

    Not only do I think backwards compatibility is very important, but ease of use and being able to use existing hardware are just as important too. I am putting Ubuntu Linux on a few machine for some folks right now and so far it's been going pretty smoothly. Hopefully, I can get my mother-in-law switched over so that she can not only keep her current machine BUT she can stop getting those damn spyware infestations from those crappy screensavers she just loves. LOL.

    --
    IMHO, IANAL, TINLA, etc...
  31. Standard Slashdot Wishing. by Anonymous Coward · · Score: 0

    And if Cain had been nicer to Abel we wouldn't be having the wars we are? But since we don't, wishing that the world was something it's not is useless.

  32. Big Business by Anonymous Coward · · Score: 0

    Yeah it sure is a shame big business won't use Linux because it's not backward-compatible.

    Oh wait.... it is, and they do.

    Next story.

  33. Re:Blog's interesting;submission gave me a WTF mom by NineNine · · Score: 1

    Backwards compatibility is one of Linux's strong points

    Do you have an example of a 27 year old program that can run on a current install of Ubuntu, without having to do anything else? I'm looking at Visicalc on Windows XP Professional right now.

  34. FUDmeister! by NineNine · · Score: 2, Insightful

    Pick any random Linux distribution or *BSD and you will find many "30 year old programs"

    Well that's a good argument, isn't it?

    Stop being stupid - most 16 bit windows software does NOT run on windows XP.

    Really? Are you just flat out lying in order to accomplish something, or are you really that clueless? Would you like to see a screenshot of what I have running right now, my intelligence-challenege little friend?

    1. Re:FUDmeister! by LordSnooty · · Score: 1

      All you need to do is go Start | Run | sysedit, there's a 16-bit app right there.

    2. Re:FUDmeister! by Anonymous Coward · · Score: 0

      Would you like to see a screenshot of what I have running right now, my intelligence-challenege little friend?

      Yes. I think you're bluffing.

    3. Re:FUDmeister! by Qamelian · · Score: 1

      You shouldn't be so quick to judge. I've had plenty of Windows apps that refuse to run and in some cases refuse to even install on newer versions of Windows. After blowing the money on Windows 2000, I found that 8 critical applications in my recording studio would either A) not install, B) not execute, or C) die shortly after executing. All 8 apps worked fine on Windows 98. They also ran fine when I tested the later on XP, but Windows 2000 was a wash out. We also go through this dance at my day job every time we upgrade to a new version of Windows. When you get older software to run on newer versions of Windows, it seems to be more by luck than by design.

    4. Re:FUDmeister! by Anonymous Coward · · Score: 0

      2000 isn't a 98 upgrade. It's 98 -> ME -> XP, or NT -> 2000 -> XP

    5. Re:FUDmeister! by Anonymous Coward · · Score: 0

      I'm generally pretty anti-MS, but your comments about Win 2K and Win XP are unfair to MS given the history of windows. W2K was never supposed to be the sucessor to or highly compatable with Win98 and was never sold as such; it was the sucessor to NT 4. The upgrade path from Win98 was WinMe which despite apparently sucking in a number of ways (so people say) was, I believe, reasonably compatable with Win98. Finally, Win XP was the sucessor to both WinMe and Win2K, unifying the two branches, and is reasonably compatable with both (and Win 98).
      So it would be quite likely that many applications running in Win98 would fail in W2k and then work in WinXP. I bet if you'd followed the correct upgrade path (win98 to winXP with an optional Win Me stage between) you'd have had few or no problems.

  35. SCO unix 2 linux migration req. backwards compat. by coagen · · Score: 1

    Lucky me, I am currently attempting to move a proprietary program compiled with a proprietary compiler in Cobol-74 to a Linux machine from an old sco box.... I've had to learn more about Unix backwards compatibility than I ever wanted to know. :| Ugh. I'm compiling in linuxabi now... as I type this. Has anyone else had to do this? I could certainly use some advice....

  36. Re:Windows Backward Compat? by LordSnooty · · Score: 3, Funny

    torrent plz

  37. Re:Windows Backward Compat? by Jay · · Score: 2, Interesting

    Backward Compatibility: Running your COBOL written in 1971 on the current release of z/OS without changes.

    FYI: the hardware architecture has gone through 2 addressing mode changes since then - from 24, to 31, and now 64 bit addressing.

    --
    You think emacs is evil?! You've never used VM's XEDIT have you?!! That's evil, baby!
  38. Re:Windows Backward Compat? by NineNine · · Score: 0

    No need. The whole program is 27K.

    http://www.bricklin.com/history/vclicense.htm

  39. Re:Blog's interesting;submission gave me a WTF mom by mabhatter654 · · Score: 1

    Windows has pretty good backward compatibility for binary programs. In most cases you can dig out a CD or Floppy from 10-15 years ago... or longer, and windows will still know what to do with it. Even with some of the really flaky "copy protection" companies used to build by putting broken code in their EXEs windows will still try to recreate those bugs and run the program. It's quite impressive how much time they spend re-engineering their mistakes in each new OS because you CAN'T update your software for the new OS.. that's the game... it's a "binary-only" world and they try like hell to keep it that way.

  40. Re:Windows Backward Compat? by captnitro · · Score: 2, Interesting
  41. I for one by Anonymous Coward · · Score: 0

    Welcome our new old school Burma Shave overlords.

  42. Re:Blog's interesting;submission gave me a WTF mom by SillyNickName4me · · Score: 1, Insightful

    Backwards compatibility is one of Linux's strong points

    Hmm.. you sure about that?

    I seem to recall a few issues with this...

    ie, multithreaded applications built for 2.4 may encounter problems on 2.6 unless you set some specific environment variable.
    Or.. how about the nice compatibility between glibc versions?

    As long as you can recompile your software, Linux provides excelent backward compatibility, but that is a non-option for many situations.

  43. How do you explain the travesty that is Vista? by Great_Jehovah · · Score: 2, Informative

    We have several in-house apps that were written recently enough to be done in C# and none of them work in Vista. We have two guys working to convert them and they've had no success after spending dozens of hours on the problem.

    1. Re:How do you explain the travesty that is Vista? by LunaticTippy · · Score: 2, Informative

      What's the problem? I converted all our in-house vb.net and c# code to work in vista already. The only hiccups I had were a quirky parallel port library for some external hardware. Most of our apps didn't even need to be recompiled.

      --
      Man, you really need that seminar!
    2. Re:How do you explain the travesty that is Vista? by Anonymous Coward · · Score: 1, Informative

      Of course you can write poor programs that don't work. If you do idiotic stuff like hard code "C:\Documents and Programs\" etc. instead of looking up the user folder using the appropriate API, you'll have problems because you're not programming correctly. I see this all the time, mostly from developers who don't understand best practices of developing software. Recommendation: find some real developers.

    3. Re:How do you explain the travesty that is Vista? by Anonymous Coward · · Score: 0

      Are they idiots?

  44. Re:Windows Backward Compat? by mrcparker · · Score: 1

    You can still run it under Linux (with dosbox)

  45. Free upgrades by Kjella · · Score: 1

    ...solve the biggest issue why companies don't want to upgrade. Yes, there's compatibility testing and user retraining and so on and so forth, but if every 18 months you need to update your glacier-like distro like RHEL/CentOS, Debian stable or Ubuntu LTS, is that really a big hurdle? How much in linux userspace will break? And even then you got 18 months in which to either migrate it or just stay behind - I think the 2.0 kernel is still maintained, if nothing else. Firewall it down and run what you must. Of course, things are different if you have your own embedded thing going with drivers and such it's another hairball. I suppose ALSA, CUPS etc. have changed, but X11 hasn't, have any relevant for a server? Or even a corporate desktop? (ok, printing is rather vital but sound is not. Nor does you age-old machine need to be the one you print from). Linux has had a habit of "let's break it until we do it properly", I remember that with certain GCC versions at least. But that also means that it really does work - you don't need huge workarounds for broken functionality.

    --
    Live today, because you never know what tomorrow brings
  46. Re:Windows Backward Compat? by $RANDOMLUSER · · Score: 2, Funny

    Lost the source, did you? ;)

    --
    No folly is more costly than the folly of intolerant idealism. - Winston Churchill
  47. Linux Backward Compatibility: Emulation? by Ice.Saoshyant · · Score: 1

    I've heard once that backwards compatibility on future products would use emulation. In theory, future hardware will be powerful enough to cope with such pratices. And I think whoever said that is right. Either emulation or dynamic recompilation at kernel level si the way to go. If Linux (and maybe GCC too) focuses on these right now, the change to 64bit platforms and higher without backward compatibility will be a breeze, and not a nightmare as some in the industry fear. Food for thought, I guess.

  48. Re:Windows Backward Compat? by plopez · · Score: 3, Insightful

    Probably the best in the industry
    Only if you ignore IBM. Their customers spend huge sums on very large, capable machines and expect a huge ROI (banks, oil companies, gov't institutions) so there is old JCL and Cobol running on mainframes going back to the 70's. If it doesn't run natively, you can always run it under VM.

    I for one haven't found any useful applications I can run prior to mid 90's.

    --
    putting the 'B' in LGBTQ+
  49. It is only hard for Windows. by funwithBSD · · Score: 0, Troll

    Solaris has backward compatable binaries back to 2.5. Any binary compiled on previous versions can be expected to run on a later OS.

    VMS provides the same comptiblity through a byte level re-compiler, however crossed hardware platforms from VAX to ALPHA and now to INTEL.

    --
    Never answer an anonymous letter. - Yogi Berra
  50. Re:Blog's interesting;submission gave me a WTF mom by testadicazzo · · Score: 1

    vi, emacs, ls, grep, yacc, lex, tex... hella lot of the code is ancient.

    Maybe you mean a 27 year old binary? It would be pretty difficult to find a 27 year old binary in the Gnu world, since it's easier to just recompile the binary for whatever system the binary is supposed to run on. Before decrying 'but that's too much hassle for a user' remember: This doesn't have to be done by an end user. I use a all of the above software, and whole lot more, without ever having recompiled the stuff. I installed it all in an automated installation procedure that was easily as comfortable as any Microsoft has ever given me. At the moment this work is being done by dedicated volunteers and a few professionals, but the results are as reliable as those in the windows world, and it's likely that this will change as free software gains more commercial acceptance and investment. It's pretty rare in the free software world for a project of any size to completely stop being maintained. As long as someone is willing to pay a little for support, or (more often the case) if one or more of the users is an enthusiast, the project will continue.

    In the commercial software world, it becomes very important that a binary continue to run becuase the source is not available. It can and does happen that some wonderful piece of software gets completely orphaned, becuase the company went out of business (often becuase it could not compete with Microsoft). The users of that application better hope that their binary continues to run on whatever machines they get in the future, because they simply have no alternative. If it stops running, they have to switch to some new software. If the software they are replacing involves story any large amounts of data in some proprietary format, they're in for a tough job... in the worst case paying people for manual data entry. In fact I watched precisely that happen a couple of times while working as a DBA for Reuters. In both those cases, has the software, or at least the data storage format, been free and open, it would have been much cheaper and less effort to pay a programmer to make the necessary changes and recompile.

    There are a few lessons to be learned for library writers: Whenever possible write backwards compatible library interfaces. But for the most part this is done pretty well. People rarely change library interfaces without good reason, the code maintainers of reliant projects are responsible to either maintaining access to old libraries, or updating their calls.

  51. Backwards what? by Anonymous Coward · · Score: 0

    It isn't such a huge concern for linux because apps are /typically/ availiable as source tarballs. This means that should an ABI change, the user only needs a rebuilt package. This is also why standards are important, perhaps Microsoft wouldn't have to work so hard at backwards compatability if they stopped deliberately breaking, skirting and extending them!

  52. This is also Linux' weak point by Anonymous Coward · · Score: 0

    And quite frankly I think that "open source software" as a whole is suffering tremendously from the lack of this feature. Its also one of the main reasons why I ran from Linux to Solaris the moment their x86 release (Solaris 10) managed to smoothly run on my hardware. Quite frankly, I think this issue alone is causing Linux never to really get onto the Enterprise market.

    Just check, for example, Berkeley DB. A commonly used database package, now check how many versions are available on your distribution. Chances are high that you have multiple copies, basicly doing the same thing. However, program A depends on version 2.x while prograb B depends on version 3.x. And because this is a classic example of something not being backwards compatible you're forced to keep multiple copies around.>br>
    Who is to blame? No one ofcourse since this is open source software, totally free to use as you feel think or like. Which is IMO the whole problem when you're looking at "open source software" in common. There are no rules, there are no demands and so one cannot expect (or better put: demand) quality. Yet on the other hand people do keep yelling and whining about how great the whole product is and how its capable to compete with every other product out there, from Windows to Solaris.

    To those people I'd like to say: Welcome, to the real world.. Linux, as well as other open source operating systems, is indeed very capable and commonly accepted and used. But as we Linux users have kept telling Window users over and over again: Quantity doesn't make quality and it seems to me that this is exactly what most Linux zealots keep forgetting these days. Ofcourse, there is no denying that Linux has booked major successes and is commonly adopted. But its wrong to think that those numbers now tell you that Linux is just as capable as some of its counterparts. Whats that? This thing only happens with "lesser developers" or "evil company like developers" I hear? SO tell me, already forgot how gnu/tar (which I consider to be a key component to Linux) has done the exact same thing when they changed parameters?

  53. Re:Windows Backward Compat? by mattwarden · · Score: 1

    Visicalc is a DOS program.

  54. Re:Blog's interesting;submission gave me a WTF mom by brunascle · · Score: 2, Funny
    #!/bin/sh
    echo "Hello, World"
    what do i win?
  55. Backwards compatible as a Marketing Term by mpapet · · Score: 1

    Is the reference that most everyone here is commenting on.

    Best case scenario for most sysadmins is backward compatibility is the equivalent of a broad fallow field with landmines randomly placed. Everything else is just arguing how many angels fit on the head of a pin.

    I will argue that backward compatibility is something a PHB throws out when she/he wants to say no to something without having to specify their concerns. It's not a reason why the purchase order is cut for your company versus your competitor.

    I'm positive I'm not the only one who has had backward compatibility issues with Microsoft apps. IMHO backward compatibility has fallen out of favor for Microsoft. My last nightmare was installing a clustered instance of MSSQL 2000 running on a new win2003 cluster node. Yet there are many fanboys who will claim exactly the opposite.

    I also admin Linux servers and find "backward compatibility" is mostly solved with backports. Debian is one distro that provides backports. http://www.backports.org/dokuwiki/doku.php Double-plus goodness right there. If you really -must- have it in Linux, downloading sources and working out libraries is not hard. Time consuming, but not hard. I speak from experience.

    --
    http://www.maxineudall.com/2010/02/should-economists-be-sued-for-malpractice.html
  56. Re:Windows Backward Compat? by TCM · · Score: 1
    Do people really think Windows does a good job with backward compatibility?
    On the surface, yes of course. You can run old programs on newer versions of Windows.

    What you certainly don't want to ever do, though, is looking under the hood of Windows. That's where they failed completely. To support this backward compatibility and because they did a lousy job of designing their system, Microsoft has to drag along gazillions of quirks and hacks.
    --
    Of course it runs NetBSD. BTC: 1NT7QvbetmANwaMzhpVL6
  57. Emulation by Richard+W.M.+Jones · · Score: 1

    Do you have an example of a 27 year old program that can run on a current install of Ubuntu, without having to do anything else? I'm looking at Visicalc on Windows XP Professional right now.

    Linux (and indeed Windows) can run quite a lot of old software through emulation, including tons of 27 year old games, Visicalc (using something like dosemu+freedos), CP/M programs under Z80 emulators, and Windows programs under Wine (not that any of those are 27 years old).

    In fact emulation is possibly a better way to run old software because you can keep your operating system shiny and new but still run the old stuff. I think this is one thing that the Mac OS 9 -> Mac OS X did absolutely right.

    Rich.

  58. wrong OS by valwig · · Score: 0, Troll

    How does Microsoft try so hard to be backwards compatible? It seems to me that they try to do the exact opposite, with version lock-in in programs like Word. OpenOffice can handle more versions of Word files than any version of Word ever could.

    --
    -- 3till7.net
  59. Public Enema #1 by Orrin+Bloquy · · Score: 1

    Chen is the douche who hamstrung progress at Microsoft by mandating that all undocumented behavior should be supported in future OSes. He insisted on a patch to ensure SimCity for DOS could still work in XP.

    I see a lot of business whiners here complaining that backwards compatibility is a dealbreaker. Interestingly, none of these people seem to believe a software vendor should be held responsible for their code NOT relying on undocumented behaviors, or a vendor being responsible for patching their apps to remain compatible. When I see PHBs and IT folks holding their vendors as accountable as they do one OS vendor, I'll buy this bullshit.

    OS changes don't happen in the dark. MS and Apple repeatedly inform developers what's happening with their OSes, what's being deprecated and what isn't.

    You and your customers do not have a God-given right to have seven year old code run flawlessly in perpetuity through OS upgrades. If you don't get this, don't fucking upgrade your computers. No one's holding a gun to your head, metaphorically or literally.

    Change happens. Work like it happens or quit bitching.

    --
    "Made up/misattributed quote that makes me look smart. I am on /. and I must look smart."
    1. Re:Public Enema #1 by swordgeek · · Score: 2, Insightful

      I sense a lot of anger coming from this one.

      Seriously, you've got a point. An honest OS vendor guarantees backwards compatability only using published, official programming interfaces. Application vendors turn around and find some obscure undocumented library call that makes life easier for them, and use it everywhere. When the OS is upgraded, the app breaks and "backwards compatability" gets shat upon unfairly.

      A major problem though, is that many of these applications are niche products which makes them a de facto monopoly. If the customer needs functionality "x", then they're the only game in town. Thus the customer says, "I don't care if it's the application vendor's fault, fix it in the OS or I'm switching to Windows!"

      Result: Backwards compatability is guaranteed for cases where it _should_ break. Unpublished interfaces become official and supported standards. Cruft carries forwards.

      As for the "don't upgrade your computers," that's lovely--as long as you don't want any support for your OS. Kind of hard to get (unrelated) patches for OSes that have been EOSL for four years, though. Next year, a significant part of the western world is going to change daylight savings time, which will require a patch. Any machines that are running old OSes are going to be unable to keep proper time.
      Pretty close to a metaphorical gun, I'd say.

      --

      "People who do stupid things with hazardous materials often die." -- Jim Davidson on alt.folklore.urban
    2. Re:Public Enema #1 by Anonymous Coward · · Score: 0

      As for the "don't upgrade your computers," that's lovely--as long as you don't want any support for your OS. Kind of hard to get (unrelated) patches for OSes that have been EOSL for four years, though. Next year, a significant part of the western world is going to change daylight savings time, which will require a patch. Any machines that are running old OSes are going to be unable to keep proper time.
      Pretty close to a metaphorical gun, I'd say.


      So if its necessary to upgrade the OS you are using, why isn't it necessary to upgrade the software running on it, too?

    3. Re:Public Enema #1 by dukieduke · · Score: 1

      I think you are missing the whole point in question.
      It really doesn't matter if you feel the "business whiners" should or should not be complaining to the OS folks or the software vendors. They could not frankly care either whether you buy their line of whining/bullshit. They want backward compatibility so that they can continue to run their business with little or no interruption. That is a dealbreaker. There is no bull to buy. Microsoft understands that, and any "broken" Linux distros that won't cater to backward compatibility don't. Those business whiners outnumber everyone here a thousand-fold.

      As for upgrades? They do need to happen. When the PC's are on 24/7, systems fail. New machines have to be purchased, and finding a new 486 isn't so easy these days for the purchasing dept.
      Does this give them a God-given right to keep running old software? No they have a customer's right, which is actually stronger, as evidenced by the fact that backward-compatibility sells. Of this, there really can be no argument.

  60. Re:Blog's interesting;submission gave me a WTF mom by hritcu · · Score: 1
    As long as you can recompile your software, Linux provides excelent backward compatibility, but that is a non-option for many situations.
    Tell that to a Gentoo user!

    The only problem is that in the Windows world almost everything is closed, proprietary, binary only. And I'm extremely glad that Microsoft has to spend huge amount of resources trying to prevent things from going crazy. They created this sick ecosystem!

    And open source is the solution to it.
    --
    If you don't fail at least 90 percent of the time, you're not aiming high enough. (Alan Kay)
  61. Check this one out by plopez · · Score: 1

    http://itmanagement.earthweb.com/columns/executive _tech/article.php/3643691

    Because, as we all know, IE 7 is an integral part of the OS

    --
    putting the 'B' in LGBTQ+
    1. Re:Check this one out by Com2Kid · · Score: 1

      http://itmanagement.earthweb.com/columns/executive _tech/article.php/3643691

      Because, as we all know, IE 7 is an integral part of the OS


      IE7 may not be, but the underlying HTML rendering engine IS. A lot of applications (Quickbooks for one obviously!) utilize it internally.

      I have seen a good number of Windows apps that are basically fancy HTML web pages with custom UI widgets.
  62. Re:Windows Backward Compat? by Anonymous Coward · · Score: 0

    Actually, I can't run it on Vista x64...

  63. Nope, much used programs maybe by chthon · · Score: 1

    Aldus Pagemaker, which was written for Windows 2.0 or Windows 3.1, did not run well on Windows 3.0/3.1. That was 1992. I know this is an old example, but I think that MS's 'backward compatibility' is something that was only retained for some well known and much used applications.

    There was also never a good mechanism available to catch those programs that wanted to access hardware directly. Due to that I once rebooted the accounting server by trying to play 'Carrier Strike' on it (Windows NT 4.0/1997).

    I also recently locked up my Windows 2000 Professional workstation by trying to run DOS compatible instances of chipmunk log.

    Backwards compatibility ? Hah. They may come back on that in 25 years, to see if they can match the backwards compatibility of mainframe class machines, like IBM zSeries, iSeries, WANG, SunOS backward compatibility on Solaris.

    No Microsoft operating system has ever been designed with backward compatibility in mind, that was purely accidental.

  64. Re:Windows Backward Compat? by crunch_ca · · Score: 2, Interesting
    Wow, memories.

    It seems to come up on Linux under Wine, (wineconsole), but seems to run very slowly and doesn't work beyond getting the initial screen up. Of course, I haven't spent too much time trying to get it to work...

  65. Compatibility? What about VB? by MrSteveSD · · Score: 3, Insightful

    I thought readers would be interested in exactly why Microsoft spends so much effort on backwards compatibility

    Shame they don't do that with other products. They discontinued the VB language (forget about VB.NET, not the same!) and left thousands of companies in the lurch. Millions of dollars were invested in writing VB products around the world and many of the companies do not have the finances to completely rewrite their products again in a new language. I suspect that many of them are keeping quiet since making a big noise about it would frighten both customers and investors.

    I was therefore happy to hear that Java is going open source. Perhaps we can now consider it "safe" to use.

    1. Re:Compatibility? What about VB? by Anonymous Coward · · Score: 0

      If VB was worth preserving, someone would have already created a compiler and runtime. The fact is that as VB skills (?) become rarer, the apps will become prohibitively expensive to maintain. I fully agree on Java tho.

    2. Re:Compatibility? What about VB? by gatesvp · · Score: 1

      At least they saw this coming. They bought out a company that specialized in VB6 to .NET conversions, so all of the tools and docs are available for free. Obv. it's not perfect as you still have to perform the actual conversion, but at least everyone was thrown a bone.

      There has been a call to open source the VB6 APIs so that the community can continue to support them, but I don't see this happening.

      Most companies that are making the switch are doing it one module at a time. VB6 & .NET can play together, but it does take a few hours of training. I'm not saying that the situation is perfect, but it does help that MS is doing a much better backwards compatibility job with .NET.

      With side-by-side versioning and an open standard on MSIL, the required transparency is now present. Developing on VB.NET (or C#, same thing) should not leave you in lurch 10 years down the road, b/c the community has more tools. We can run .NET 1.1 and .NET 2.0 side-by-side. We can read to and from MSIL in multiple programming languages.

      We're no longer programming into a giant black box. It sucks I know, but it could be worse.

    3. Re:Compatibility? What about VB? by MrSteveSD · · Score: 3, Interesting

      After seeing how bad the "converter" was we quickly abandoned the idea of automatically converting to VB.NET or anything else. Even in principle there are many problems with automatic conversion such as issues caused by the fact that objects lives are no longer so predictable (reference counting vs Garbage Collection). And if you have tried to do clever stuff in VB6 to get around its limitations (like we did), you are really in trouble.

      So we also decided the best thing was to rewrite things component by component, or at the very least write all new components in C# and use INTEROP. However, we found interop to be absolute hell. After I left the company they hired a .NET consultant and I have since found out that they had such problems communicating between the different .NET and VB components that they resorted to communicating via the database in some awkward way (I shudder).

      I suppose that as long as you stick to developing using Mono and as long as Microsoft do not shut Mono down in the future in some legal attack, developing with C# is safe. Obviously if you develop using Visual Studio you will end up using all sorts of things that won't work with Mono. Even so, the fact the Microsoft dumped a language that so many people were using does not fill me with confidence.

      Obviously Microsoft has a lot of momentum but if I were in charge of a business I would sooner choose Java than .NET. Sun are actually interested in having a cross-platform system whereas Microsoft are too tied up with pushing Windows. And now that Java is going fully open-source, it's an even more attractive option.

    4. Re:Compatibility? What about VB? by gatesvp · · Score: 1

      And if you have tried to do clever stuff in VB6 to get around its limitations (like we did), you are really in trouble.

      No doubt, and I feel for anyone trying to convert or refactor this.

      I would sooner choose Java than .NET

      As an MCP, I'm biased. Still, I have a rough time with UIs created with Java. Most businesses have no momentum away from MS, so the cross-platform issue is really null. The primary use for cross-platform functionality is on server apps, but deploying server apps (or services) in Java does not preclude rolling out .NET UIs.

      If the 10-year roadmap does not favor Vista in business, then things may change. But right now, it's really tough to push back MS's momentum. Java's primary benefit over MS is cross-platform compatibility, but that's not a benefit if all of your desktops are running Windows.

    5. Re:Compatibility? What about VB? by CodeBuster · · Score: 1

      They discontinued the VB language

      Disclaimer: I am a C# developer

      They did not 'discontinue' classic VB in the sense that they will not fix library bugs as and when they come up, but rather they declined to continue developing new features for classic VB. If you want these features then you can code them yourself (your VB compiler still works right?), buy them ready made from a third party, or maintain your old applications as is and write your newer stuff in a language which meets your current needs. I did not start off as a C# developer, I switched from C++ because I liked the language features in C# better and I have no doubt that I will probably switch several more times in the decades to come because languages change and needs change. The Algol, LISP, and Fortran programmers either stuck with their language of choice and still use it to this day or they switched to something else when their needs changed. If you are going to make a switch from VB and you have an axe to grind with Microsoft then Java may be a good choice, but remember that a lot of the OSS development out there is actually done in C with GCC and if you thought VB was convoluted then just wait until you pick up C...it will malloc you a new world of pain.

    6. Re:Compatibility? What about VB? by MrSteveSD · · Score: 1

      I don't really know what's going on in General, but several of the European companies we were working with were planning to switch over to Linux, Java and as much "open-source" technology as they could. They informed us of their plans and indicated that if we wanted to do business in the future, we should also move in the same direction.

    7. Re:Compatibility? What about VB? by MrSteveSD · · Score: 1

      They did not 'discontinue' classic VB in the sense that they will not fix library bugs as and when they come up

      Mainstream Support for Microsoft Visual Basic 6.0 ended on March 31, 2005. Extended support will end in March 2008. So we are now in the Extended Phase where "Critical Updates will be available for a fee." That doesn't really fill me with confidence.

      or maintain your old applications as is and write your newer stuff in a language which meets your current needs

      As long as the newer stuff doesn't have to communicate with the older stuff, all is well. Otherwise its Interop Hell.

      I did not start off as a C# developer, I switched from C++ because I liked the language features in C# better

      C# has a lot to offer, but there are some things "missing" compared to C++. For example, I really like the ability in C++ to "protect" objects. i.e. If you want to pass an object into a function and the function shouldn't change it, you can pass it by constant reference. No such facility exists in C#. You have to "trust" that the function won't change your object.

      The Algol, LISP, and Fortran programmers either stuck with their language of choice and still use it to this day or they switched to something else when their needs changed.

      Exactly. Any Business that has written products in these languages can change to another language when it suits them, because the languages still exist. Companies are still making Fortran compilers and IDE's. In the case of VB, Microsoft has effectively forced you to change languages at potentially huge financial cost.

      a lot of the OSS development out there is actually done in C with GCC

      Not for rapid business development I shouldn't think. Anyway, what I mean is making use of open source stuff, not writing it. Lots of Business are now thinking of or are actively moving over to open source technologies to reduce the risk of depending on one company. i.e. Microsoft.

  66. Re:Windows Backward Compat? by Mister+Whirly · · Score: 1

    Wait what was the question again? I missed it because I was too busy playing Wolfenstien 3D on my brand new Vista box.... Damn that robotic Hitler!

    --
    "But this one goes to 11!"
  67. Incorrect by Orrin+Bloquy · · Score: 2, Informative

    OOo chokes on Mac Word files from 5.0 and before, and 5.0/Mac was a huge segment of the Word market in the 90s. The current MS Office apps on both platforms can read them. Trust me, I've tested this extensively. Sun has gone on record that they don't think pre-6.0 Word files for Mac are any kind of a priority for OOo, although they hint StarOffice might be able to do it.

    --
    "Made up/misattributed quote that makes me look smart. I am on /. and I must look smart."
  68. Y2K by j00r0m4nc3r · · Score: 1

    Cheap companies using old software is what caused the Y2K problem, and it ended up costing them billions and billions of dollars to "upgrade". Companies need to realize that moving FORWARD, while it might cost a little money, is almost ALWAYS a win. Hanging on to old outdated bullshit systems and software might help the bottom line today, but will end up costing 100x as much in the end...

  69. Re:Windows Backward Compat? by Basehart · · Score: 1

    That's what I was wondering about, all the bad code that has to stay bad to make it all work. Is there no way to write new code to emulate the bad bits so they can remove it? Or a VM to mask the vast swaths of crud?

  70. Oddments? by Anonymous Coward · · Score: 0

    Is a perfectly cromulent word.

  71. Re:Windows Backward Compat? by 0racle · · Score: 2, Insightful

    Your point? Since the NT line does not ship with DOS, but a command interpreter, that the NT OS's run DOS programs is a very good indication of MS's backwards compatibility.

    --
    "I use a Mac because I'm just better than you are."
  72. Yeah Right by Blackbird_Highway · · Score: 1

    Backwards compatibility has enormous hidden costs. Reminds me of the startup I worked for. We used the latest high tech development tools that allowed us to run circles around the big, old, slow competitors. Eventually, one of them was forced to buy us out to prevent them from eating their lunch.

    So what do they do then? They start forcing us to use their ancient, out-of-date development tools and processes. They never moved on to newer and beter things, because their vendors gave them backwards compatibility. Saved them lots of money by not having to upgrade!

    Pretty soon, my group's productivity is back down to the same level as the rest of big-old-slow corp. With no reason to keep us around, they close my group down. Woohoo backwards compatibility saves they day!

    --
    By the perception of illusion, we experience reality
  73. Re:Blog's interesting;submission gave me a WTF mom by SillyNickName4me · · Score: 1

    Tell that to a Gentoo user!

    I have looked at Gentoo, and I'm mostly a FreeBSD user myself. I do compile virtually everything myself, and for me that is perfectly acceptable, but I am not so stupid to believe that what works for me will work for everyone. Demanding that every user knows enough about software development to compile everything themselves is a good show of complete lack of realism.

  74. Backwards compatiblity by Savage-Rabbit · · Score: 5, Insightful

    With Free/Open Source Software, you are free to upgrade the applications with the OS, and it's the distros' business to make it work.

    In an enterprise Environment isn't always as simple as upgrading to the latest bleeding edge Linux, downloading the newest software versions, compiling, installing, uploading your configs and scripts and everything works flawlessly. That's the point TFA was making. Unless your distro is 100% backwards compatible (ok, 90% compatible, there are always problems) back to, say... the 2.2 kernel many corporations won't take Linux seriously as a solution because the cost of debugging the problems that accompany each upgrade because of broken compatibility issues would be prohibitive. Today some Enterprise grade Linux distro's offer this kind of a guarantee, at least up to a point. So if you have ever wondered why people shell out all that money for RedHat SuSE and Co and their Enterprise quality distributions when they can download Slackware for free, that's **one** of the reasons why. While they may not be on the bleeding edge technologically or perform as well some other distributions, the stability and continuity these Enterprise distros offer reduces costs appreciably.

    --
    Only to idiots, are orders laws.
    -- Henning von Tresckow
    1. Re:Backwards compatiblity by westlake · · Score: 2, Insightful
      In an enterprise Environment isn't always as simple as upgrading to the latest bleeding edge Linux, downloading the newest software versions, compiling, installing, uploading your configs and scripts and everything works flawlessly.

      in what environment could a process so agonizing and fragile as this ever be called "simple?"

  75. Re:Windows Backward Compat? by Arker · · Score: 1

    Both those approaches are sometimes used and sometimes work, but mostly just add new crud. Sadly for MS, they can't avoid it without changing the industry in ways they don't want to change. Source compatibility is a much better solution technically - but it doesn't work when the majority of your ecosystem is mushware-only.

    --
    =-=-=-=-=-=-=-=-=-=-=-=-=-=-
    Friends don't let friends enable ecmascript.
  76. Even if it did recompile by Opportunist · · Score: 1

    Even if you could just slap on a new library and recompile it against the new lib, which doesn't work more often than not, that's not even the point.

    Companies are, first and foremost, consumers. They don't want to recompile, they even complain if you want them to make a few setup tweaks or even check some options. The maximum you may require from them is up to one minute of work to get something up and running, and that minute should include explaining to a dummy what is expected from them.

    If it isn't "unwrap and plug in", they already shun it. Recompiling sounds like something they have to hire an expert for and, those in business themselves will know, in our world, the most expensive thing for a company is work force.

    --
    We used to have a Bill of Rights. Now, with the rights gone, all we have left is the bill.
  77. How far do you go to reward incompetence? by david.emery · · Score: 1
    Microsoft does a pretty good job documenting public APIs (Yes, I said something nice about MS).


    If so-called professional programmers choose to ignore them, the risk should be on the programmers and the companies who hire them. Implementing "within the lines" should be a key part of any programmer's ethics and skills, especially when they're getting paid.


    Of course, one would wish that Microsoft would actually follow existing standards, instead of making their own standards for things like OS APIs... But that does not excuse those who ignore the published public API documentation.


    dave

  78. Re:Windows Backward Compat? by SoapDish · · Score: 1

    Have you ever tried running actual windows based programs on later versions of the OS?

    It was not a fun experience for me.

  79. BULLSHIT! by Anonymous Coward · · Score: 0

    Most corp data is accessable or importable in standard formats.

    The problem is not the data, it is the time and effort required for a rewrite.

    Why spend countless man hours to rewrite a program that works fine just becasue it is not in the most recent wiz-bang language.

    Most organizaitions are trying to make money and have better things for their programmers to work on then rewiting the custom HR system or other such nonsense that doesnt generate revenue.

  80. Solaris vs Windows by martin · · Score: 1

    Compare Solaris's backwards compatibility with Windows...very different views of the same subject.

    I've still got SUNOS 4 code ( from suppliers long since disappeared) running on Solaris 9.

    Trying to that with Windows code is a real bother....might work and might not - more likely not.

    1. Re:Solaris vs Windows by julesh · · Score: 1

      I've still got SUNOS 4 code ( from suppliers long since disappeared) running on Solaris 9.

      Trying to that with Windows code is a real bother....might work and might not - more likely not.


      Hmm.. SunOS 4 would place the code as from some time around 1990. It's hard to find Windows apps that old, because the OS hadn't taken off at that point; it was still in version 2, which was just about unusable. However Win3 era apps seem to work with little trouble, in my experience. I have several programs that I wrote in 1992 using Borland Pascal that work flawlessly, as does the Borland Pascal IDE.

    2. Re:Solaris vs Windows by Billly+Gates · · Score: 1

      AOL uses Windows 3.0 applications still for their support operations. They were annoying as I had to use the file menu to switch tabs and frames within the application. Even clicking would not focus the windows right because they were so ancient

  81. Re:Windows Backward Compat? by Anonymous Coward · · Score: 0

    Gotta give the devils their due here. I'm still running Paradox 3.5 for DOS, MultiMate Advantage, and even dBase IV under XP.

  82. Re:Blog's interesting;submission gave me a WTF mom by hritcu · · Score: 1

    (Unlike with windows) there is not only one distribution of Linux, so different distributions have different mindsets. With distributions like Ubuntu nobody has to recompile anything himself/herself.

    However my point still holds: having the source available is much better than any sort of bug-for-bug binary backwards compatibility. Whether you compile it yourself (like the Gentoo or even Slackware users love to), or the distribution provides precompiled binaries for everything is just a matter of choice. A matter of freedom. And this is something Windows will never offer.

    --
    If you don't fail at least 90 percent of the time, you're not aiming high enough. (Alan Kay)
  83. But 99% of .NET 1.x code compiles as is on 2.0 by PRMan · · Score: 1

    With .NET, forward migration is easy, because you can easily compile your old apps on the new framework with few changes.

    --
    Peter predicted that you would "deliberately forget" creation 2000 years ago...
  84. Links by Aardvark99 · · Score: 1
    Take a look here or here for more stuff from this blog.

    Raymond often talks about new OS version having to keep application relying on hacks working. People don't care if game is doing crazy crap internally to determine something (which could have easily been queried with a documented API call)... they care that they upgraded to Windows XP and *it* broke their game.

  85. Scale Models by Doc+Ruby · · Score: 2, Insightful

    Without backwards compatibility, however incomplete, different versions of Windows would be different platforms. Which would compete with each other, and especially with new releases of apps and OS. And interfere with Microsoft's claims to represent 90% of installed computers/users/whatever. Which claims are the main factor when most people decide whether to buy/install/develop MS apps.

    Backwards compatibility, even if not extensive enough to make all installed MS hosts (including WinCE) into a single platform for the largest imagined application scale economies, is enough to create the illusion of those benefits. Which keeps people buying and building MS at the large scales which actually do deliver those lesser, but still extremely competitive, scale economies.

    --

    --
    make install -not war

  86. Re:Blog's interesting;submission gave me a WTF mom by SillyNickName4me · · Score: 1

    However my point still holds: having the source available is much better than any sort of bug-for-bug binary backwards compatibility.

    That really depends, for someone who simply lacks the technical knowledge, a system built on 'bug-for-bug binary backwards compatibility' will actually do the job of running older applications, a system with source available won't.

    That said, when the backward compatibility breaks, chances on fixing the situation will be a lot better when source is available.

    What is better for you really depends on what is usable to you.

    Whether you compile it yourself (like the Gentoo or even Slackware users love to), or the distribution provides precompiled binaries for everything is just a matter of choice. A matter of freedom. And this is something Windows will never offer.

    That is all nice and well, but it does not help people who are not knowledgable about software development, whereas a system that is 'bug-for-bug backward compatible' will help such people.

    And yes, I am aware that it also has a price, and I am personally not willing to pay that price, hence I use a different system where I can indeed fix things when needed without depending on others, matter of fact is that I have the knowledge to actually make use of that feature.

  87. My experience is the opposite. by khasim · · Score: 1

    Migrating from an old Compaq server running Debian Sarge to a new HP server running Ubuntu Dapper Drake.

    No problems with any of the infrastructure apps (DNS, DHCP, NTP, etc).

    Next I'll be adding the functions from an old Red Hat box. That includes Plone and such. I've already tested in on a different machine and there are no problems.

    I keep hearing about "problems" but I'm not seeing any and I can give specifics on what apps we're running and how easy it was to upgrade/migrate them.

    Meanwhile, we're still running WinNT 4.0 because we have an insurance app that requires a DOS environment and Microsoft broke that between WinNT 4.0 and Win2K (doesn't work in WinXP or Win2K3 either).

    1. Re:My experience is the opposite. by hairyfeet · · Score: 1

      Why don't you just run the app in a VM? With Virtual Machines you can run any OS you need for backwards compat.

      --
      ACs don't waste your time replying, your posts are never seen by me.
    2. Re:My experience is the opposite. by shmlco · · Score: 1

      Yeah, and that un-patched, un-updated "backwards" environment it's running in has a good change of being blasted by every virus and exploit known to man.

      --
      Any sect, cult, or religion will legislate its creed into law if it acquires the political power to do so.
  88. Small businesses? by mha · · Score: 2, Insightful

    A friend of mine has a very nice mexican restaurant and the software for the cash register is DOS based. It looks good (even uses a touch screen), it works - why would he ever invest 10000 Euros to buy a new one (that much because it's special software, you can't buy cash register software for restaurants at CompUSA, and he has to buy new hardware too - even if the new stuff would run on his machine, the companies who sell it to him and support him require this to lower their own support load by refusing to support any hardware/software combinations but their own ones).

    I myself still own half of a (German) MBE (Mailboxes Etc.) store (95% business customers, 75% digital printing), and the only reasons our PCs were up to date were a) we did a lot of digital printing and some design, and Adobe Creative Suite CS(2) needs LOTS of resources (but it's great software - proprietary, bloated, etc. - but I like it anyway except for the price :-) ), b) I'm an IT guy, had quit my employee life only half a year before starting this business together with a friend, c) we just started so everything was new. But reality is, you're busy all day and thinking about which patch, what software, or what nice piece of hardware one could buy for ones business is the LAST thing one wants to worry about in such a situation! There just is no time to deal with IT, and little money ((esp. onsite) IT support is *very* expensive if you have a question that cannot be answered by the outsourced call center in India), and if there's money left one can think of many more important investments than IT. Do you know how expensive even very basic equipment used for making brochures or booklets is? (tip: don't EVER buy plastic, such machines must be STEEL or they'll fall apart - paper is very tough, hard to process, you won't belive it!)

    There are many, many SMALL businesses like that. You /. guys keep talking about huge data centers and big businesses with a big budget and an IT department. Do you have any idea how hard any update is for the much larger part of the economy, the SMALL businesses? They cannot afford to higher someone, they cannot afford to spend much time on their software (even I need more than a full day to finish setting up a new PC, I just got a new Dell, and installing all my software and setting up my work environment is SUCH a pain!)

    You (in general, majority here) don't like large corporations or at least treat them with a LOT of suspicion, but all I ever read here is about the big companies.

  89. What's the obsession with Visicalc? by roystgnr · · Score: 1

    DOS support isn't extremely hard, and it isn't something Windows is exceptional at. I know Windows users who are now stuck using Dosbox to run their oldest games, just like us Linux users.

    If you really want to demonstrate a Linux distribution having problems with backwards compatibility, I'd point out the removal of LinuxThreads support when Fedora Core 5 went NPTL-only. Damn Red Hat, I want to play SimCity 3000 again! (Oh, yeah, and it broke a bunch of old versions of non-entertainment software, too.)

  90. Re:Windows Backward Compat? by SnarfQuest · · Score: 1

    Remember, Windows isn't done until Lotus won't run!

    --
    Who would win this election: Andrew Weiner vs Andrew Weiner's weiner.
  91. Microsoft still doesn't get it right by doodlebumm · · Score: 4, Insightful

    Even after billions and billions of development dollars Microsoft still breaks lots of applications on their major releases. I've been working on a server 2003 system that we've had to tweak and fiddle with for over a month to get a couple of applications to work properly, and we're still working on them. There are a couple more that will not work and have to be abandoned. These are older applications, so that could be the problem, but they were running on server 2000. No one can tell me that they are 100% compatible, because they are not.

    Which would I rather do, try to get a program to work that is proprietary on a proprietary system or open source on an open source system? Hmmmmm. Let me think.

    Also, if you want an open source application be backward compatible, send a little money to the authors. I bet you'll get a much better response from them than you would from a company that charges you an arm and a leg for a proprietary application. Try getting Microsoft to make a change to their system! Even large companies have to usually take what they get pushed on them from Microsoft.

    1. Re:Microsoft still doesn't get it right by suv4x4 · · Score: 2, Insightful

      I've been working on a server 2003 system that we've had to tweak and fiddle with for over a month to get a couple of applications to work properly, and we're still working on them. There are a couple more that will not work and have to be abandoned. These are older applications, so that could be the problem, but they were running on server 2000. No one can tell me that they are 100% compatible, because they are not.

      Do you know what this means. That in most cases those apps were not coded properly. Let's take IE7 for example. People scream how it breaks apps left and right.

      I tested 30 of my existing sites, some involving relatively complex CSS and JS ("ajax") functionality. I haven't found a single flaw. That shocked me, you know? No issues whatsoever, after all doomsday reports about IE7 being so incompatible.

      The reason is many people don't code to specs, don't code to standards, don't code to API's. They just code and tweak until it seems to work and then move on. The reasons are plenty: lack of experience, lack of time and so on.

      Still, when you use the tools (in my case HTML/CSS/JS) you're provided with in the way they were meant to be used, there's a huge chance your apps will work with future versions.

      If you rely on race conditions, hacks, or pure luck, this is virtually impossible to be backwards compatible with, although apparently MS tries hard to do that as well.

  92. Pure FUD, Re:Backwards compatiblity by twitter · · Score: 0, Troll
    Unless your distro is 100% backwards compatible (ok, 90% compatible, there are always problems) back to, say... the 2.2 kernel many corporations won't take Linux seriously as a solution because the cost of debugging the problems that accompany each upgrade because of broken compatibility issues would be prohibitive.

    But they take an OS with less than 70% seriously?

    This is just more Vista bullshit, much like the "XP is solid" nonsense that came before the launch of XP. Everyone knows that the upgrade train forces everything in it's chain. Just a few days ago Ars Technica did a study on how sucky in place upgrades to Vista were. As a normal free software user, I almost never see version and upgrade problems with data. As a user of lots of old equipment and new software, I know free software offers much better support. How anyone can declare M$ a winner in any kind of compatibility contest is beyond me.

    --

    Friends don't help friends install M$ junk.

    1. Re:Pure FUD, Re:Backwards compatiblity by Anonymous Coward · · Score: 2, Insightful
      twitter, please read this carefully. Following this advice will make Slashdot a better place for everyone, including yourself.

      • As a representative of the Linux community, participate in mailing list and newsgroup discussions in a professional manner. Refrain from name-calling and use of vulgar language. Consider yourself a member of a virtual corporation with Mr. Torvalds as your Chief Executive Officer. Your words will either enhance or degrade the image the reader has of the Linux community.
      • Avoid hyperbole and unsubstantiated claims at all costs. It's unprofessional and will result in unproductive discussions.
      • A thoughtful, well-reasoned response to a posting will not only provide insight for your readers, but will also increase their respect for your knowledge and abilities.
      • Don't bite if offered flame-bait. Too many threads degenerate into a "My O/S is better than your O/S" argument. Let's accurately describe the capabilities of Linux and leave it at that.
      • Always remember that if you insult or are disrespectful to someone, their negative experience may be shared with many others. If you do offend someone, please try to make amends.
      • Focus on what Linux has to offer. There is no need to bash the competition. Linux is a good, solid product that stands on its own.
      • Respect the use of other operating systems. While Linux is a wonderful platform, it does not meet everyone's needs.
      • Refer to another product by its proper name. There's nothing to be gained by attempting to ridicule a company or its products by using "creative spelling". If we expect respect for Linux, we must respect other products.
      • Give credit where credit is due. Linux is just the kernel. Without the efforts of people involved with the GNU project , MIT, Berkeley and others too numerous to mention, the Linux kernel would not be very useful to most people.
      • Don't insist that Linux is the only answer for a particular application. Just as the Linux community cherishes the freedom that Linux provides them, Linux only solutions would deprive others of their freedom.
      • There will be cases where Linux is not the answer. Be the first to recognize this and offer another solution.

      From http://www.ibiblio.org/pub/linux/docs/HOWTO/Advoca cy

    2. Re:Pure FUD, Re:Backwards compatiblity by julesh · · Score: 2, Interesting

      But they take an OS with less than 70% seriously?

      I'd lake to know where you got that 70% figure from. Seriously; the number of applications that actually broke with XP SP2 is tiny.

    3. Re:Pure FUD, Re:Backwards compatiblity by twitter · · Score: 0, Troll
      I'd lake to know where you got that 70% figure from.

      I can't put my finger on it but I remember 66% was a target. SP2 reduced the remainder by another 10%. The move to Vista promisses to be worse and is according to Ars Technica. If you are going to do a "clean" install, and Linux will do better.

      --

      Friends don't help friends install M$ junk.

    4. Re:Pure FUD, Re:Backwards compatiblity by endeavour31 · · Score: 1

      In a corporate setting backwards compatibility is absolutely crucial to smooth delivery of services as you move onto newer hardware/OS. You can fuss all you want... but when I am reponsible for a 24x7 shop and business units pitch for the latest features in their favourite applications I need to know that I can upgrade systems, servers and software with the least amount of risk. And what are you going on about re: Vista from a few years ago? Holy crap - a Ars account of a first beta release having flaws!!! And to the idiot who suggested above that we can just run a zillion virtual servers to cover the lack of compatability....clearly you have never been in a sizeable IS environment.

    5. Re:Pure FUD, Re:Backwards compatiblity by jb.hl.com · · Score: 1

      Even if Vista has less than 66% backwards compatibility with current Windows applications, that's still a fuckload more than the percentage that will run on Linux, even with WINE.

      --
      By summer it was all gone...now shesmovedon. --
    6. Re:Pure FUD, Re:Backwards compatiblity by dedazo · · Score: 0, Flamebait
      I can't put my finger on it

      Well then, don't. You welp "FUD" and then turn around and spew some of yours with gusto. What a tool.

      --
      Web2.0: I love when people Flickr my cuil and digg my boingboing until my google is reddit and I start to yahoo
    7. Re:Pure FUD, Re:Backwards compatiblity by JackieBrown · · Score: 1

      The difference being of course that windows has access to windows source where WINE does not.

      What is amazing is that wine supports so many window apps without this. You would expect Microsoft to be at 99%.

      Also, to borrow your language, I can run a fuckload more windows apps under Wine than I can linux apps in windows.

    8. Re:Pure FUD, Re:Backwards compatiblity by Anonymous Coward · · Score: 0

      more windows apps under Wine than I can linux apps in windows



      I'm not so sure... Apache, PHP/Python/Perl, PostgreSQL, MySQL, emacs, vi, etc.

    9. Re:Pure FUD, Re:Backwards compatiblity by LocalH · · Score: 1

      But those aren't "Linux apps" when you're running binaries compiled for Windows. Just like, if you take a Windows app and recompile it for Linux, then that binary isn't in any way a "Windows app".

      --
      FC Closer
    10. Re:Pure FUD, Re:Backwards compatiblity by angrykeyboarder · · Score: 1

      As a user of both Windows and Linux (and FreeBSD....) I have to applaud you.

      Linux is the OS I spend the most time in by far. But I don't hate Windows (or any OS). I have no intention of banishing it from my computer.

      The outright childishness of so many in the Linux community can be discouraging at times. And it does nothing to promote Linux. It just makes these people look immature. That's no way to represent the community.

      If you love Linux, don't hate, appreciate. Tell the world how wonderful it is. But don't bash other operating systems in the process. That's needless and childish.

      I have two words for the Microsoft bashers.

      Grow up.

      --
      Scott

      ©20014 angrykeyboarder & Elmer Fudd. All Wights Wesewved
    11. Re:Pure FUD, Re:Backwards compatiblity by r3m0t · · Score: 1

      I am so sick of seeing that pasted into Slashdot again and again. Why not take a few bullet points, then give the link? People just ignore it anyway.

  93. Am I the only one who's thinking about this from.. by The+Great+Pretender · · Score: 2, Insightful

    ...a non-coding standpoint. As a business we have a huge amount of data in the archives, in our case only from 91. One of our biggest issues is if we need to access that data we need the current platforms and application software to be backwards compatible. If the systems were not backwards compatible we would have to dedicate a/several computer/s and then up-load the old software to access the data. I suppose that we could use emulators. Bottom line is that it would be a huge pain for IT. In addition, it would be nice if anyone of the Project Managers can access the data from the server directly without worrying how to view it.

    --
    A positive attitude may not solve all your problems, but it will annoy enough people to make it worth the effort.
  94. Time is money. by jmagar.com · · Score: 1

    Well played sir!

  95. Re:Windows Backward Compat? by Richard+Steiner · · Score: 1

    Best in the industry? Please. I can still compile and run both MASM and Fortran software written in 1966 for a ancient UNIVAC 1108 mainframe on a modern Unisys Clearpath Dorado mainframe using the latest version of OS2200, and software compiled after the mid-70's can be run as is on the modern box without recompiling it at all.

    Microsoft isn't even the best in the Intel world. Compare the level of DOS compatibility in Windows XP or Vista to that found in eComStation 1.2R, for example. Heck, compare the level of compatibility found in Windows 95 and/or NT 3.1 or NT 4 to eComStation. IBM wrote a virtual machine to handle DOS programs inside a true 32-bit architecture, and it will run all kinds of software that the VDMs in NT, Win2K, and XP can't dream of handling.

    Microsoft has continuously placed a priority on customer migration to the next version of their native API over any support for legacy software, and their product lines have a long history of systematically phasing out older APIs. The "backwards compatibility" card was played to the hilt in the Windows 9x days in an attempt to explain that fact that Windows 9x was little more than a sophisticated-but-piecemeal 32-bit shell running on top of a copy of real DOS, while Microsoft's support for DOS software in its real 32-bit offerings has been pathetic.

    You bought the MS party line hook line and sinker, but that *doesn't* make it reality.

    --
    Mainframe/UNIX Bit Twiddler and long time Windows/Linux Hobbyist.
    The Theorem Theorem: If If, Then Then.
  96. Re:Blog's interesting;submission gave me a WTF mom by Arker · · Score: 1

    Very good post, and very good points... BUT you forgot to mention that you can also run the exact same 27 year old binary the grandparent poster mentioned, under DosEmu, as well. ;)

    --
    =-=-=-=-=-=-=-=-=-=-=-=-=-=-
    Friends don't let friends enable ecmascript.
  97. A better analogy would be : by Martin+S. · · Score: 1

    The analogy to your view would imply that just because I drive a car, I'm interested in doing the maintenance myself.

    Why buy a car designed in 2001 with the 2007 paint scheme so I can recycle the tyres; when I can buy a 2007 car which comes with brand new tyres!

    1. Re:A better analogy would be : by jt2377 · · Score: 0

      'cause not everyone have the money to buy a new car???? you sir = dumb.

  98. Re:well by SQLGuru · · Score: 1

    Who needs backwards compatibility. My Commodore 64 still runs all of my Commodore 64 programs. My XBox still plays all of my XBox games. My DOS games still run great under DOS 5.0 (6.2 and 6.22 were where MS started pushing bloatware over beneficial functionality).

    I'm in favor of trimming some of the fat. If MS has a 3 version back support policy for the OS itself, why not have a 3 version back support policy for any features. After 3 versions, you may or may not get to keep your API. They do it with other areas (for example, SQL Server has not guarantee that certain features will be supported in the next release and MS recommends that you update your code).

    Layne

  99. Re:Windows Backward Compat? by jZnat · · Score: 1

    His point is that you need to use a DOS emulator to run it. You could use an entire DOS operating system (e.g. FreeDOS) or a DOS emulator (e.g. DOSbox).

    --
    'Yes, firefox is indeed greater than women. Can women block pops up for you? No. Can Firefox show you naked women? Yes.'
  100. Re:Windows Backward Compat? by Anonymous Coward · · Score: 0

    I can't run GPSS/H (a discrete-event simulation program for DOS) under XP (using a cmd.exe window). It worked in all versions of Windows (including Win2K) up until XP. I have a few other DOS programs that no longer work in XP. So I'm not at all impressed with Windows' backward compatibility.

  101. Re:Blog's interesting;submission gave me a WTF mom by jZnat · · Score: 1

    Uh, the Linux kernel is only 15 years old. I don't think it's very good at being backwards-compatible with nonexistent programs (you can't compile a binary for Linux circa 1979 if it didn't exist).

    --
    'Yes, firefox is indeed greater than women. Can women block pops up for you? No. Can Firefox show you naked women? Yes.'
  102. uniformity? by zippthorne · · Score: 1

    Is it better to have 50 different servers with different operating systems, different software configurations, different connections etc, or just replace a significant fraction with largely identical systems when increased load or hardware failure necessitates upgrading?

    --
    Can you be Even More Awesome?!
  103. Re:Windows Backward Compat? by RPGonAS400 · · Score: 1
    I agree. We run an IBM iSeries (or System i or AS/400). Code written on a System/34 in the 1970's still runs on the newest machine with no problem. Code from a mid-1980's System/38 could be ported over without recompiling - it is object code compatible.

    This article has given me a bit of satisfaction. I am an IT manager for a small company that uses 1993 code that has had tweaks here and there, but is largely unchanged. My boss likes it because the AS/400 has not been down in 13 years except when we want it to. Last year our main server for Terminal Services was down 9 times in 11 days!

    I can also install and run Chips Challenge from a Windows 3.1 diskette on any Windows XP machine and run it no problem.

    Even though this is /., I ran Linux for the first time last week when I tried out DSL. I guess I just don't see the big whoopdie doo.

  104. Re:well by TheRaven64 · · Score: 1

    That's great, if your C64 still works, and you have space for that many machine. In the business world, you typically want to have as few machines as possible (for space, power and administration cost reasons). If you need a new machine, either because the old machine is too slow or because it's broken, you don't want to have to buy new versions of your software (or new software, if the old code is no longer maintained) simply because your OS has dropped backwards compatibility.

    --
    I am TheRaven on Soylent News
  105. Re:Windows Backward Compat? by RPGonAS400 · · Score: 1

    Just like the old Beatles albums that proclaimed "John is dead" when played backwards, when you play the Windows CD backwards it says "Jobs is dead".

  106. Quite true by csoto · · Score: 4, Interesting

    This is one of the reasons "Solaris is better than Linux." There are few things that we've deployed on Solaris 2.5 (possibly none, but I won't swear to my memory) that don't also work under Solaris 10. This is a far cry from the Linux 2.4-2.6 headaches we've experienced.

    --
    There exists no way of exchanging information without making judgments. --Bene Gesserit Axiom
    1. Re:Quite true by k8to · · Score: 1

      Hahaha as support staff for Tornado, a development environment for VxWorks by Wind River Systems in the 90s, we saw breakage after breakage from solaris 2.4 to 2.5 to 2.6 to 2.7. The "system api" may be pretty well managed, but the delivered libraries were a total mess.

      --
      -josh
  107. How can this be modded "5 insigtful"? by Anonymous Coward · · Score: 1, Interesting
    I am still working on 2.4 to 2.6 kernel issues. Linux and it's authors have no concept of backwards compatiblity. We have to redo everything and our purchased software suffers even more.
    How can this be modded "5 insigtful"? Not one detail is given. What kernel issues? Give an example how Linux and it's authors have no concept of compatibility. What do you mean by "redo everything"? What purchased software is suffering and how? Please, I would be interesting in knowing some details here. Who knows, maybe I can even help you.
    1. Re:How can this be modded "5 insigtful"? by Anonymous Coward · · Score: 1, Insightful

      What about the 2.6 device driver interface? I saw a good paper on 'collateral evolution' in the 2.6 kernel - every time the driver interface changes, something that runs inside the kernel breaks. And in the 2.6 dev cycle, there have been hundreds of such changes, some of which were very significant... http://www.emn.fr/x-info/coccinelle/eurosys-padiol eauy.pdf

    2. Re:How can this be modded "5 insigtful"? by Proud+like+a+god · · Score: 1

      Mod parent up or GP down.

    3. Re:How can this be modded "5 insigtful"? by SnowZero · · Score: 1

      A driver is hardly the same as an application. Linux has never claimed to guarantee stability for the driver interface, and in fact steadfastly refuses to do so, so that improvements can be made. Linux goes to great pains however to maintain the application interface (ABI). I can run plenty of old applications, in particular many X apps work just fine. System tools may break, but they are diving into internals that aren't really part of the official interface. This is no different in Windows, where disk and AV tools will need to be upgraded with Windows. Show me some hardware for which there is a single driver which works for Win98, Win2k, and Vista... Drivers!=Applications. Even then, I rarely have issues, as I run exactly one driver (NVidia graphics) which doesn't come distributed with Linux itself. Every other driver upgrade is handled by the kernel developers, and waiting a bit after releases to look for reviews of breakage. Use a distribution kernel if you want stability, and then you will almost never have any issues at all.

  108. This was solved before Unix was **written** by davecb · · Score: 1

    The Multicians had a set of rules that allowed them to do "continuous maintenance" on production systems without forcing everything to change at once.

    The compatibility didn't last forever, but if you were an application developer, you really only need to do a QA run once a quarter to see if anything was in the process of changing, and schedule a fix for the next quarter. Your customers had a longer guarantee, probably a year or so.

    The idea was a lot like relational database theory: you can always "add a column to the table" and you could use NULLs to mark an old column as not containing anything any more, although the actual technology was major- and minor-version-numbers, and was derived from some hardware-versioning research at MIT.

    They still work: I used the same techniques in a Unix project, and never had to have a flag day, although Edsel and I were changeling the interface in question with wild abandon (;-))

    --dave

    --
    davecb@spamcop.net
  109. IANAP (Programmer)... by JazzLad · · Score: 1

    IANAP and IANASB (Programmer, Successful Businessman), but I have what I hope isn't too stupid a question.

    MS has for some time differentiated between home and Pro versions of their OSes, why not a Legacy & no-Legacy version? This doesn't sound (to me) to be so hard a concept, and everyone gets what they want. The defacto version would likely have to be Legacy (like on $500 Dells) but as people start to realize (because their kids/friends/whatever tell them so) the no-Legacy version is faster/better/whatever, people will wean to it. Hospitals, etc that will more-or-less always need legacy support can continue to buy that version, but in 5-10 years MS can charge twice (or more) as much for it since it will by then be a niche OS. Then we get an OS that isn't bogged down, the instances where it is needed are covered . . .

    Does this not make good business sense for MS? Surely they have enough programmers that supporting two completely different versions of their OS would not be a hardship.

    --
    "If you have nothing to hide, you have nothing to fear." - Every fascist, ever
    1. Re:IANAP (Programmer)... by hinosenshi · · Score: 1

      Considering how long it's already taking M$ to get out new versions of their software, having to maintain legacy & no-legacy versions would bog them down even more. Certainly, M$ has a slew of programmers at its disposal, but there are many phases to putting together a product (design, implementation, testing). Having to go over these steps over and over again for two different versions of their software would be horribly time-consuming. I highly doubt that they could simply cut out parts of the code from the legacy-compliant version and have it be non-legacy-compliant.

    2. Re:IANAP (Programmer)... by zogger · · Score: 1

      stable, testing, experimental/bleeding edge?

      Yep, sounds like a good idea really. Someone should try it......

    3. Re:IANAP (Programmer)... by Saint+Fnordius · · Score: 1

      What you are suggesting sounds suspiciously like what Apple did in the transition to Mac OS X, with the older OS architecture relegated to a sandbox that is optional. An OS within the OS.

      It's a path Microsoft could have taken with Windows XP, putting everything that required Win98 or older APIs into their version of "classic mode". Unfortunately, Microsoft can't differentiate as well as Apple between apps that are compatible with the new OS. The filesystem would need to store metadata about whether the programme is "classic" or "modern", or the Registry (or its successor) would become even more bloated.

    4. Re:IANAP (Programmer)... by makomk · · Score: 1

      It's a path Microsoft could have taken with Windows XP, putting everything that required Win98 or older APIs into their version of "classic mode". Unfortunately, Microsoft can't differentiate as well as Apple between apps that are compatible with the new OS. The filesystem would need to store metadata about whether the programme is "classic" or "modern", or the Registry (or its successor) would become even more bloated.

      Windows NT already has the concept of "subsystems" (currently, everything runs under the Win32 subsystem, but I think there used to be POSIX and OS/2 subsystems at one point - not sure if they were ever released or used, though), and there's a WORD field in the executable header to specify the subsystem used. (These days, it's used mainly to distinguish between console and GUI apps.)

  110. VP Planner! by Anonymous Coward · · Score: 0

    I still have a copy of VP Planner, a DOS spreadsheet program, on a 720KB floppy disk. That was the first spreadsheet I ever used, back in 1990 (right before the company that made it got sued for copying Lotus 1-2-3's interface, IIRC).

  111. Interesting topic... by Agram · · Score: 1

    ...having said this exact thing only a couple days ago even though I was totally oblivious to this blog post that obviously predates my comment (see http://linux.slashdot.org/comments.pl?sid=205851&c id=16794030), what a coincidence indeed :-)

  112. Anyone ever think by ImaLamer · · Score: 1

    I don't want to become a programmer just to use my computer. (90% of office workers speaking, I.T. specific roles excluded)

    Did anyone ever think that I don't want to become a programmer just to run my network?

    Why is it assumed that these two talents naturally just go hand-in-hand? I can write some code, mostly scripts, SQL queries and so forth, but know not one thing about C or C++. What I can do is develop an enterprise sized network, with hardware and software requirements competing for my $5,000,000 budget.

    I can't write even a simple perl script.

    Why must it be assumed that IT guys can code. Not all of us can, and a lot of us don't want to (if I did, I'd be working on the Linux Kernel or any other F/OSS project that interests me).

  113. Virtual Machines by dlhm · · Score: 0

    I don't see backward compatability as that big of a deal, for the most part it's a Shell creating a virtual machine. The O/S has actually become preloader software, the only change is it's interface back to the main system. Anyone wishing to use extremely old software should know of the inherent bugs/security flaws in that sofware, and that a new O/S isn't going to fix that. Would someone be so cheap that they replaced and OLD O/S with a brand new one and then try to continue too use Legacy Apps? Maybe only government and some college grad IT Managers...

    --
    Ad eundum quo nemo ante iit!
  114. Re:Windows Backward Compat? by TheRaven64 · · Score: 1

    I'm not sure Visicalc is that good a test. I just downloaded and ran Visicalc in DOSBox on OS X/PowerPC.

    --
    I am TheRaven on Soylent News
  115. Not entirely: Quite true by coats · · Score: 1
    Sun claims complete upward compatibility, but in my experience they don't deliver: I have never seen a Sun compiler upgrade that didn't cause link-compatibility problems.

    And that with fifteen years' experience developing environmental models on Solaris, IRIX, AIX, HPUX, Linux...

    fwiw

    --
    "My opinions are my own, and I've got *lots* of them!"
  116. I'll say not even all programmers by Moraelin · · Score: 3, Insightful

    While I'll fully aggree with your points about the common user, I'd argue that IMHO it's not that much different for programmers and generally those in IT roles. Sure, for a programmer it's a lot less intimidating and a lot less "rocket science", but that doesn't mean he/she will automatically enjoy it.

    Speaking as a programmer, the interesting and challenging part is the _programming_ part. The tweaking of algorithms, the thrill of learning some new technique, etc. That's the fun part. The compiling itself is _not_ the exciting part. Sitting and watching Joe's Own Toy Program (TM) compile is about as exciting and watching paint dry. Tracking down the dependencies for it is even less exciting.

    In fact, I'll even go ahead and say that anyone whose great feat was compiling some 3rd party program, probably isn't really a programmer to start with. There are a ton of people who just like to pretend they're oh-so l33t because they can run someone else's build script. Maybe they even configured (through the nice supplied GUI) and compiled (by running the commands supplied in the readme) a _kernel_. Wow, that makes them sooo great computing gurus. Not. That's to programming what script-kiddies are to real security experts. A sad joke.

    And even as programming goes, the fun is doing the things _I_ want to do, learning the things that _I_ find interesting at the moment. Maybe I'll toy with this great new algorithm or language I just heard about, or maybe I'll mod a game just for the sake of seeing if I can get to the ballistics code, or whatever. Whatever tempts me at the moment. But that's a personal, subjective and transient thing. What tempts me tonight might be (and usually _is_) a whole other thing than whatever program Tom couldn't be arsed to finish, or Dick couldn't be arsed to test, or Harry couldn't be arsed to port. I want to do _my_ stuff, not debug Tom, Dick and Harry's programs just because they happen to be OSS and on my computer.

    Basically just like a literature buff might choose to spend the evening reading the novel of _his_ choosing instead of coming over to help the neighbour's kid finish a school essay about War And Peace. Sure, he certainly is qualified to help that kid, but it's not necessarily what he'd choose to spend the evening with.

    In the end what I'm saying is that what I want from a computer is no different from what Jack Random and Jane Average want. I want it to just work. Whatever I choose to do with it, whether it's programming my own toy app or watching a DVD or playing a game, I _don't_ want to compile the IDE/media-player/game/whatever first, and that goes double for pointless track-the-dependencies games. If I chose to do X tonight, then anything else that gets in between me and X (like having to first compile some other stuff) is just a waste of my time.

    --
    A polar bear is a cartesian bear after a coordinate transform.
    1. Re:I'll say not even all programmers by ookaze · · Score: 1

      In fact, I'll even go ahead and say that anyone whose great feat was compiling some 3rd party program, probably isn't really a programmer to start with. There are a ton of people who just like to pretend they're oh-so l33t because they can run someone else's build script. Maybe they even configured (through the nice supplied GUI) and compiled (by running the commands supplied in the readme) a _kernel_. Wow, that makes them sooo great computing gurus. Not. That's to programming what script-kiddies are to real security experts. A sad joke

      But unfortunately, what you say is far from reality. The reality is that people who compile apps or compile kernels do not say they are great feats. That's rather people like the GP that says they are great incredible feats that no ordinary users could do, that only gurus could do. Basically, the kind of people you agree with are the ones that say these are great feats, not those that do them. Thos that do it are so convince it's simple that they encourage other common people to do it too. So you're completely wrong on all these points, and the people you agre with contradict your stand.

      In the end what I'm saying is that what I want from a computer is no different from what Jack Random and Jane Average want. I want it to just work. Whatever I choose to do with it, whether it's programming my own toy app or watching a DVD or playing a game, I _don't_ want to compile the IDE/media-player/game/whatever first, and that goes double for pointless track-the-dependencies games. If I chose to do X tonight, then anything else that gets in between me and X (like having to first compile some other stuff) is just a waste of my time

      Exactly. Now, you have a pretty narrow view of the subject. So I will take a little very simple and evident example for you to grasp.
      If the something that gets between me and doing X is a bug in a program, then you have a big waste of time on your hand. Now, if you have FOSS and the knowledge to make it work, it is in no way a waste of time, but an investment, even more when you send the fix upstream.
      People that try to say bad things about the ability to debug/compile programs generally think like every program they use works like a dream, have all the features they need and has zero bugs.
      If that were true, people would never upgrade. Fact is no software is like that, and so, your example is plain stupid.
      There are actually even advantages to compile FOSS programs yourself. One of the most evident one, is the ability to tailor the software for your case.
      That's why, for example, a program like MPlayer can be so efficient because you can tailor it for, say, run on OLPC, or run on a multicore CPU. And that's true for most of FOSS apps.

  117. Re:Windows Backward Compat? by mattwarden · · Score: 1

    Mod legitimate questions down!!!

  118. Apple doesn't really by porneL · · Score: 1

    When Tiger came out, I've seen lots of applications broken and... lots updated. Now developers are moving to Universal Binaries. I'm surprised that Apple gets away with this, but as long as they do - IMHO it's a good thing: almost nobody uses unmaintained software.

  119. Re: I'll take Linux and leave your opinion by greenbird · · Score: 1
    Don't get me wrong though, I'm not saying one way is the end all better way, I'm just saying that as long as the corporate world is run by people who just 'want it to work' (which will be forever) software that requires the user to do the programmers job will not fly. All my servers are Linux servers, but that's only because myself and the other techs here are skilled at making them work. I wouldn't DREAM of putting Linux on our desktops. Are you crazy?! Will YOU then be the one who baby sit every soccer mom who comes to work for us and teach them how to use it for free?

    Microsoft is the greatest marketing company that every existed. Microsoft products DON"T just work. I'm so tired hearing that BS. I waste so much time (and I know I'm not the only one) trying to resolve endless problems were they don't just work. Not only that but sometimes they mysteriously just stop working for no apparent reason after they were working. Add to that the problem that it is nearly impossible to trouble shoot problems since little or no information is provided to the user. With Unix/Linux if there is an NFS or ssh issue I just turn up the logging level. With Windows it's reboot while sacrificing a chicken. I have 2 Linux servers sitting here right now that I set up and have worked flawlessly, one for over 3 years with only maybe a dozen reboots over that period. I support Unix servers that haven't been rebooted in years.

    As to Linux on the desktop I would rather have some training expense up front then spend forever fighting viruses, anti-virus software, malware, anti-malware software and the just plan mysterious Windows problems that occur on Windows desktops.

    Windows updates and upgrades not breaking things is crap also. The list of applications that were broke by WinXP SP2 was long and prestigious and included several of Microsoft's more prominent applications. And although they have gotten better I still tremble when Windows updates occur from past experiences of complete system failures on reboot after an update.

    I have 20 years experience in this industry on both Windows and Unix/Linux. I've written device drivers and developed realtime embedded systems along with gui apps in probable a dozen languages. I've hack around with kernel modules on occasion. If someone with my level of experience can't diagnose problems that occur in Windows claiming that it just works is complete BS. Only a couple times have I encountered problems in Unix/Linux that I couldn't find a root cause for and in those cases it was more of a problem with time and money rather then a lack of information to find a root cause. With Windows you contact their support and the first step in resolution is reboot. If that fixes the problem there is no way to continue to a root cause.

    --
    Who is John Galt?
  120. What holds MS back keeps them on top by Anonymous Coward · · Score: 0

    People always complain about how Microsoft should be like Apple and throw everything old into the trash every few years and start a new. Its actually the reason Apple will NEVER be used in a corporate setting and why Microsoft will still be making tons of money 20 years from now.

  121. Re:Windows Backward Compat? by greenbird · · Score: 1
    Absolutely. Probably the best in the industry. You can still run Visicalc on any Windows machine.

    I'd put my money on Sun being better and in a more complex space also. There stuff is used extensively in places like telecom. I could just imagine running any kind of phone switch on Windows.

    --
    Who is John Galt?
  122. No no no no no! by Anonymous Coward · · Score: 0

    You got it all back-OSwards!

  123. numbers, anyone? by chocolatetrumpet · · Score: 1

    Assuming a typical linux distro with the typical set of apps - if you were to compile in all the dependencies, how much extra space are we really talking about? Ten MB? Ten GB? One hundred GB?

    I could live with 10GB of space used up for dependencies if it means less headaches. At around $1/GB, that's a very small price to pay for peace.

    --
    Spoon not. Fork, or fork not. There is no spoon.
  124. Re:Blog's interesting;submission gave me a WTF mom by TheRaven64 · · Score: 1

    FreeBSD (and, I believe, Linux too) can run applications from a variety of legacy UNIX programs so, assuming you have compatible hardware, you can run applications that pre-date the operating system quite easily.

    --
    I am TheRaven on Soylent News
  125. DOS timing issues. by khasim · · Score: 1

    The "command environment" that Microsoft implemented on WinNT doesn't handle timing well. Virtual machines want to time/slice the processor. Using the DOS app in a virtual machine means it runs so slow that it has other issues.

    Yep, we've even tried DOS-box.

    The only real solution at the moment is to keep a stack of old hardware around so we can keep this app alive until the data is finally done. And that's a long time in the insurance business.

  126. Re:Windows Backward Compat? by ratboy666 · · Score: 1

    Best in the business?

    No. I worked in the group at SUN that offered the "application guarantee". As an ISP, run your application through a standard tool -- if it passes the ABI, then its SUNs problem if it doesn't work on future OS releases.

    Solaris wins. As a server OS, you arguably can't get better.

    And when it's GPL'd, *and* still SUN supported, it'll be better. POSIX and other standards are not to be trifled with...

    Ratboy.

    --
    Just another "Cubible(sic) Joe" 2 17 3061
  127. Quite a tradeoff by Rob+Riggs · · Score: 1

    Yeah... but I can show you a ton of *very* useful software that you just cannot use on Solaris when using only Sun tools (e.g. Boost). That's because Sun cannot bring their compiler up to snuff without breaking backwards compatibility. There's a tradeoff that one makes for the level of backwards compatibility. And those tradeoffs can cause more headaches than they are worth. Sun, IMO, has been on the wrong side of that equation for a very long time.

    It's enough of a problem that we are in the process of switching over to GCC.

    And to reinforce what two other posters have said, we are upgrading from SunOS 5.8 to 5.10 and are running into binary compatibility issues with Sun's own libraries.

    --
    the growth in cynicism and rebellion has not been without cause
  128. Opportunity for a Winetasting? by Ungrounded+Lightning · · Score: 2, Interesting

    Seems to me that backward compatability issues are an OPPORTUNITY for linux.

    Windows API support in linux (ala Wine) not only CAN be done, but it's EASIER for older, frozen, versions of Windows, which are no longer moving targets.

    Seems to me that a "tested and seems to work" compatibility list for older Windows commercial apps versus an API emulator/kernel/library version number would provide:
      - IT departments with an opportunity to migrate and a starting point for doing their due-dilligence checking
      - API emulator project members the feedback they need to find and fix any mis-emulation that is blocking such a migration
      - Linux evangelists a selling point
      - Management the wake-up call that it is now POSSIBLE to migrate away from their addiction to Microsoft and other proprietary software, and
      - Stockholders a hammer to use on management. B-)

    --
    Bantam Dominique roosters crow a four-note song. Once you've heard it as "Happy BIRTHday" you can't NOT hear it that way
  129. Re:Windows Backward Compat? by abigor · · Score: 1

    Yes, yes, I've been endlessly corrected on the Solaris front - my apologies.

  130. I, For One, Welcome Our Ancient Overlords by darkonc · · Score: 1

    I'm one of the people who decries MS's need to maintain backwards compatibility -- but it's not the backwards compatibility that I decry, but rather the fact that they need to maintian compatibility with a horribly mis-designed single-user system that is rife with land-mines originally meant to trip up their competition.

    --
    Sometimes boldness is in fashion. Sometimes only the brave will be bold.
  131. John? by BancBoy · · Score: 1
    --
    [UID-HeinzIntel]
  132. Commercial Software by .com+b4+.storm · · Score: 1

    Linux falls flat on its face with backwards compatibility if you look at commercial, closed software. In an ideal world, everything would be open source enough that you could recompile it and have no problems. But in our non-ideal world, you've got stuff like Loki games and 3-5 year old commercial apps that simply will not run because of binary compatibility issues, unmaintained libraries, etc.

    Perhaps someone should make an emulation layer a la Mac OS Classic? Or a la Wine? Then we could run our old Linux apps with LINE - Line Is Not an Emulator. :)

    --
    "Wow, you're like some kind of superhero able to ward off happiness and success at every turn."
    -- Ryan Stiles
  133. The LKML is not a corp by curious.corn · · Score: 1

    People, please understand... the Linux development effort is not for the satisfaction of corporations or IT Offices. They're not paid for contributing to the kernel, but just do it for the hell of it. There's no metric there except experimentation, taste and beauty. If some company decides to outsource some of its code to the community to share the maintenance cost that's fine; if another one decides to give corporate support to it through a contract that's fine too. But don't blame Linux for not behaving like HP-UX or Windows, it's not the same thing, as far as the vanilla kernel is concerned. If you need backwards compat, 24/7 or enterprise hardware support call an Enterprise Linux provider and ask them to do all the necessary backporting, testing and life-cycle management necessary (and pay for it... there's no free lunch my friends. You thought you managed to screw those damn hippes again! ;-) )

    e

    --
    Mi domando chi à il mandante di tutte le cazzate che faccio - Altan
  134. You didn't work on any Windows Upgrade by DrYak · · Score: 2, Interesting

    Windwos upgrade aren't smooth either.

    Major upgrades at microsoft breaks a lot of stuff. The main problem is their philosophy of backward compatibility which manage to accumulate both the bad side of backward compatibility and non compatibility.

    Most of the time, Microsoft tries to assure compatibility by keeping around old APIs over and over across each generation of products, but each time fixes bits to keep up with modification of the underlying technology. You end up with a Windows XP wich is "somewhat" compatible with application written for Win9x, but not quite exactly, because some details have been subtely tweaked during the software evolution. And you end up with situation were you have to test each Service Pack to be sure that it doesn't break any critical application before deploying to the whole company.

    Sure, you have to keep as much compatibility as possible so you don't break old apps and can't just scrap everything with each generation, and on the other hand you have to do fixes and introduce new technology otherwise there won't be anything new in a "new" version.

    But there are better ways to achieve this. Mac OS X is a nice example, that regulary uses emulation to ensure backward compatibility. Between 68k and PowerPC, between different version of OS and OS X, between PPC and Intel.... each time they make a new architecture offering new possibility, and instead of keeping some old stuff that only drags evolution back, they choose to emulate it, which have the benefit of both keeping backward compatibility, but also isolating legacy code in a sand box which won't interfere with newer generation technology. Bugs that crashed previous version of the OS will only crash the one inside the virtual box. (On the other hand, due to legacy code, some bugs hang around for a very long time in Windows. Such as the "dir nul\nul" bug whitch crashed all the way from very early MS-DOS (3.xx something I think) up until the last DOS-based Windows)

    Opensource software on the other hand have a different possibility : because their source is open, users can fork the code, provided there's enough interest to keep a copy of the old version parallel to development on the latest one. GTK is a nice example in user land : GTK 2.0 completly broke the API and ABI of previous version. But most current distribution still carry a GTK version 1.xx which is still maintained and debuged. The Linux 2.4.x kernel tree for various reason (smaller footprint, support for older hardware that was dropped later, etc.) is still maintained and bug fixes and newer functionnality are still backported from 2.6.x because there are enough people to care and because the GPL doesn't forbid them to do it. (It is as if there was a community of Windows 95 user still porting functionnality from Windows XP and fixing security).

    With microsoft product, sadly, it isn't so. It's always "windows" but it's not always quite the same windows. Once a product has been end-of-life-ed there's nothing you can do against it as a user (License forbids you), you can only switch to the newer version and hope that the compatibility will good enough and that the "tweaks" haven't broken anything.
    On the other hand, thanks to Microsoft, students in university can earn enough money to eat, by helping IT staff to test compatibility between service packs and softwares.

    --
    "Sufficiently advanced satire is indistinguishable from reality." - [Tips: 1DrYakQDKCQ6y52z6QbnkxHXAocMZJE61o ]
    1. Re:You didn't work on any Windows Upgrade by Keybounce · · Score: 1

      Mac OS X is a nice example, that regulary uses emulation to ensure backward compatibility. Between 68k and PowerPC, between different version of OS and OS X, between PPC and Intel.... each time they make a new architecture offering new possibility, and instead of keeping some old stuff that only drags evolution back, they choose to emulate it,

      No longer true. They stopped shipping the 680x0 emulator a while back (they stopped documenting it much earlier, while it was still shipping).

      If I wanted to install a 68040 program that used the NX-classes today (say, Nextstep Improv), I'd be out of luck.

      Did I say "Wanted"? "Can't find a replacement copy" might be better -- it came with my old slab.

  135. I don't understand. by the_greywolf · · Score: 1

    Why is Linux being lambasted here for poor backwards compatibility?

    I've heard stories of running code from linux 1.0 on linux 2.0, and I have recently used software compiled for linux 2.2 on 2.6. So why is the backwards incompatibility of GlibC and GCC and other common libraries whose APIs have changed as they mature suddenly the fault of linux?

    Blame the GNU guys for GlibC's versioning scheme if you really must complain. Blame them for the change in binutils' ABI changes in recent versions.

    After all, this is why most linux distros have libstdc++.5 (GCC 3.3 and prior) installed next to libstdc++.6 (GCC 3.4 and later)!

    Anyway, even somewhat ancient games that use OSS, an old MesaGL build, and were statically linked and compiled with GCC 2.95 still run. So what's the problem?

    --
    grey wolf
    LET FORTRAN DIE!
    1. Re:I don't understand. by petrus4 · · Score: 1

      Blame the GNU guys for GlibC's versioning scheme if you really must complain. Blame them for the change in binutils' ABI changes in recent versions.

      If there was a commonly used alternative to those two packages for Linux, you might have a point...but there isn't, to the degree that I'm assuming that the majority of uninformed people simply assume that Glibc/binutils are intractable parts of a usual Linux system. For the most part, sadly, they'd actually be right.

      Linux needs an alternative to the GNU project for a lot of different reasons...the steady decomposition of the toolchain is but one of them.

  136. Linux has worms by Anonymous Coward · · Score: 0

    Well, in-so-far as linux is like a kid with worms... always squirming and shifting, never settling in one position for more than a moment. I mean, I love linux, and I understand why the developers want the code to be as good as possible, but there comes a point when you need to say "enough is enough", set a standard in concrete, move on and stop moving the goddam target.

  137. scripts by Anonymous Coward · · Score: 0

    Ok, from the original article Mr. Chen posted he mentioned nine thousand scripts in one organization.
    That said, why did he decide to put the blame outright on OS versions. The keyword here is "scripts" which seems to imply an interpreted script engine somewhere. The script interpreter is either part of the shell interpreter for [place any windows OS version here]. If something broke, blame could be placed at any level: script interpreter-shell-level, application(s) level or OS-level.

    Now if we change the meaning of "script" to visual basic for applications, here is where we see interesting changes.
    Visual Basic for Applications implies the entire infrastructure below it permitting it to do reuse of existing components. That interapplication glue was previously called "DDE", then OLE/COM/ACTIVEX, and more recently .NET. Granted there is a huge jump in techie know-how going from DDE to OLE/COM/ACTIVEX, the .NET infrastructure follows the same programmer methodologies/lifestyle as OLE/COM/ACTIVEX. Binary versioning, backward binary compatibility, forward binary compatibility as part of these. Key to all of this is to put a lot of thinking behind the interface specification. I've met a lot of developers that love to develop interface specs that have lots of parameters which eventually leads to trouble precisely because somebody wasn't thinking straight with the first version of the spec. In order to have backward compatibility, the new version has to have a mechanism to expose not only the newer services but also the older services. It is true that the new application might have the older services names call the newer services internally, the truth remains that the behaviour has changed because the code inside the new application isn't necessarily the same code and same quality as the original version.

    Going back to scripts, it doesn't matter if the script is dos batch, wsh, VBA, perl, bash, python or whatever, if the service specs suck and the coder has no comprehension of OOA&D, the script will run into trouble eventually. That has nothing to do with OS Versions or OS Level stuff. It has all to do with component reuse on any OS. Linux does it better because usually if you simply recompile using the latest sources of everything, it usually fixes it. If there are fixes to be done in Linux, like in Windows, there will be effort needed but I am betting there will be less effort needed on the Linux maintenance because all the source is readily available thus resulting in lower TCO(total cost of ownership) for the company using Linux. I should mention the more timely updates Linux repositories provide. This is the huge part of the synergy Linux has and [Windows version here] will never have.

    Suggestions to the company:
    1)Keep the same coder no matter unlikeable you may think the coder is. Coders usually care about their work and want to do their best.
    2)Let the coder make the decisions concerning the operating system. Any coder worth his money will try new things and new OS's. Eventually he will discover GNU and choose it over closed-source for obvious reasons.
    3)If the script interpreter doesn't run in linux, it's because you haven't got the source code for it, which makes it impossible to maintain which means the company is better off getting rid of the crap and choosing a company that does not lock it into a corner. If you have the source code under linux however, the odd of the application being maintainable in the long run are higher than maintaining on a windows operating system because linux runs on more kinds of hardware than windows ever will. APPLE OSX might be cool, but making it closed-source and constrained with its licensing will kill it eventually which is Microsoft Vista's fate in my humble opinion. Everything being mentioned in the media recently about Microsoft making deals with some Linux providers is just "Smoke and Mirrors". As a result all developers should be concerned and remain vigilant about this. Any co

  138. Re: I'll take Linux and leave your opinion by Anonymous Coward · · Score: 0

    Its is easy to find root cause on Unix/Linux but nearly impossible on Windows, one of the reasons is Windows has no root.

  139. Re:Am I the only one who's thinking about this fro by toadlife · · Score: 1

    Convert the data.

    --
    I don't always use unix-like operating systems; but when I do, I prefer FreeBSD.
  140. Slashdotism for the day: by CCFreak2K · · Score: 1

    In every non-trivial program there is at least one bug.

    --
    "Beware of he who would deny you access to information, for in his heart he dreams himself your master."
  141. About Backwards Compatibility by Icyfire0573 · · Score: 1

    I've had this thought on my mind for a couple of days now. While it is apparent that backwards compatibility is extremely important to encourage people to upgrade to your latest and greatest (and therefore gain the licensing monies that come from that.) You also need to continue to evolve the software and make it more capable. Look at the benefits of not having a 100% stable ABI the Linux kernel improves at an astonishing rate and stuff like KDE and Gnome andvance by leaps and bounds with every release. On the other hand you have an untold number of machines that have been using Microsoft's HTML dlls and now that IE7 is out programs are breaking by the scores. Personally I don't know why they couldn't install IE7 into different files(for example if IE6 dlls are MSHTML.dll, make IE7 MSHTML7.dll (versioning, hilarious thought right?) and just remove the shortcuts to the old IE6 crap so people can move forward with a new browser and corporations can continue to upgrade without breaking all of their legacy crap. I agree that IE6 (and still IE in general, though getting better) NEEDS TO GO. Dropping a product and all of its capabilities without going through a deprecation cycle (Like GLIBC and such) is completely batshit insane.

  142. The 1995 answer by dbIII · · Score: 1
    This statement is pretty common in the Linux world... "all you have to do is recompile..."

    Your distribution has a package management system and other people do it for you but if you wish to play with things too new to be available that way there is a learning curve.

  143. Backwards compatability is overrated by msobkow · · Score: 1

    Corporations, government, and other large organizations put together a matrix of hardware, O/S, third-party products, and in-house software to build a production system. Once it's been tested and certified for production, you do not touch it except to apply critical security patches.

    When you buy a new box for upgraded OS and products, you go through the effort again.

    Even if the APIs are 100% compatible on an OS upgrade, you still need to recertify the combination of products.

    Only nickle-and-diming PHBs that understand a bit of IT think backwards compatability matters; those who are completely clueless leave it up to the techs. The other segment of people who care about compatability are those who have a healthy chunk of change invested in office automation, games, and other software who buy a new PC with a new OS.

    While I sympathize with the fact that an OS upgrade usually means an "upgrade everything" cost, business realizes that, and factors it in to the decision whether and when to upgrade.

    --
    I do not fail; I succeed at finding out what does not work.
  144. Re:SCO unix 2 linux migration req. backwards compa by Anonymous Coward · · Score: 0

    My old COBOL programs happily work on FedoraCore 6 (vanilla kernel 2.6.18).
    We moved them from AT&T SysV R3 > SCO OS5 > RH7.2 > RH8 > FC3

  145. Weird by Anonymous Coward · · Score: 0

    I have never seen anything other than trivial applications that work from release to release of microsoft windows. Even the version of M$ paint from 3.1 would not work on windows95. The only backwards compatibility Microsoft has kept, is in the backend where it saved THEM work/money, and caused everyone else pain.

  146. Complete bullshit. by jotaeleemeese · · Score: 1

    Applications are firmly tied up to OSes.

    You rarely, if ever, install an application in a new OS which was designed for an old one.

    And I am talking about Fortune 500 companies all around the world, which is where I have been working for the last 15 years.

    In smaller companies you may do so, and as long as the application provider tells you it should work, you should be on the clear, but notice how the application is the one that dirves the adoption of the OS.

    --
    IANAL but write like a drunk one.
  147. MS software becomes EOL by jotaeleemeese · · Score: 1

    And then you are in your own. No patches, no fixes. No nothing.

    With Linux you can hire support or fix problems yourelf (as in hiring developers to get you out of a hole).

    --
    IANAL but write like a drunk one.
    1. Re:MS software becomes EOL by Sancho · · Score: 1

      Irrelevant. I asked where Microsoft said they were moving to yearly licensing, and why I can't run their older stuff, not "why is open source better than proprietary."

      It's perfectly possible to run Windows 98 safely for legacy applications.

  148. In which planet do you live? by jotaeleemeese · · Score: 1

    I want to be IT manager there.

    --
    IANAL but write like a drunk one.
  149. They compiled? by jotaeleemeese · · Score: 1

    They should run. As simple as that.

    To put the burden suqarely on the developers for backwards compatibility is quite something.

    What should happen is that backwards compatibility should not be used as a selling point for any OS because it is completely impossible to guarantee it.

    --
    IANAL but write like a drunk one.
  150. Why are you compiling stuff? by jotaeleemeese · · Score: 1

    Just use the standard tools to install software.

    If you have to compile stuff you machine is classed as a devleopment/QA one, in which case things are guranteed to brake.

    Get yourself a virtual machine were to test your compilations and stop whining for bunnies sakes.

    --
    IANAL but write like a drunk one.
    1. Re:Why are you compiling stuff? by PFI_Optix · · Score: 1

      I was compiling stuff because the package manager wouldn't. I was using Ubuntu 5.10, and even though the app I wanted (a PHP editor) was listed it refused to install. I downloaded the app and tried to compile--only to find that I needed another package. Which needed another package. Which needed another package. Which...ahh screw it, I'm going to Windows.

      Wouldn't it be simpler to prepackage an app with all the libaries and other apps necessary for compiling than to force someone to hunt down layer after layer after layer of dependencies?

      The Linux community has been slowly losing my support because they seem completely uninterested in making Linux easy for me to start using. If I can't get the apps I need to work, what's the use in learning the OS? How am I supposed to learn the OS if there are no practical applications for it? Sure I can surf the web and edit office docs, but my Microsoft OS does that and far more.

      I really want to get into Linux. It's a pity they've made it so frustrating that I keep putting it back on the shelf.

      --
      120 characters for a sig? That's bloody useless.
  151. Backwards compatibility through VMs by Kadin2048 · · Score: 1

    This is a fairly good point.

    I was talking to a coworker today about running old DOS applications, for people that don't want to or can't learn new software, but have new hardware.

    Rather than try to install WordPerfect for DOS on top of an actual modern Windows install, I think it's a whole lot easier these days to install a virtualization system on top of the host OS, and run FreeDOS (or actual MS-DOS, if you can find a copy) on that, to support the old applications. As long as your VM system emulates the 'bare metal' and isn't aimed at only supporting one type of client OS, then this is pretty simple to set up.

    I think actually the next time someone in my family complains about how much harder computers are to use today versus ten years ago, I'm going to set up MS-DOS in a VM (I still have a whole set of 3.5" installation floppies somewhere), fullscreen it, and see what they think. Somehow I think perhaps they're viewing the past through rose-colored glasses...but who knows. Maybe they'll prefer the old way.

    --
    "Ladies and gentlemen, my killbot features Lotus Notes and a machine gun. It is the finest available."
  152. Re:Windows Backward Compat? by DutchUncle · · Score: 1

    I for one haven't found any useful applications I can run prior to mid 90's.

    How about Air Traffic Control?

    There are so many comments in this thread with the modern viewpoint that anything older than last week is unimportant. Businesses have huge amounts of old data that can't just be invalidated at a whim because it may need to be accessed (legal reporting requirements), and hardware was bought on 20 or 30 year amortization (by law at the time in the telecom industry), so change is a big deal. Heck, even Microsoft's change of "time" from 32 to 64 bits screws up all kinds of compatibility with existing databases and any backups thereof.

  153. Protecting market share and backwards compatibilit by Keybounce · · Score: 1

    Pure and simple, Microsoft has protected their market share by remaining backwards compatible, and will continue to do so for that reason only.

    When windows 95 came out, and Microsoft was competing with 3.x versus Os2/Warp, 95 was released without one critical piece of backwards compatibility.

    Although old 16 bit programs were given twiddled names from file requestors (needed, as they needed to work with short file names), end users were shown ugly twiddles all over the place.

    This effectively meant that older programs were broken, and needed to be replaced with new ones.

    New ones that didn't run on the competing OS's.

    Suddenly, the market share of microsoft increased -- leveraging the "new computers come with us by default" / "People have to buy and install our competition" with "New apps no longer work with our competition".

    Microsoft keeps or breaks backwards compatibility based on "What's best for us, given the current environment?".

    Don't forget -- XP changed the driver model and broke a LOT of device drivers. Still think they have backwards compatibility as a big thing?

  154. Re:well by bogado · · Score: 1

    There is aways the option to run a virtual machine with the outdated API installed. In fact there is aways the possibility of selling those compatibility APIs so that those business who depend on those and do not wish to maintain an old machine. Those could even be a set of DLLs that would run in a different environment.

    --
    []'s Victor Bogado da Silva Lins

    ^[:wq