The Old New Thing

Practical development throughout the evolution of Windows.

Latest posts

Making some statements and asking for advice isn't a question
Sep 12, 2007
Post comments count 0
Post likes count 0

Making some statements and asking for advice isn't a question

Raymond Chen
Raymond Chen

This is a corollary to Don't forget to ask your question: Making some statements and asking for advice isn't a question. When we do X, and then select Y, and then click the Q button, we get an error message saying that Q can't be performed because "The computer Z that Y refers to cannot be contacted." Can you provide advice? Now, this person did remember to ask a question, but the question doesn't really specify what sort of advice was desired. In this case, the question might be "Can you please provide advice on how we can avoid that error message?" But even that isn't a good question. T...

The wisdom of seventh graders: A Wrinkle in Time
Sep 11, 2007
Post comments count 0
Post likes count 0

The wisdom of seventh graders: A Wrinkle in Time

Raymond Chen
Raymond Chen

The recent passing of Madeleine L'Engle reminded me of a quiz seventh grade students were given in order to see whether they were at least paying attention during a reading of a chapter from A Wrinkle in Time. I forget the question exactly, but it asked the students about the mechanism that Mrs Who, Which and Whatsit use to travel through the universe. The correct answer was "The fifth dimension." One student, who was apparently was paying only part attention during class, wrote "The third dimension." Let's run down the street. "Woo! I'm travelling through the third dimension!"

What's the difference between EM_UNDO and WM_UNDO?
Sep 11, 2007
Post comments count 0
Post likes count 0

What's the difference between EM_UNDO and WM_UNDO?

Raymond Chen
Raymond Chen

Daniel Chait wonders why we have both and . You know, I wonder the same thing. But I'm going to make an educated guess. Actually, most of what I write is just a lot of educated guessing. Like my explanation of why has such complicated rules? A guess. Why address space granularity is 64KB? A guess. Why most messages are in the system message range? A guess. Mind you, it's logical guesswork, usually strongly guided by the principle of "Imagine if this were possible." Today's guesswork: The history of and . It seems obvious that came first. After all, why would there need to be a message if a already e...

The Minimalist Jukebox Festival
Sep 10, 2007
Post comments count 0
Post likes count 0

The Minimalist Jukebox Festival

Raymond Chen
Raymond Chen

Last year, NPR covered The Minimalist Jukebox Festival, a week-long exploration of the school of minimalist music. The NPR story includes a clip of my favorite minimalist work: Music for 18 Musicians, as well as a telling of the classic minimalism knock-knock joke. I remember reading somewhere that the world premiere of Music for 18 Musicians was performed by an ensemble of only seventeen musicians by doubling up a vocalist with an instrumental line. This was done to reduce the cost of travel. If true, it would make for another one of those "Unfair trivia questions" like "How many years did the Hundred Years'...

If control-specific messages belong to the WM_USER range, why are messages like BM_SETCHECK in the system message range?
Sep 10, 2007
Post comments count 0
Post likes count 0

If control-specific messages belong to the WM_USER range, why are messages like BM_SETCHECK in the system message range?

Raymond Chen
Raymond Chen

When I discussed which message numbers belong to whom, you may have noticed that the messages for edit boxes, buttons, list boxes, combo boxes, scroll bars, and static controls go into the system range even though they are control-specific. How did those messages end up there? They didn't start out there. In 16-bit windows, these control-specific messages were in the control-specific message range, as you would expect. Imagine what would have happened had these message numbers been preserved during the transition to Win32, (Giving you time to exercise your imagination.) Here's a hint. Since 16-bit Wi...

Wayback machine: The Fake Job
Sep 7, 2007
Post comments count 0
Post likes count 0

Wayback machine: The Fake Job

Raymond Chen
Raymond Chen

Digging through my pile of junk, I found a reference to a fake article in The New Yorker magazine titled My Fake Job that turned out to be (partly) fake itself. Unfortunately, I missed the article the first time around so I didn't get to see what all the excitement was about, but it sure sounded like a funny article. (Fractionally more details from the article here.) I understand there are these buildings called "libraries" that keep hard copies of this stuff. Need to make a mental note to check one out someday.

Sometimes it feels like the effort isn't even appreciated
Sep 7, 2007
Post comments count 0
Post likes count 0

Sometimes it feels like the effort isn't even appreciated

Raymond Chen
Raymond Chen

Some time ago, the application compatibility folks found a program that was corrupting the heap, and they applied a fix that worked around the specific type of corruption that the program performed. And then a bug came on that same program. It was a heap corruption failure during the program's processing of global destructors. The authors of that program were so clever, they found a way around the compatibility fix and managed to corrupt the heap anyway! Update: To clarify, there was no updated version of the program. (That's why I wrote "that same program" and not "an updated version of that program".) There ...

It's that season again: The 2007 Microsoft Company Meeting
Sep 6, 2007
Post comments count 0
Post likes count 0

It's that season again: The 2007 Microsoft Company Meeting

Raymond Chen
Raymond Chen

Yes, it's that time of year again, time for the annual Microsoft Company Meeting, and therefore time for another of Raymond's reminiscences about meetings past. (If you want a report on the meeting itself, I'm sure Mini-Microsoft will oblige. Here's the company meeting preview.) Over a decade ago, one of my colleagues informally organized a bike ride to the company meeting. (I didn't go; this was before I had taken up bicycling.) He got a small group of people from the organization to join him, and as they headed out in the morning, they "accidentally" made a wrong turn and headed towards North Bend instead o...

If your theory is "build it and they will come", you have to make sure there is a "they"
Sep 6, 2007
Post comments count 0
Post likes count 0

If your theory is "build it and they will come", you have to make sure there is a "they"

Raymond Chen
Raymond Chen

Creating an infrastructure for managing the content you wish you had doesn't actually create that content. Another possible response to the crisis management issue I considered yesterday is to say "Okay, we need to have an official Company X Breaking News site so that people who are looking for an official response to some hot topic can find it." Except that if you look at the original problem, it wouldn't have helped. The problem wasn't that there was a response to the hot topic that nobody could find. There was no response at all because the people who would formulate that response were busy working on ...