Live data from Hacker News

What’s up with the Beep driver in Windows 7? (2010)

blogs.msdn.microsoft.com

101–106 of 106 posts

Re: What’s up with the Beep driver in Windows 7? (2010)

#101
post #94
post #63

>It turns out that they couldn’t. And the answer to why they couldn’t came from a totally unexpected place. The American’s with Disabilities Act. I wonder how much this act has cost society. Just in this particular instance, let's say keeping this chip on PC motherboards adds 5¢ to the cost of each motherboard. Multiply by a billion PCs sold in the last 10 years (The actual number is higher, but maybe some don't have…

You're making lots of wrong assumptions and insulting remarks here. This act is not just about 'blind people', but people with all kinds of disabilities. If you read the article, you'll see that Beep() API is used for assistive technologies, which can be anything, from devices for motor impairment to deafness. Not everyone who is disabled is blind. If this API would have suddenly disappeared the 'cost to society' wou…

I'm well aware of the ADA and its effects. There was recently a good report about legal trolls suing small businesses for minor parking space violations under the ADA, so I took the chance to refresh my memory on the act.

>Imagine if you'd wake up one day and your mouse doesn't work anymore because it's no longer compatible.

Huh? This analogy doesn't make any sense. Things aren't compatible because of the ADA; they're compatible thanks to standards bodies and market pressure.

> That's how important assistive technologies can be to disabled people.

Only a small fraction of people need the beeper, and from what I understand based on a presentation from a deaf coworker a few years back, the best assistive technologies are those that emerged naturally, not from archaic ADA-imposed requirements. She cited OS X's accessibility features.

>Vision is not a switch you can turn on again with an operation.

I'm aware. I never said $50M in research would cure blindness; I said it would do more for blind people than a little beeper in the PC chassis. $50M is also quite a conservative estimate.

Re: What’s up with the Beep driver in Windows 7? (2010)

#102
The big problem with Beep(), or so did thirteen-year-old me think, was that unless you were on Windows NT it ignored the arguments, always producing a sound with the same frequency and duration. It meant that, despite it seeming like a straightforward replacement, you couldn't really use Beep() to port MS-DOS code that relied on Borland Pascal's CRT unit [1] to produce sound effects with the PC speaker.

[1] http://putka.upm.si/langref/turboPascal/0698.html

Re: What’s up with the Beep driver in Windows 7? (2010)

#103
post #80

Earlier quoted context omitted.

> Also an interesting take on how much Microsoft has had to unwind in a compatible way over the years. It's very much self-inflicted technical debt. From a Spolsky on Software article from 2004: > Raymond Chen is a developer on the Windows team at Microsoft. He's been there since 1992, and his weblog The Old New Thing is chock-full of detailed technical stories about why certain things are the way they are in Windows…

Well, an update is needed: the Windows testing team was huge. Now, if they remark at all a program has a problem, it will just be silently uninstalled during the next major Windows upgrade.

The answer to that question is a lot less obvious than one would expect.

Windows installation upgrades (hereafter "migration") have been blocking setup if a known-incompatible program[1] is detected during installation, telling the user to uninstall it prior to allowing the upgrade to continue.

For Windows 10, the goal was to make the migration process (which would take ~40 hours to gather/apply on a typical system from Vista -> 7, the same process takes 20 minutes to an hour on upgrades to modern 10 nowadays) a lot faster, and a lot more seamless, as to get as many users as possible on the latest OS release to reduce effort supporting other software versions[2] and such.

Of course, blocking the installation with a known-incompatible program would result in popping up to the user, say, 'hi, this update can't install until you uninstall this program. please do so!', and they of course will respond 'what update? I don't want to uninstall my program so you can install an update! [I don't trust this at all/I'll forget/...]', and therefore said update (which wouldn't just be from 7/8 -> 10, but also cross-build on 10 itself) would never get installed.

There is no sane way to ask the user, since this will reduce adoption of new builds further than what people not understanding/accepting Microsoft's POV on this will attempt by 'not upgrading'.

[1] A common case to cite is the deinstallation of the product 'Speccy', which, funnily, will cause a system crash in a kernel driver shipped with the product if said older version is later installed on the new OS version and run. Given the chance people will have odd ways to automatically start this, and that people's systems will instantly crash if run, it makes sense to block the installation on this product. [2] I maintained a hobby product that worked with fringe cases in the OS for a long period of time, and over time as I moved to newer OS versions myself, I'd end up having a large amount of features break on downlevel systems due to depending on new implementations/refactors done in 8, 8.1 or 10 with regards to those components of the OS.

Re: What’s up with the Beep driver in Windows 7? (2010)

#104
post #80

Earlier quoted context omitted.

Well, an update is needed: the Windows testing team was huge. Now, if they remark at all a program has a problem, it will just be silently uninstalled during the next major Windows upgrade.

The answer to that question is a lot less obvious than one would expect. Windows installation upgrades (hereafter "migration") have been blocking setup if a known-incompatible program[1] is detected during installation, telling the user to uninstall it prior to allowing the upgrade to continue. For Windows 10, the goal was to make the migration process (which would take ~40 hours to gather/apply on a typical system f…

That's an "interesting" approach. Unfortunately, it is made worst by the fact MS laid off tons of testing engineers a few years ago, and now release clearly buggy versions of Windows. To add insult to the injury, it now does so (adding new bugs and new incompatibilities with perfectly fine programs) every few months...

Re: What’s up with the Beep driver in Windows 7? (2010)

#105

Earlier quoted context omitted.

> Also an interesting take on how much Microsoft has had to unwind in a compatible way over the years. It's very much self-inflicted technical debt. From a Spolsky on Software article from 2004: > Raymond Chen is a developer on the Windows team at Microsoft. He's been there since 1992, and his weblog The Old New Thing is chock-full of detailed technical stories about why certain things are the way they are in Windows…

The Simcity case reminds me of Bryan Cantrill's talk on lx-branded zones: apparently, there was a bug in rpm which didn't touch Linux, because Linux wasn't doing things fast enough to trigger the condition. So there was some code added to check if the running program was rpm, and to pause it briefly if it was. Apparently the comment the people who wrote it left amounted to, "we wrote this, and even we feel dirty abou…

I don't trust any programmer who hasn't at least once felt dirty about some code they just wrote.

Re: What’s up with the Beep driver in Windows 7? (2010)

#106

Earlier quoted context omitted.

The Simcity case reminds me of Bryan Cantrill's talk on lx-branded zones: apparently, there was a bug in rpm which didn't touch Linux, because Linux wasn't doing things fast enough to trigger the condition. So there was some code added to check if the running program was rpm, and to pause it briefly if it was. Apparently the comment the people who wrote it left amounted to, "we wrote this, and even we feel dirty abou…

I don't trust any programmer who hasn't at least once felt dirty about some code they just wrote.

Heh. Yeah. I know I have.
Post reply on HN