You may need your rant-proof goggles for this post.

In the last few years, we’ve seen the price of major operating system upgrades drop, down from $100-to-$150 to…$0. And free is a magic number – once you make something free, people install it without doing a lot of critical thinking about whether something is a good idea or not.*

This creates a software compatibility disaster for OS vendors, app developers and users.

  • The OS vendors (Microsoft, Apple, etc.) try really hard to keep the minor patches to the OS from breaking compatibility. They need users to install updates aggressively to fight malware. So a break due to a minor patch is a rare thing.
  • The OS vendors can’t keep legacy APIs going forever – at some point they need to change fundamental technology.** So they save the big changes for major versions.
  • Major versions are now free – so users install a major update aggressively, taking incompatible changes that the OS vendors had to put somewhere, breaking their apps.

We first saw this with Yosemite, which caused us a bit of a fire drill, and now we’re seeing it with Windows 10, where I have just seen a pile of weird-o random behaviors that are specific and unique to Windows 10. At least some of them seem to be a clear case of OS compatibility rules changing at a major version.

So first, here’s my advice:

Don’t be the first pilot on the block to update the OS on your X-Plane machine.

Let someone else go first. These days new OS releases just don’t offer some new feature that is so totally awesome and amazing that you can’t wait a few weeks to see if the compatibility situation is good or bad.

In the long term, what we need is a new normal. Currently application developers depend on compatibility-breaking API changes happening at well-defined, infrequent, major inflection points, e.g. the full OS upgrade. But full OS upgrades are gone; Microsoft is saying that they’re just going to patch Windows 10 forever, and Apple puts out a new OS version so frequently that they’re not all that different from patches.

We could simply declare ourselves “not compatible” with future OS versions until we’ve had time to survey the damage, but that’s not a real solution – most users are going to update first and read the fine print later.

It may be that we have to follow OS betas much more closely. There’s definitely some irony here – I am always berating third party developers to retest their add-ons against X-Plane betas. (“We’ll fix the bug, just check your add-on!”) Third party developers have a good reason not to want to do this – they need to do real work on their new aircraft, not spend their time testing our builds. We have a similar view about OS betas – it’s a time-sink for us to keep re-testing X-Plane on the latest unstable crazy-town beta.  (OS betas can be a pretty big mess, so isolating regression bugs that affect your product from general breakage is sometimes difficult.) But we’re in the same situation with Apple and Microsoft that third parties are with X-Plane: if you don’t report a problem, it may not get fixed.***

* This has had the effect of making free-to-play a near-requirement in the mobile market. If your mobile app category is even slightly competitive, then you are one of ten apps doing the same thing. A user will download and try every free app in the category before buying even one $0.99 app. So if your competitor is free-to-play and isn’t totally unusable and awful, you had best be free-to-play too!

** For example, Microsoft has been trying to evolve the rules about high-DPI devices and app resolution. This is a necessary step because monitors have become much larger and much higher DPI; keeping the old system forever would mean not actually supporting this technology.

*** Apple and Microsoft test third party products themselves to try to catch problems directly, and we now do the same thing with third party add-ons.  But the amount of test coverage we can find is definitely not adequate to guarantee that your add-on is perfect coming out of beta. All we can hope to do is add another layer of defense.

About Ben Supnik

Ben is a software engineer who works on X-Plane; he spends most of his days drinking coffee and swearing at the computer -- sometimes at the same time.

19 comments on “Major OS Upgrade? What Could Go Wrong?

  1. Or — you could ignore Windows 10 entirely for the foreseable future. Real world figures show that the latest Microsoft OS’ market share is less than 0.4%, compared to W8 (14%) and W7 (60%). Even if you have to contend with the inevitable vocal minority, it’s just not worth the hassle.

    1. That’s not so easy to do. With older OSes often the result of ignoring the OS is the product never working on the OS ever, including in demo form. So maybe you lose the sale. But a lot of Win10 users are Win 7 users who paid for the product, were happy, and now have a problem. Adoption rate is low because MS is being slow on releasing win10 upgrades, but we don’t have an “acceptable loss” percentage for users who are hosed.

    2. Do you have source to your market share statistics or it is only wishfull numbers? I think that share 0.4% for Win10 was about 3 days after release.

      For example… this page: //gs.statcounter.com/#os-ww-monthly-201508-201508-bar says market share 4.65% for WIN10 which is more than W8 and about 2/3 of OS X share. Win7 dropping constantly – 48.18% market share.

  2. Here is a workaround for the permission error on update 10.40b10 under Windows 10 if someone has this problem, I know I did. (thanks Ben for this tip)

    1. Use the installer to install the update but right click and run compatibility as Windows 7
    – Windows 8 option will not work (i tried)

    This should ensure that your installer is completing the update and not returning and update fail with a CTD crash (process halt)

    Just an observation

  3. I got windows 8.1 setup only for x-plane dual boot. So my mac i can do and test like i want. I know my stable setup is there.

    Those who like to test should make dual setup with a spare drive.

    Btw latest beta is nice. Question if the gps is off how do you turn it on. The upper left button is it suppose to be on of switch? I switch from airfoillabs plane to baron and gps was off? Could not turn it on. Is this x-plane bug of airfoillabs bug ?

    1. The GPS depends on the GPS power to be on, oviously. So there must be three electrical controls that are all on:
      1. The master switch must be on to get any power at all
      2. The avionics master (sim/cockpit/electrical/avionics_on) must be on to get power to the avionics stack
      3. The GPS power (sim/cockpit2/radios/actuators/gps_power) must be on and not failed

      My guess is that the airfoillabs plane leaves any of the three power sources off when you switch to a different plane.

  4. I think that in this respect there are not many viable alternatives other t’han distributed, collaborative testing, i.e. a more or less large bunch of x-plane users deliberately willing to test new OSes and/or combinations of new addons / new releases of X-Plane hunting for bugs. The complexity of current OSes and applications is rapidly becoming overwhelming for the majority of software makers out there. The difference with voluntary testing would be that external testers would adhere to an agreed testing procedure, be it a formal test plan or at least a checklist of “must work” items. I’ve just upgraded to Win10 pro and x-plane 10.36 is working fine for me… At the moment. If I can contribute to more thorough testing, let me know.

  5. I received my automatic upgrade to Windows 10 on the day it was released. I ran into a serious problem with my Carenado sim aircraft immediately afterwards. I discussed this issue with the designer of the SMS DHC-10 Beaver and with his help I discovered that the problem lay with the file “X-Plane 10\Aircraft\…\plugins\sas\64\win.xpl” program file. I tried some of my Carenado sim aircraft, all of which use this same file, plugins\sasl\64\win.xpl and everyone of them had exactly the same problem (missing virtual knobs and switches and some other problems). I am going to try to post a message on the MS Windows forum, but I encourage anyone with this problem do the same. Maybe a bunch of squeaky wheels will get their attention. Also, be aware that my Norton antivirus kept deleting this file as a possible threat and did not inform me that it thought win.xpl was a security risk (which it is not).

    1. Now that you have explained this issue, I remember that I have also seen something like this with the Alabeo DA-40. Sometimes I couldn’t use the knobs or buttons in the virtual cockpit, but I didn’t thought that it was an issue with Windows 10, because I never used the DA-40 with Windows 7 or 8. This issue was temporary and not easy to reproduce. We both should find out how to reproduce this and file a bug.

      1. If a plugin did not load (e.g. win.xpl for the airplane), at that point _all bets are off_ as to whether anything will work – the airplane depends on the plugin for integral features including custom datarefs backing a panel.

  6. Ben i hate to sound like an ass but how could someone like yourself who writes software for a living and knows all the changes that comes with a major OS release, forgot to beta test their software.
    Its not like windows 10 came out of nowhere and we were all surprised. there was almost one entire year where windows 10 was released for the public to beta test and you forgot to check how xplane works with the new OS?
    I don’t comment much here but i have always been a fan of xplane but recently i have started loosing faith in you all.

    just wanted to rant

    1. We have -never- pre-tested a Microsoft beta OS in the past. It has not been necessary.

      Until Windows 10, that has pretty much -never- been a problem. Microsoft has, in the past, done a superb job of making sure that APIs continue to work as expected in the OS, and we don’t use exotic features of Windows.

      What we do do is keep an ear to the ground to what users are telling us about pre-release OSes, with the option to step in if things look screwed up. The preliminary reports of Win10 sounded like “driver issues only”, which is something we can (and did) report on to the GPU teams but can’t fix.

      So you can say in hind-sight that we should be more aggressive in beta testing our software on the latest OSes, but the flip side is that when we spend time looking at new OSes, _X-Plane doesn’t get any better_. It just stays still while we look at issues introduced by the platform moving under us. It’s a zero sum game.

  7. having no real issues for me with x-plane’s current beta build with windows 10 after the upgrade from win 7. except lower frame rate on both my computers one has a nvidia gtx 980 with current nvidia drivers and the other has a ati r9 380 current drivers. and on both machines the frame rate is on average 10fps slower before the upgrade. and I thought with dx 12 I should have seen an increase in performance not a decrease. is the x-plane beta optimized for dx 12 yet? or is this something to do with the new win 10 drivers. so not sure if this might a bug to report or not.

    1. We are not and will never be optimized for “direct X 12” because we -do not use directX-.

      With that in mind, the underlying OS code that manages the GPU and display may not be as friendly to the GPU driver writers as win 7/8 is.

      This is -not- something for us to fix – if the same X-plane code on the same hardware runs slower on the NVidia or AMD driver on Win10 than on Win7 or Win8, that’s for MS and AMD/Nvidia to fix.

  8. I tried it, because I had great luck with a few laptops and really do like the looks and feel of it. I rolled my flightsim computer back to Windows 7 today, because I have had several x-plane update problems and I have had two CTDs, which I never had before. My X-Plane is more important than the latest and greatest, so here I go with my 777 and 757 validations again, but it’s worth it. Maybe the two will “shake hands”, but, until they do, I’m Win 7 on this computer.

  9. Ben,
    I am one of the people that keep an close eye on your blog and I am surprised to hear that you do not take in consideration developing a version of XP with DX12 capability. In the long run will bring you a lot of happy customers considering that Win10 will be on the market long years from now. Maybe having a version compiled for WIN10and let the customer buy the one that work with their systems. Same with the hardware limitation…( have a low end XP for low end computers and one fully optimized for high end systems like mine) I am running XP on a Titan X and I have the feeling that the GPU is capable of pushing more fps but is limited by the OGL or XP code. OGL also is very poor optimised (ex. with some sceneries I got 11Gb of VRAM loaded). I know that require a lot of work for your team but hopefully you will get an edge over the competition, this way attracting more developers by the time Prepar3d and FSX will come up with a 64bit fully optimized version. Just my 2 cents…
    Anyway I’m a big fan of your product and I look forward to see what new features the new versions will bring.

Comments are closed.