This. It's damning. I was an attentive nerd when this and the Stacker scandal went down and I was outraged. I've been a staunch open source advocate ever since.
Microsoft's willingness to sabotage competitor's software is an established fact.
"The AARD code was a segment of code in a beta release of Microsoft Windows 3.1 that would determine whether Windows was running on MS-DOS or PC DOS, rather than a competing workalike such as DR-DOS, and would result in a cryptic error message in the latter case."
"The rationale for the AARD code came to light when internal memos were released during the United States v. Microsoft antitrust case in 1999. Internal memos released by Microsoft revealed that the specific focus of these tests was DR-DOS. At one point, Microsoft CEO Bill Gates sent a memo to a number of employees, reading "You never sent me a response on the question of what things an app would do that would make it run with MSDOS and not run with DR-DOS. Is there feature [sic] they have that might get in our way?"
The author of that article says "I know from personal experience that today [2005] Microsoft takes application compatibility very seriously".
And if you want to install Windows on a computer that already has a Linux distribution installed (dual-boot), then Windows will replace the existing boot manager, making it really difficult to boot Linux. That thing used to happen then, and it still happens now (2015).
I don't see how those two things are in any way connected. The point they were making is that you might even be able take a Windows 3.1 app (but definitely a Windows 95 one) and run it on Windows 8.
I wonder if Solaris ABI compat is actually older than the Windows stuff. Solaris to this day maintains binary compat with older releases and, for example, a 32-bit fopen() will fail once you open 255 streams because that was the limit in the ancient ABI. Everyone using Solaris at one point or another has probably hit this and it caused some issue, but Sun^H^H^HOracle refuses to make modern operation the default, all in the name of ancient binary compat. That's a bit more hardcore than optional support you can enable.
Yes, it's annoying, but it's not app compat. And dual-boot is pretty far outside the mainstream, I don't blame them for not building out other boot loader detection and integration. Other bootloaders change frequently, and windows install discs come out maybe every two years. It's better to have consistent behavior (windows install WILL wipe your MBR) than sometimes it works and sometimes it doesn't, and when it doesn't work everyone says it worked for me, etc.
it's so far out the mainstream, that people have been doing it regularly for 20 years now.
Grub is old enough to attend Junior High. Lilo would be in grad school. they both have windows compatability. Microsoft not reciprocating is evidence of their intent.
"People" in this instance is a handful of special edge cases compared to the majority of computer users, even if we're only looking at people that build their own computer, or hell, even just looking at only linux users. Dual booting is a minority. Yes, you CAN do it. Linux has made it easy. Great! But not many DO.
Nobody gives hell to every other OS manufacturer that will clobber our current bootloader configs. That means more than OSX, btw.
On the other hand, Windows runs on 85 - 90 percent of desktop machines, whereas FreeBSD's market share on the desktop is probably below 1%. (This is not a judgement on FreeBSD's quality as a desktop system, I have used it myself for about two years and was very happy with it. But compared to Windows, its market share on the desktop is tiny.)
For better or worse, there is a difference between a system used by a tiny minority of people (again: on the desktop) and a system that practically has a monopoly on the (corporate) desktop and that is developed and sold by a company that has a history of anti-competitive behavior.
(And to be fair, I get the impression that things have begun to change at Microsoft since Nadella became CEO. But that still does not erase history.)
That other hand and its callbacks to anti-competitive behavior and whispers of monopolies don't have much bearing on anything unless you are prepared to substantiate exactly how this behavior impacts the market share of other competitors. (I wish you luck on that very, very long row to hoe.)
Meanwhile, even that "good behaving" Linux distro will happily remove Windows's boot record in favor of GRUB's, rendering the system reliant on a component that breaks if you want to remove Linux (and most people are way more likely to want to remove Linux than to remove Windows!). Hardly neighborly behavior in and of itself. And yet, I'm still not seeing a reason to cast aspersions on GRUB or Linux distros, nor am I seeing those twirly mustachios on their faces.
No OS gives much of a damn about anything else running on the computer. Claims to the contrary are literally farcical and the pseudo-damages it could theoretically cause to the easily bruised are silly.
> No OS gives much of a damn about anything else running on the computer.
Most Linux distros (the ones I have used, at least) will detect an existing Windows installation and put a corresponding entry into GRUB's menu. Linux has been able to access data on Windows partitions for many, many years.
I agree that the boot loader issue probably has at most negligible impact on the adoption of Linux (or any other OS for that matter). I am just saying that in light of Microsoft's history one may feel inclined to judge them differently.
you, sir, are excellent at using propaganda to discount people's claims. when malice is assumed, you discount it with "mustachio twirling" strawmen.
Now, instead of talking about the parent's point of direct anticompetitive behavior, we're somehow discussing "whispers of monopolies" that somehow put the burden of proof back on the grandparent, even though anyone older than 24 knows why microsoft is still not to be trusted.
I'm bookmarking your profile, so I can study your future comments. you seem to be on the bleeding edge of these advances. thank you for the excellent study tools.
Propaganda? You're confusing a love for the English language and a little command of rhetoric with something vastly different, chief.
Hell, I don't even use Windows as a primary platform; I'm typing this from a Mac while I'm (quite literally) waiting to meet a guy to sell my Surface Pro 3 that I never use. I'm just not impressed by rules-for-thee-but-not-for-me silliness and knee-jerk, irrational fear. I don't trust Microsoft any more than I trust any company. But I don't rely on the fears of fifteen years ago to evaluate the current state of the world, either.
I think you and I have a vastly different definition of propaganda. I considered your post to be information or ideas methodically spread to promote or injure a cause, movement, nation, etc. In this case, the cause and movement would be "microsoft is still evil, do not forget." do you disagree that your post fits the definition under these constraints?
This might be an Appeal to Dehumanization (I just created a new fallacy), but I consider about 75% of the people on HN to be legitimate people. the remaining reek of sockpuppetry. I felt the grandparent was a sockpuppet, and am treating the account as a dataset for future encounters.
I should be more mindful of the fact that there's (potentially) a human being behind the account I'm treating like an astroturfer. I can see why you considered this a personal attack.
If you want to name a new fallacy, name the bias where people are more likely to think someone is astroturfing or a shill when they disagree with them. That's a common one, and it's definitely against the rules on HN to go there without evidence. An opposing opinion is not evidence.
As you used it twice in this thread, I'm going to add "mustache twirl" (or variation) do my dictionary of rhetorical devices used to make an attack seem like less of an attack. it's very effective at disarming someone that calls it out. Thanks for this.
> I don't blame them for not building out other boot loader detection and integration.
It's not that they even try. Not even a little. Last time I installed Windows on real metal, it didn't even warn the other operating system would no longer boot. Microsoft probably has an internal policy to consider installing Windows is an upgrade.
And it should. Seriously, there are are less than 2% of users using Linux on the Desktop. Now a fraction of these users dual boot. Microsoft is a business, and it's bad business to spend money you could be using to make your product better to ensure that you play nice with every possible bootloader out there.
Most people that are capable of installing Linux (or some other Unixoid system) are probably capable of reinstalling GRUB (at least with a little help from a search engine of their choice).
But if you try to get your parents to give Linux a try, because their laptop ends up infected with some virus every other month, this does not help.
Which makes me think: What about dual-booting two Windows installations? This is probably a very rare scenario, especially with virtualization, but what if I was developing, say, device drivers and wanted to check my driver works both on, say, Windows 7 and 8/8.1? Does the Windows installer put my other Windows installation in the boot menu automatically? (Honest question, I have never tried this and probably never will.)
I wouldn't recommend linux if your parents keep getting malware. Wipe the PC, and set yourself up as the admin. Create a base user account for your parents, and RDP in to their machine to install programs for them. Or get them to use a tablet. The other option is to set them up with a mac. If they stay within the App Store, they're pretty safe.
OS/2 is perhaps not the best example, as early on it was a MS/IBM collaborative project. And even afterwards it had the economic backing of IBM. So if MS got overt about it, there would likely have been a lawsuit.
There is less risk of such from Linux. Even at their current size, RH is a flea next to MS.
This is limited to BIOS-based booting, and there isn't really a whole lot of choice there. There's no standardised mechanism for bootloader configuration in the BIOS world, so you have the choice of either:
(a) overwriting the existing MBR, or
(b) knowing how to configure every single third party bootloader, or
(c) not booting
In the UEFI world, the Windows installer won't overwrite any files it didn't install.
I recall story of leaked Win2k source code which was filled with profanity and ugly hacks. Surprising fact was how much effort was put in to make software suites work with windows [1].
Although these are ugly hacks but it is a general reminder that people who will buy the software won't see why some obscure bad pointer in MS Office is causing this but something that used to work perfectly fine in previous Windows doesn't work in the current.
It's so strange you mentioned the Win2K source leak - I was just thinking about this yesterday. I remember at the time there was warnings about it on Slashdot along the lines of "Don't download/read the source code, else you'll be 'tainted' and won't be able to commit code to Open Source projects!"
Has it been long enough that I dare peek at it now? ;)
You're probably fine, unless you ever want to commit to ReactOS. From what I've heard, they're very serious about not letting anyone with exposure to Microsoft's code touch the project, because the clean-room implementation requirements are so strict.
I never contributed to Mono because they didn't allow it if you had MS source code access. That was probably prudent, though should be OK now I'd guess.
What's funny is Microsoft had some of the same ideology. The belief was nobody could look at Open Source code, or they risked applying the GPL to, like, Windows Vista. The fear was real, if unrealistic.
The test could work both ways, if you really think about it:
1. I vaguely remember hearing stuff like that long ago - e.g. "Lotus 1-2-3 used such low-level features of the OS (MS-DOS) and the hardware (PC) - for performance, that it would not work on PC clones that are close but not 100% compatible.
2. It could also have meant: MS-DOS clones and PC clones were different enough (even if just slightly, but in crucial ways) that Lotus would not work on clones.
That's wrong. I started in that era and the saying was "till Lotus won't run" even back when it was fresh.
Microsoft also put misleading error messages in Win3.1 to sabotage DRI's DR DOS product. There are email snippets of the execs planning their strategy.
It's their standard operating procedure.
They fixed around SimCity because it didn't compete with any of their offerings.
Looking at the submitter's background I don't see any professional experience with Microsoft tech. Maybe someone can explain it to me - I don't understand why a guy has avoided Microsoft for his entire career feels the need to dredge up a 10 year old article that talks about events from over 30 years ago.
Too much pro-Microsoft news for you? Honestly - what's your interest here?
I don't understand why a guy has avoided Microsoft for his entire career feels the need to dredge up a 10 year old article that talks about events from over 30 years ago. Too much pro-Microsoft news for you? Honestly - what's your interest here?
A comment[1] somebody made yesterday on the "Twitter apologizes" story reminded me of this. I think it's an important story regardless of your opinion on Microsoft specifically, exactly because it highlights the risk inherent in building something on top of a platform you don't control. I wanted to highlight that that particular bit of wisdom isn't exactly something new.
Looking at the submitter's background I don't see any professional experience with Microsoft tech.
FWIW, I have spent plenty of time working with Windows and DOS in my life, I just don't highlight it, because it isn't really relevant to what I do now. I also don't mention OS/2, AS/400, RPG, Visual Basic and a laundry list of other things I've worked with that now seem more or less irrelevant.
This quote was mentioned in the recent discussion of Twitter's outreach to developers. I believe the intent of this submission was to share a slice of relevant history with those in the community too young to have lived through it.
I'm guessing that the millions of tech people who make their living off of Microsoft's back would probably disagree that building on a Microsoft platform is a bad idea.
would probably disagree that building on a Microsoft platform is a bad idea
But nobody said "building on a Microsoft platform is a bad idea". What is being said is that "building on anybody's platform involves risk, whether it's twitter, microsoft, facebook, google, IBM or $WHOEVER". The point of this post was to highlight an example of the discussion around this topic and to emphasize that it isn't a novel thing.
Drop what? Relevant facts and observations? You can just fuck right off with your weasely bullshit reasons and appeals to maturity.
And if you actually didn't give a shit, you wouldn't have replied but here I think now we see the real you getting upset that someone called you out on your bullshit reasons for posting this.
Which account? mindcrime and WorldWideWayne both seem to be alive at this time. Oh maybe you just meant banned from submitting stories. That makes sense. Thanks!
(Didn't see this earlier.) No, I'm sorry to say that what I meant is that we banned your account because https://news.ycombinator.com/item?id=10439668 was completely unacceptable, you've done this before, and you've ignored our requests to stop.
If you want us to unban your account, you're welcome to email hn@ycombinator.com. We're happy to unban people if (but only if) they give us reason to believe they'll follow the rules in the future.
I remember the phrase from back in the day, but never really paid attention to it. I do remember testing new PCs with Lotus 1-2-3 and Flight Simulator to prove they were actual compatibles that were going to work with all the software.
"Jon Ross, who wrote the original version of SimCity for Windows 3.x, told me that he accidentally left a bug in SimCity where he read memory that he had just freed. Yep. It worked fine on Windows 3.x, because the memory never went anywhere. Here's the amazing part: On beta versions of Windows 95, SimCity wasn't working in testing. Microsoft tracked down the bug and added specific code to Windows 95 that looks for SimCity. If it finds SimCity running, it runs the memory allocator in a special mode that doesn't free memory right away. That's the kind of obsession with backward compatibility that made people willing to upgrade to Windows 95."
Changing Windows to work with legacy software is easy to do when you are the unchallenged market leader. That wasn't the case when Lotus running on DOS was something Microsoft (and Lotus) would care about. In that era, Microsoft faced competition from multiple directions. I wouldn't be surprised if there was a decision to sabotage Lotus 123 on some version of DOS, specially if that sabotage could drive the move to Windows and Excel.
In all fairness, that Microsoft (they seem to have somewhat improved, as their power diminished) was known for not playing fair (something later demonstrated in court):
So, forgive me if I take this piece of history with a grain of salt. I started in this business at a time Microsoft made a BASIC interpreter and little more and I have observed a lot myself.
I think what MS did to take on Lotus was to outdo them by being able to read the file formats perfectly.
I seem to recall that after the MS Office file formats was documented as part of a MS-EU settlment, Joel pointed out how the Excel format carried at least two ways to do dates. One of them a replica of how Lotus 123 did it.
When Transmeta unveiled their new CPU, it was the first
time in a long time that a company that was not Intel
finally admitted that if you're a CPU, and you want a
zillion people to buy you, you gotta run x86 code. This
after Hitachi, Motorola, IBM, MIPS, National
Semiconductor, and who knows how many other companies
deceived themselves into thinking that they had the
right to invent a new instruction set.
Is the "Well Known Microsoft Blogger" maybe Raymond Chen (http://blogs.msdn.com/b/oldnewthing)? I can't seem to get to the archives on that site, so I don't know how long it's been around, but he published a compilation in 2007, so might already have been blogging in 2005.
84 comments
[ 3.2 ms ] story [ 157 ms ] threadMicrosoft's willingness to sabotage competitor's software is an established fact.
"The AARD code was a segment of code in a beta release of Microsoft Windows 3.1 that would determine whether Windows was running on MS-DOS or PC DOS, rather than a competing workalike such as DR-DOS, and would result in a cryptic error message in the latter case."
"The rationale for the AARD code came to light when internal memos were released during the United States v. Microsoft antitrust case in 1999. Internal memos released by Microsoft revealed that the specific focus of these tests was DR-DOS. At one point, Microsoft CEO Bill Gates sent a memo to a number of employees, reading "You never sent me a response on the question of what things an app would do that would make it run with MSDOS and not run with DR-DOS. Is there feature [sic] they have that might get in our way?"
And if you want to install Windows on a computer that already has a Linux distribution installed (dual-boot), then Windows will replace the existing boot manager, making it really difficult to boot Linux. That thing used to happen then, and it still happens now (2015).
Grub is old enough to attend Junior High. Lilo would be in grad school. they both have windows compatability. Microsoft not reciprocating is evidence of their intent.
Nobody gives hell to every other OS manufacturer that will clobber our current bootloader configs. That means more than OSX, btw.
For better or worse, there is a difference between a system used by a tiny minority of people (again: on the desktop) and a system that practically has a monopoly on the (corporate) desktop and that is developed and sold by a company that has a history of anti-competitive behavior. (And to be fair, I get the impression that things have begun to change at Microsoft since Nadella became CEO. But that still does not erase history.)
Meanwhile, even that "good behaving" Linux distro will happily remove Windows's boot record in favor of GRUB's, rendering the system reliant on a component that breaks if you want to remove Linux (and most people are way more likely to want to remove Linux than to remove Windows!). Hardly neighborly behavior in and of itself. And yet, I'm still not seeing a reason to cast aspersions on GRUB or Linux distros, nor am I seeing those twirly mustachios on their faces.
No OS gives much of a damn about anything else running on the computer. Claims to the contrary are literally farcical and the pseudo-damages it could theoretically cause to the easily bruised are silly.
Most Linux distros (the ones I have used, at least) will detect an existing Windows installation and put a corresponding entry into GRUB's menu. Linux has been able to access data on Windows partitions for many, many years.
I agree that the boot loader issue probably has at most negligible impact on the adoption of Linux (or any other OS for that matter). I am just saying that in light of Microsoft's history one may feel inclined to judge them differently.
Now, instead of talking about the parent's point of direct anticompetitive behavior, we're somehow discussing "whispers of monopolies" that somehow put the burden of proof back on the grandparent, even though anyone older than 24 knows why microsoft is still not to be trusted.
I'm bookmarking your profile, so I can study your future comments. you seem to be on the bleeding edge of these advances. thank you for the excellent study tools.
Hell, I don't even use Windows as a primary platform; I'm typing this from a Mac while I'm (quite literally) waiting to meet a guy to sell my Surface Pro 3 that I never use. I'm just not impressed by rules-for-thee-but-not-for-me silliness and knee-jerk, irrational fear. I don't trust Microsoft any more than I trust any company. But I don't rely on the fears of fifteen years ago to evaluate the current state of the world, either.
I should be more mindful of the fact that there's (potentially) a human being behind the account I'm treating like an astroturfer. I can see why you considered this a personal attack.
https://hn.algolia.com/?sort=byDate&prefix=true&page=0&dateR...
When, do you think, does a rhetorical device fall into the realm of propagandizing?
1. http://www.logicalfallacies.info/presumption/hasty-generalis...
It's not that they even try. Not even a little. Last time I installed Windows on real metal, it didn't even warn the other operating system would no longer boot. Microsoft probably has an internal policy to consider installing Windows is an upgrade.
But if you try to get your parents to give Linux a try, because their laptop ends up infected with some virus every other month, this does not help.
Which makes me think: What about dual-booting two Windows installations? This is probably a very rare scenario, especially with virtualization, but what if I was developing, say, device drivers and wanted to check my driver works both on, say, Windows 7 and 8/8.1? Does the Windows installer put my other Windows installation in the boot menu automatically? (Honest question, I have never tried this and probably never will.)
Grub shows a single Windows entry on its boot menu.
Then you see Windows 7 and 'Previous Windows version' in a text mode menu.
There is less risk of such from Linux. Even at their current size, RH is a flea next to MS.
You only need to reinstall grub/lilo. It's possible to even use Windows bootloader.
(a) overwriting the existing MBR, or (b) knowing how to configure every single third party bootloader, or (c) not booting
In the UEFI world, the Windows installer won't overwrite any files it didn't install.
https://www.phoronix.com/scan.php?page=news_item&px=MTIyOTg
Kinda reminds me of the issues Linux has run into with ACPI, and here are some lovely emails from Torvalds regarding that:
http://yarchive.net/comp/linux/acpi.html
With the caveat that UEFI has its own can of worms...
Although these are ugly hacks but it is a general reminder that people who will buy the software won't see why some obscure bad pointer in MS Office is causing this but something that used to work perfectly fine in previous Windows doesn't work in the current.
[1]: http://www.kuro5hin.org/story/2004/2/15/71552/7795
Has it been long enough that I dare peek at it now? ;)
Tab wars can drive your version control system crazy managing changes that don't matter unless they are using python.
"DOS ain't done till Lotus won't run"
Was never a common saying. It is actually:
"DOS ain't done till Lotus runs"
I am not sure how it devolved to the current usage. I suspect it is probably started after the Microsoft-DOJ trials.
1. I vaguely remember hearing stuff like that long ago - e.g. "Lotus 1-2-3 used such low-level features of the OS (MS-DOS) and the hardware (PC) - for performance, that it would not work on PC clones that are close but not 100% compatible.
2. It could also have meant: MS-DOS clones and PC clones were different enough (even if just slightly, but in crucial ways) that Lotus would not work on clones.
Microsoft also put misleading error messages in Win3.1 to sabotage DRI's DR DOS product. There are email snippets of the execs planning their strategy.
It's their standard operating procedure.
They fixed around SimCity because it didn't compete with any of their offerings.
Too much pro-Microsoft news for you? Honestly - what's your interest here?
A comment[1] somebody made yesterday on the "Twitter apologizes" story reminded me of this. I think it's an important story regardless of your opinion on Microsoft specifically, exactly because it highlights the risk inherent in building something on top of a platform you don't control. I wanted to highlight that that particular bit of wisdom isn't exactly something new.
Looking at the submitter's background I don't see any professional experience with Microsoft tech.
FWIW, I have spent plenty of time working with Windows and DOS in my life, I just don't highlight it, because it isn't really relevant to what I do now. I also don't mention OS/2, AS/400, RPG, Visual Basic and a laundry list of other things I've worked with that now seem more or less irrelevant.
[1]: https://news.ycombinator.com/item?id=10427499
Exactly.
But nobody said "building on a Microsoft platform is a bad idea". What is being said is that "building on anybody's platform involves risk, whether it's twitter, microsoft, facebook, google, IBM or $WHOEVER". The point of this post was to highlight an example of the discussion around this topic and to emphasize that it isn't a novel thing.
So, if your purpose was indeed to highlight that, you obviously failed since nobody here seems to be discussing that.
Here are some articles that say what you allegedly wanted to - https://www.google.com/search?q=risks%20building%20on%20some...
And if you actually didn't give a shit, you wouldn't have replied but here I think now we see the real you getting upset that someone called you out on your bullshit reasons for posting this.
If you want us to unban your account, you're welcome to email hn@ycombinator.com. We're happy to unban people if (but only if) they give us reason to believe they'll follow the rules in the future.
That's the reason I don't use .NET and I have never poked inside a metro app.
And it is a reason for the explosion of the Appstores for mobile and webapps in general, startups want to bet on something that's not MS.
I guess not a single one of the YC companies writes exclusively windows software.
Multiplatform software for the win.
But in general, it's beyond me at this stage why people single out Microsoft for being anti-competitive. It's completely unbalanced.
See: http://www.pcworld.com/article/2988941/software-productivity...
(It's been fixed over the past few days, with patches from both Microsoft and Apple.)
"Jon Ross, who wrote the original version of SimCity for Windows 3.x, told me that he accidentally left a bug in SimCity where he read memory that he had just freed. Yep. It worked fine on Windows 3.x, because the memory never went anywhere. Here's the amazing part: On beta versions of Windows 95, SimCity wasn't working in testing. Microsoft tracked down the bug and added specific code to Windows 95 that looks for SimCity. If it finds SimCity running, it runs the memory allocator in a special mode that doesn't free memory right away. That's the kind of obsession with backward compatibility that made people willing to upgrade to Windows 95."
http://www.joelonsoftware.com/articles/fog0000000054.html
In all fairness, that Microsoft (they seem to have somewhat improved, as their power diminished) was known for not playing fair (something later demonstrated in court):
http://www.theregister.co.uk/1999/11/05/how_ms_played_the_in...
So, forgive me if I take this piece of history with a grain of salt. I started in this business at a time Microsoft made a BASIC interpreter and little more and I have observed a lot myself.
I seem to recall that after the MS Office file formats was documented as part of a MS-EU settlment, Joel pointed out how the Excel format carried at least two ways to do dates. One of them a replica of how Lotus 123 did it.
> Then along came smartphones.
Wasn't ARM a relative minor player before smartphones took over?
Which versions of DOS broke compatibility with which versions of Lotus?