This might be why Windows 10 isn’t called Windows 9

We were all pretty surprised when Microsoft announced the name of its new OS yesterday. The company justified the name choice by saying Windows 10 represents too great a leap over Windows 8 to be called anything else. However, a Redditor who claims to work for Microsoft has suggested another explanation:

Microsoft dev here, the internal rumours are that early testing revealed just how many third party products that had code of the form

if(version.StartsWith("Windows 9"))
	{ /* 95 and 98 */
	} else {

and that this was the pragmatic solution to avoid that.

This seemed suspect to me, since internally, Windows version numbers are a long way from 9 still. However, a couple of searchcode lookups linked by another Redditor suggest some software does use the method above to look up Windows 95 and 98.

So, yeah. Microsoft’s name choice might have been more of a pragmatic move than a marketing stunt. Funny.

Comments closed
    • jsfetzik
    • 6 years ago

    This may sound like a dumb reason, but given my experience with various installers in the enterprise world, this wouldn’t surprise me at all. You wouldn’t believe the weird and dumb things that install do to detect versions.

    • Zeratul
    • 6 years ago

    Awful lot of non-programmers in here with little to no respect for how lazy, unthinking, and silly programmers can be.

    Also that Microsoft doesn’t make the functions that return these things, it’s Python or Java or other environments that translate things into the names. Those github searches in the third link show just how common it is. Even openJDK (the open source implementation of Java) tests this way.

      • Duck
      • 6 years ago

      “I choose a lazy person to do a hard job. Because a lazy person will find an easy way to do it.” – Bill Gates.

        • Klimax
        • 6 years ago

        Well, there is lazy and then lazy and incompetent with bonus being ignorant. (and another idiot) Just some small reading of Raymond Chen’s blog or TheDailyWTF…

    • Wirko
    • 6 years ago

    What if this somehow survived in application code written in 1987:

    if(version.StartsWith(“Windows 1”))
    { /* version 1 */
    } else {

    Related trivia from Wikipedia: Windows 1.0 support ended on Dec 31, 2001.

      • meerkt
      • 6 years ago

      Java didn’t exist before 1995.

    • sparkman
    • 6 years ago

    Buy Windows 9!
    Buy Windows 95!

    Even ignoring the potential software issues and viewing as a pure marketing decision, I guess you can see why MS would be reluctant to market “Windows 9” as a new product when similar-sounding “Windows 98” and “Windows 95” already have negative reputations in many customer’s minds.

      • odizzido
      • 6 years ago

      95 yeah that OS was terrible. I stuck with DOS.

      98 I found good though, and one thing that I miss from 98 is when you open the task manager it halts all processes. I mean in general I would like them to continue, but having the option would be nice.

      • Mat3
      • 6 years ago

      Huh!? Windows 95/98 were hugely popular and a colossal improvement over their predecessor Windows 3.1. For me it was like the dawn of a new age with PCs. The Windows 95 UI basically laid the ground work for every subsequent version of Windows that followed up to Windows 7.

        • sparkman
        • 6 years ago

        Were popular.

        Today, MS marketing could be a tad reluctant to associate their top-of-the-line new-product with a 19-year-old product that, despite the groundbreaking GUI, was notoriously crashy and aged poorly in comparison to its more-successful successor, Windows XP.

          • derFunkenstein
          • 6 years ago

          The logic hurts my brain. To follow it means that they should not call it Windows at all.

    • vargis14
    • 6 years ago

    I am surprised they did not do something like add windows 7 with windows 8 and put out windows 15 since it seems to be a combination of both.

    Does not make sense but I do not think them worrying that widows 9 would be confused with windows 95/98. I really do not know hat they think of in their think tanks…….. perhaps they think too much.

    Might as well call it windows XP10 or 10XP or better yet Win 10DX12

    • Deanjo
    • 6 years ago

    This is probably the lamest reasoning behind the version number of the next windows.

    What about the millions of applications that do not even have such a version check or one that simply checks a version number greater than x? Any competent programer is not going to use such a check anyways, they are going to use a better method such as the ACTUAL version number (ie: 6.3.9600) . If there is some lame software out there doing crappy version checking using the above method then you probably don’t even want that shoddy code anywhere near your system.

      • [+Duracell-]
      • 6 years ago

      [url<]https://searchcode.com/?q=startsWith%28%22Windows%209%22%29%20lang:Java[/url<] [url<]https://searchcode.com/?q=contains%28%22Windows+9%22%29[/url<] Version number won't help, either. Many programs were written to look at MajorVersion and MinorVersion similar to this: [code<]if (MajorVersion >= 6) && (MinorVersion >= 1) { // do things }[/code<] So it would break if Microsoft decided to change their kernel version to 7.0. [url=http://www.reddit.com/r/programming/comments/2i14ny/if_osnamestartswithwindows_9/ckxzw0e<]Here's a pretty good reddit post explaining it[/url<].

        • Deanjo
        • 6 years ago

        [quote<] So it would break if Microsoft decided to change their kernel version to 7.0.[/quote<] Not with the example you provided.

          • [+Duracell-]
          • 6 years ago

          [code<] MajorVersion = 7 MinorVersion = 0 if (7 >= 6) && (0 >= 1) { // This doesn't execute } [/code<] [url=http://msdn.microsoft.com/en-us/library/windows/desktop/ms724451(v=vs.85).aspx<]MSDN article on GetVersionEx which the above code is sort of snipped from[/url<].

            • Deanjo
            • 6 years ago

            From your own link:

            [quote<] For example, if your application requires Windows XP or later, use the following test.[/quote<] [code<] bIsWindowsXPorLater = ( (osvi.dwMajorVersion > 5) || ( (osvi.dwMajorVersion == 5) && (osvi.dwMinorVersion >= 1) )); [/code<]

    • odizzido
    • 6 years ago

    Version numbers have lost their meaning. Chrome 39? Firefox is at 32, we’re back to using the xbox one(no wonder people call it a bone, otherwise how would you know?). Even movies are going back to their original. If I say I am watching robocop, rambo, etc then what movie am I watching? who knows.

    I remember when an update from version 1 to 2 would be a big thing, now every minor patch gets a new version.

      • Peter.Parker
      • 6 years ago

      Rambo? Did they do a remake already? Unless you meant it could be any number from 2-5 (since the first one was called just Rambo).

        • I.S.T.
        • 6 years ago

        No, the first one was called First Blood. [url<]http://en.wikipedia.org/wiki/First_Blood[/url<] It was sometimes distributed years later as Rambo: First Blood, IIRC.

      • meerkt
      • 6 years ago

      Games too: Tomb Raider (2013), Alone in the Dark (2008), etc. And hardware like tablets.

      Annoying indeed. Software-wise, in the past you could at least know minor version updates are likely harmless. Now without research you have no idea (see the Firefox interface change). I update much less often nowadays.

      In Windows it doesn’t matter much because, thankfully, for now, major updates aren’t as rapid.

    • kvndoom
    • 6 years ago

    Hell, I thought Threshold was a pretty cool name.

      • Brainsan
      • 6 years ago

      But windows don’t have thresholds. Doors have thresholds.

    • HisDivineOrder
    • 6 years ago

    This sounds like a Windows reason if I ever heard it.

    If they were trying to build on good will, they should have called this:

    Windows XP 2
    Windows XPX
    Windows XPXL
    Windows 7.1
    Windows 7X
    Windows Not-8

    Or my personal favorite:

    Windows.

    That’s it. Just Windows. No numbers. Let it be like Google Chrome or most things that are updated these days. No more OS to sell, no more big versions to sell. Just updates to a constantly evolving system and stop plastering version numbers everywhere.

    Windows 10 is pretentious even if calling it Windows 9 would have led to all kinds of Window 9* shenanigans.

      • absurdity
      • 6 years ago

      What you’re asking for is pretty much the direction they’re heading – no more big releases, just regularly updated releases. If they really do follow that, it probably would morph into being called Windows (instead of Windows 10) eventually.

      • Firestarter
      • 6 years ago

      [quote<]... Windows ...[/quote<] How would they monetize it? Most consumers today would sooner switch to Linux Mint than pay a subscription for Windows, unless that subscription is a non-optional "3 year update plan" or something of that order included in the price of their new computer.

    • southrncomfortjm
    • 6 years ago

    Couldn’t they just name it something else in the code? Like windows X9? That way the code wouldn’t execute, right?

    • bwcbiz
    • 6 years ago

    I wouldn’t really consider support allowing that legacy code to fail gracefully a very good reason. That stuff is overdue to be broken and replaced, just like all the y2k code that outlasted its assumption that 2 digit years were sufficient.

    • ronch
    • 6 years ago

    Riiiiigghhttt….

    – Dr. Evil

    • Krogoth
    • 6 years ago

    What does this even matter?

    Microsoft can call it Windoze 1337 Edition and it will still sell well if manages to deliver on its promises.

      • Klimax
      • 6 years ago

      ETA: Misread your comment. You are talking about complaints. Comment sofdeleted.

    • albundy
    • 6 years ago

    hah, suck it, ludi!

    • MadManOriginal
    • 6 years ago

    The complaints have begun within one day of being announced. Another record set by Microsoft!

      • UnfriendlyFire
      • 6 years ago

      No, I think the complaints started LONG before Windows 8’s info and new GUI became public knowledge.

    • Meadows
    • 6 years ago

    So an entire new version of Windows gets named differently because some programmers kept saving two lines of code with regards to backward compatibility, and Microsoft doesn’t want to bother with them?

    What exactly are these “third party products” that are “many”?

    And why not annoy Apple further by just calling it Windows X? Would even have a kinky sound to it if you say it out loud.

      • Voldenuit
      • 6 years ago

      [quote<]And why not annoy Apple further by just calling it Windows X? Would even have a kinky sound to it if you say it out loud.[/quote<] WindeX. It's time to wipe the slate clean.

        • Meadows
        • 6 years ago

        Oh, you.

      • Welch
      • 6 years ago

      If they called it Windows X people would get confused with Windows X and XP. Then people not familiar with the OS progression would start thinking that maybe XP means “Windows 10 Plus” or some craziness.

      I don’t get it… just stick to years. I mean I understand the downside to using the year… It requires you to know the approx release year (hard for Microsoft apparently). It makes your product look like its always behind after the year changes. The out of date thing isn’t so bad when you consider how fast M$, Apple and others want to be releasing major software updates.

    • MarkG509
    • 6 years ago

    So, wait a minute. Are they planning on, and does this enable, breaking backwards-compatibility with older Windoze releases?

    IMHO, this is the worst thing about Apple and OS X. I once told a so called “genius” that was trying to sell me some software upgrade that I had Windoze programs older than him, that I still needed to run and that still worked just fine.

      • blastdoor
      • 6 years ago

      Wow, you showed him. You must have felt just like Matlock.

        • HorseIicious
        • 6 years ago

        So if he was feeling like Andy Griffith, does that mean the “genius” was more of a Barney Fife?

      • Neutronbeam
      • 6 years ago

      And then you told him to get off your lawn while you shook your fist at him?

    • slowriot
    • 6 years ago

    Ok… so go with basically any other name that doesn’t imply you’ve somehow skipped a version.

    • Steele
    • 6 years ago

    Wait… now I’m confused.

    See, in my experience, only every-other windows has been worth getting.

    95 was ok (but it was all you could use), ME was meh. 98 was great, NT was NOT. XP was king, Vista blew chunks. 7 is awesome, and 8 was a mess. So… if 9 isn’t gonna happen, I don’t know what that means for 10 o_O

    I may have the order messed up a bit in those early stages, if so I apologize. But the point still stands, I think.

      • Philldoe
      • 6 years ago

      95>98>>98SE>ME>2000>XP>Vista>7>8>8.1>10

      Hmmm… Every other Windows version you say? Something does not add up.

        • modulusshift
        • 6 years ago

        Full consumer-focused versions is the usual criteria. NT doesn’t count, nor does 2000, those were professional-focused.
        95>98>ME>XP>Vista>7>8>10

          • EndlessWaves
          • 6 years ago

          Plenty of consumer machines were sold with 2000 instead of ME.

          Vista was a brilliant operating system by most measures, it was only the day to day interface niggles that let it down (and of course all the third party transition problems early on).

      • Klimax
      • 6 years ago

      XP king? Not till SP2, when most people mostly settled down… (Thre is one common thing between 95, XP, Vista and 8…)

    • mizkitty64
    • 6 years ago

    The Windows 9 upgrade is rolling out on Patch Tuesday…Oct 13.

    • sschaem
    • 6 years ago

    How about Windows ℘ … “Its so Fancy its the ‘Prince’ of OS”

    From what I can tell windows 10 is just a ‘bug fixed’ version of windows8, so “a great a leap over Windows 8” seem like a stretch.

      • Firestarter
      • 6 years ago

      TWFKA9

    • derFunkenstein
    • 6 years ago

    OK so did you guys do another font, or is IE11 in Windows 10 Tech Preview different about how it renders fonts? Looks way different than it did before I installed.

      • Meadows
      • 6 years ago

      Did you set up Display/ClearType in the Control Panel? Or whatever the hell it calls that now.

        • derFunkenstein
        • 6 years ago

        No but I’d never bothered with it in Win 8.1 either. I’ll give it a whirl.

        • derFunkenstein
        • 6 years ago

        Seems to have made a difference. I tended to lean towards darker/heavier weights as I adjusted, and the site seems closer to what I was used to. It wasn’t bad, it was just different.

          • Ryu Connor
          • 6 years ago

          You didn’t install the OTF version of the Source Sans Pro font locally did you? I put up a link to try that back when Cyril debuted the new font. DirectWrite shows the OTF font with a much heavier weight.

            • derFunkenstein
            • 6 years ago

            No, I did a clean install and haven’t installed any fonts.

            • Ryu Connor
            • 6 years ago

            I more so meant your host, not the freshly install VM guest. 😉

            • derFunkenstein
            • 6 years ago

            It’s not in a VM, it’s on a spare HDD. I’m booted into it natively.

            edit: now I know what you’re getting at, and no, I never downloaded/installed the fonts. I felt like that was a waste of time to work around something broken. 🙂

    • xeridea
    • 6 years ago

    People still run Windows 95?

      • sreams
      • 6 years ago

      No… but people do still run apps that were designed to run on Win95. Even though it may be time to move on…

      • meerkt
      • 6 years ago

      No. Just Win98SE.

    • travbrad
    • 6 years ago

    They seemed to have no problem naming one of their products Xbox One, despite there already being a Xbox. That seems more likely to get confused than confusing Windows 95 with Windows 9.

      • rxc6
      • 6 years ago

      How many original Xbox games can you run in the xbone? I thought so.

        • jihadjoe
        • 6 years ago

        Considering both are x86 and probably based on the DX library and Windows kernel of their time, it shouldn’t actually be too difficult to get Xbox games to run on Xbone if Microsoft really wanted to.

          • Waco
          • 6 years ago

          This. It would be trivial to support (at least in an unofficial capacity) original Xbox games on the XBone.

      • Klimax
      • 6 years ago

      Not about public, but about code. Written as atrociously as possible.

    • Peter.Parker
    • 6 years ago

    I find it hard to believe that this is the reason.

    First of all, do not forget that this function is actually provided by Microsoft. And they could call (even internally) this version “Windows IX”,”W9″ or even “7 of 9” just to avoid that.

    Second of all, I’m sure that they could handle all the 5 calls from the people still running Windows 9X.

      • bhtooefr
      • 6 years ago

      The problem isn’t Microsoft’s function (which returns the kernel version and family, so on Windows 98, it would return standard Windows 4.1, and on Windows 10, it would return Windows NT 6.4), it’s Sun’s function in Java that parses the output of Microsoft’s function, and then generates a marketing name for the Windows release from that.

      Basically, this is a Java problem.

      And, where this becomes a real problem is software [i<]designed to handle[/i<] Windows 9x systems, not using Windows 9x itself today. For instance, if a Java program written in the early XP era or so detects that it's running on 9x, it may refuse to run... and if it's using this method to detect that it's running on Windows 9, it may fail. (Of course, Oracle could just make their function return "Windows Nine", or even use two spaces. Then that would solve the problem as well. And, old versions of Java would detect this release as either NT 6.2 (Windows 8) or NT 6.3 (Windows 8.1) depending on whether they have a requirement for 8.1 for some functionality in their manifest, due to how Microsoft has deprecated GetVersionEx.)

        • Peter.Parker
        • 6 years ago

        Oh, I see, it’s a Java function. Thanks for taking your time to explain this to me. I now understand the downvotes.

    • GasBandit
    • 6 years ago

    I’m not clear on why they don’t just label em like car models. Windows 95 was from 1995 (or thereabouts), 98 in 1998, 2000 in 2000… then suddenly we get XP and ME and Vista and 7 and 8?

    Why not just go back to the year naming convention? Windows 2015.

      • Milo Burke
      • 6 years ago

      Well, merely assigning a year to them can make them seem really out-dated real quick. Then again, if the public feels their OS is outdated, then Microsoft sells more software. =]

      • pyro_
      • 6 years ago

      They already do this for the windows server versions

    • Vulk
    • 6 years ago

    2 seconds on Stack Overflow: [url<]http://stackoverflow.com/questions/457872/how-do-you-check-the-windows-version-in-win32-at-runtime[/url<] Windows 95/98 used win32, the call to verify version under that is very different than what is posted above. MSDN's version looks a little closer to the above... [url<]http://msdn.microsoft.com/en-us/library/windows/desktop/ms724429(v=vs.85).aspx[/url<] However you have to remember that Windows 95/98 aren't even freaking NT Kernels, and most of the apps written for them were 16 bit back in the day to save disk space and haven't worked in anything beyond XP (Edit: heck did they work natively with XP, actually I don't think they did, I think VB6 had major issues installing on XP because of that) without elaborate hacks and flaky compatibility modes. That's why most businesses pushed back on upgrading to 7 so hard and so long, because they had so much ancient legacy code to port. However the real kicker is that to perform that operation, you have to take the integer you get back, call a function, generate a string, then do a text compare to do an exclusion when you technically already know what version you're in from the function call... I'm sure there is a way to make the sample code in the article work. I'm sure there are languages and run times it's perfectly valid. I'm also not sure what software was written long enough ago to be doing bad version checking for Windows 95/8 even is any more. And why risking that software Really, if this is why they skipped it... It's really lame. Worst is the fact that there aren't any stack overflow or MSDN articles, or any other articles on actual programming sites that references version.StartsWith() for windows, mostly just things like Maven source control, which lends a special smell to this. The chances of this being BS are pretty close to 100%, and I fail to see how breaking a few really old apps that would probably be enterprise only at this point would impact windows naming 19 years later...

      • derFunkenstein
      • 6 years ago

      [quote<] that would probably be enterprise only [/quote<] You answered your own question.

      • ChronoReverse
      • 6 years ago

      Someone posted these in the Reddit link:

      [url<]https://searchcode.com/?q=indexOf%28%22windows+9%22%29[/url<] [url<]https://searchcode.com/?q=startswith%28%22windows+9%22%29[/url<] Seems to me it's used disturbingly often.

        • Andrew Lauritzen
        • 6 years ago

        Yeah it seems that a lot of Java programs in particular do seem to compare strings… sigh :S

        • meerkt
        • 6 years ago

        Java’s not for real software. 😉

        Native software uses GetVersionEx(): [url<]http://msdn.microsoft.com/en-ca/library/windows/desktop/ms724451(v=vs.85).aspx[/url<] (Or, well, the now recommended macros: [url<]http://msdn.microsoft.com/en-ca/library/windows/desktop/dn424972(v=vs.85).aspx[/url<] )

        • meerkt
        • 6 years ago

        And it’s more of a Java issue than Windows. Anyway, old JREs wouldn’t recognize Windows 9/10, and new ones could be made to return whatever string they want.

        Here’s the code that fills the “os.name” property on Windows:
        [url<]http://hg.openjdk.java.net/jdk7u/jdk7u-dev/jdk/file/tip/src/windows/native/java/lang/java_props_md.c[/url<]

      • meerkt
      • 6 years ago

      Most Win9x software was 32-bit, and definitely in the Win98 era.

    • fellix
    • 6 years ago

    Also, 7-ate-9.

      • NeelyCam
      • 6 years ago

      Getting old.

        • derFunkenstein
        • 6 years ago

        So are the Half-Life 3 jokes yet ding dongs continue to make them.

          • willmore
          • 6 years ago

          HL3 Confirmed!

    • hansmuff
    • 6 years ago

    I think the reason is that the entirety of Germany would have had a giant laugh.
    “Windows Nein” meaning “Windows No”, and the german “Nein” is pronounced almost exactly as the english “Nine”.

      • Grigory
      • 6 years ago

      Yeah, but they would have called it Windows Neun (pronounced “noin”) anyway so this isn’t a problem, really.

        • hansmuff
        • 6 years ago

        Just like “Winblows” made it to Germany, this one would have made the rounds as well. But yes, you are of course technically correct, which is the best kind of correct.

          • Grigory
          • 6 years ago

          Hmm, yes, it could have developed as a joke in Germany to call it Windows Nein. I hadn’t thought about that.

          • way2strong
          • 6 years ago

          You’re not cut out to be a bureaucrat anyway, you’re only anal 78.36% of the time.

      • UnfriendlyFire
      • 6 years ago

      Enron’s previous name “Enteron” was a reference to intestines in Greek language.

      They only spotted the mistake after printing out business cards and halfway done with their renaming when they decided to shorten it to “Enron”.

    • jdaven
    • 6 years ago

    It’s called the W9X bug.

    • tipoo
    • 6 years ago

    It woldn’t have stopped them from calling it Windows Whizbang or something. Or referencing it as Windows2014 or something else in code, while calling it Windows 9 in public. I think it must be marketing driven. OSX would be one and one tenth ahead, (or, two, since .10 is now one tenth more than .9) after all.

    • chuckula
    • 6 years ago

    [quote<]So, yeah. Microsoft's name choice might have been more of a pragmatic move than a marketing stunt. Funny.[/quote<] Do you mean haha funny? Or funny: WTF SOMEBODY NEEDS TO BE SHOT!

      • Grigory
      • 6 years ago

      Why not both?

      • willmore
      • 6 years ago

      They program for Windows, they already long for death.

Pin It on Pinterest

Share This