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.
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.
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.
“I choose a lazy person to do a hard job. Because a lazy person will find an easy way to do it.” – Bill Gates.
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…
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.
Java didn’t exist before 1995.
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.
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.
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.
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.
The logic hurts my brain. To follow it means that they should not call it Windows at all.
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
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.
[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<].
[quote<] So it would break if Microsoft decided to change their kernel version to 7.0.[/quote<] Not with the example you provided.
[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<].
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<]
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.
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).
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.
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.
Hell, I thought Threshold was a pretty cool name.
But windows don’t have thresholds. Doors have thresholds.
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.
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.
[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.
Couldn’t they just name it something else in the code? Like windows X9? That way the code wouldn’t execute, right?
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.
Riiiiigghhttt….
– Dr. Evil
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.
ETA: Misread your comment. You are talking about complaints. Comment sofdeleted.
hah, suck it, ludi!
The complaints have begun within one day of being announced. Another record set by Microsoft!
No, I think the complaints started LONG before Windows 8’s info and new GUI became public knowledge.
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.
[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.
Oh, you.
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.
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.
Wow, you showed him. You must have felt just like Matlock.
So if he was feeling like Andy Griffith, does that mean the “genius” was more of a Barney Fife?
And then you told him to get off your lawn while you shook your fist at him?
Ok… so go with basically any other name that doesn’t imply you’ve somehow skipped a version.
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.
95>98>>98SE>ME>2000>XP>Vista>7>8>8.1>10
Hmmm… Every other Windows version you say? Something does not add up.
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
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).
XP king? Not till SP2, when most people mostly settled down… (Thre is one common thing between 95, XP, Vista and 8…)
The Windows 9 upgrade is rolling out on Patch Tuesday…Oct 13.
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.
TWFKA9
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.
Did you set up Display/ClearType in the Control Panel? Or whatever the hell it calls that now.
No but I’d never bothered with it in Win 8.1 either. I’ll give it a whirl.
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.
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.
No, I did a clean install and haven’t installed any fonts.
I more so meant your host, not the freshly install VM guest. 😉
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. 🙂
People still run Windows 95?
No… but people do still run apps that were designed to run on Win95. Even though it may be time to move on…
No. Just Win98SE.
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.
How many original Xbox games can you run in the xbone? I thought so.
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.
This. It would be trivial to support (at least in an unofficial capacity) original Xbox games on the XBone.
Not about public, but about code. Written as atrociously as possible.
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.
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.)
Oh, I see, it’s a Java function. Thanks for taking your time to explain this to me. I now understand the downvotes.
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.
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. =]
They already do this for the windows server versions
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...
[quote<] that would probably be enterprise only [/quote<] You answered your own question.
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.
Yeah it seems that a lot of Java programs in particular do seem to compare strings… sigh :S
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<] )
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<]
Most Win9x software was 32-bit, and definitely in the Win98 era.
Also, 7-ate-9.
Getting old.
So are the Half-Life 3 jokes yet ding dongs continue to make them.
HL3 Confirmed!
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”.
Yeah, but they would have called it Windows Neun (pronounced “noin”) anyway so this isn’t a problem, really.
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.
Hmm, yes, it could have developed as a joke in Germany to call it Windows Nein. I hadn’t thought about that.
You’re not cut out to be a bureaucrat anyway, you’re only anal 78.36% of the time.
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”.
It’s called the W9X bug.
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.
[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!
Why not both?
They program for Windows, they already long for death.