Why not just block the apps that rely on undocumented behavior?

Because every app that gets blocked is another reason for people not to upgrade to the next version of Windows. Look at all these programs that would have stopped working when you upgraded from Windows 3.0 to Windows 3.1. HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Compatibility Actually, this list is only partial. Many times, the compatibility fix is made inside…

47

When programs grovel into undocumented structures…

Three examples off the top of my head of the consequences of grovelling into and relying on undocumented structures. Defragmenting things that can’t be defragmented In Windows 2000, there are several categories of things that cannot be defragmented. Directories, exclusively-opened files, the MFT, the pagefile… That didn’t stop a certain software company from doing it…

58

The cult of PowerPoint

Recent articles on how PowerPoint contributed to failure at NASA reminded me that this is hardly a new discovery. The Department of Defense long ago discovered that PowerPoint is a great way to hide the fact that you don’t know what you’re talking about. I remember reading an article (which I of course can’t find…

3

One in five Swedes steal their Christmas tree

According to Aftonbladet, “Gathering Stockholm’s finest news from overheard conversations on the street corner”, En av fem stjäl sin julgran. (“One in five steals their Christmas tree.”) This of course comes from a highly scientific online reader poll. The question is, “How do you get your Christmas tree?” and the response categories are (from top…

5

Sometimes, an app just wants to crash

I think it was Internet Explorer 5.0, when we discovered that a thirdparty browser extension had a serious bug, the details of which aren’t important. The point was that this bug was so vicious, it crashed IE pretty frequently. Not good. To protect the users from this horrible fate, we marked the object as “bad”…

14

Rip-it

Last night I had to frog several dozen rows of knitting because I forgot to change needles. Color changes I remember. Needle changes I always forget. Probably because color changes are much more exciting.

9

How to void your warranty

MSDN just published an article telling people that it’s okay to use reserved fields in an internal structure. Anybody who does this has just voided their warranty. Please put a “This program has a high likelihood of crashing after you install the next Service Pack or upgrade your OS” in your license agreement. And you…

21

What is the window nesting limit?

In the old days, Windows didn’t bother enforcing a nesting limit because, well, if you want to nest windows 200 deep, that’s your decision. Many window operations are recursive, but since everything happened on the application’s stack, it was your own responsibility to make your stack big enough so it didn’t overflow. But Windows NT…

10