The Old New Thing

Computing over a high-latency network means you have to bulk up

One of the big complaints about Explorer we've received from corporations is how often it accesses the network. If the computer you're accessing is in the next room, then accessing it a large number of times isn't too much of a problem since you get the response back rather quickly. But if the computer you're talking to is halfway around the ...

It's more efficient when you buy in bulk

The Windows XP kernel does not turn every call into into a packet on the network. Rather, the first time an application calls , it issues a bulk query to the server and returns the first result to the application. Thereafter, when an application calls , it returns the next result from the buffer. If the buffer is empty, then issues a ...

USER and GDI compatibility in Windows Vista

My colleague Nick Kramer who works over on WPF has the first of what will be a series of articles on USER and GDI compatibility in Windows Vista. The changes to tighten security, improve support for East Asian languages, and take the desktop to a new level with the Desktop Window Manager (among others) make for quite an interesting ...

Adding flags to APIs to work around driver bugs doesn't scale

Some people suggested, as a solution to the network interoperability compatibility problem, adding a flag to to indicate whether the caller wanted to use fast or slow enumeration. Adding a flag to work around a driver bug doesn't actually solve anything in the long term. Considering all the video driver bugs that Windows has had to work...

Spamming the event log doesn't make things any better

A common suggestion is that if a problem is detected which the system automatically recovered from but which an administrator might be interested in knowing about, then an event log entry should be created. Be careful, however, not to abuse the event log in the process. If the problem is not security-related and it can occur, say, more than a...

Doing the best we can until time travel has been perfected

Mistakes were made. Mistakes such as having Windows NT put Notepad in a different location from Windows 3.1. (Though I'm sure they had their reasons.) Mistakes such as having a when there is already a style. Mistakes such as having listview state images be one-biased, whereas treeview state images are zero-biased. But what's ...

The network interoperability compatibility problem, first follow-up of many

Okay, there were an awful lot of comments yesterday and it will take me a while to work through them all. But I'll start with some more background on the problem and clarifying some issues that people had misinterpreted. As a few people surmised, the network file server software in question is Samba, a version of which comes with most ...

How would you solve this compatibility problem: Network interoperability

Okay, everybody, here's your chance to solve a compatibility problem. There is no answer yet; I'm looking to see how you folks would attack it. This is a real bug in the Windows Vista database. A beta tester reported that Explorer fails to show more than about a hundred files per directory from file servers running a particular brand of the ...

The simplified office

In response to my description of my own office, my colleague Colin Birge shared this anecdote about one Microsoft employee who took office simplification about as far it could go: He was one of the earliest usability specialists in Office, later to become the usability manager before ultimately retiring. As befits a person of seniority, ...

Before you develop a solution, make sure you really understand the problem

A common obstacle when trying to help people solve their problems is that what people ask for and what they actually want are not always the same thing. For technical problems, you often get a question that makes you shake your head in disbelief, but upon closer questioning, you find that the person really doesn't want what they're asking for...