The Old New Thing

Famous people doing mundane things = news!

So an actor learns a foreign language and it's news: Actor Kingsley Masters Farsi Language. Meanwhile, tens of millions of people around the world learn a foreign language without any media coverage whatsoever. (And if you read the article: He didn't master Farsi. He mastered basic Farsi. Whatever that means...

You can read a contract from the other side

An interface is a contract, but remember that a contract applies to both parties. Most of the time, when you read an interface, you look at it from the point of view of the client side of the contract, but often it helps to read it from the server side. For example, let's look at the interface for control panel applications. Most of the ...

What order do programs in the startup group execute?

The programs in the startup group run in an unspecified order. Some people think they execute in the order they were created. Then you upgraded from Windows 98 to Windows 2000 and found that didn't work any more. Other people think they execute in alphabetical order. Then you installed a Windows XP multilingual user interface language pack ...

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. Actually, this list is only partial. Many times, the compatibility fix is made inside the core component for all programs...

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 ...

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 now) of a "cult of PowerPoint...

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...

How do I determine whether I own a critical section if I am not supposed to look at internal fields?

Seth asks how he can perform proper exception-handling cleanup if he doesn't know whether he needs to clean up a critical section. I'm using SEH, and have some __try/__except blocks in which the code enters and leaves critical sections. If an exception occurs, I don't know if I'm currently in the CS or not. Even wrapping the code in __try/...

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" so IE wouldn't load it. And ...