Quantcast
Channel: The Old New Thing
Browsing all 3085 articles
Browse latest View live

Unusual choice of units: 1.8 billion square millimeters

The materials for Kraft Heinz's 2018 annual meeting boasts that they "reduc[ed] total packaging by more than 1.8 billion square millimeters of film each year—the equivalent of almost 346 football...

View Article


Pulling the rug out from under an internet protocol

Back in the early days of the World-Wide Web, as it was then known, there were a lot of competing media streaming protocols, many of them proprietary. (Actually, there are still a lot of competing...

View Article


Where is the Seattle BoltBus stop?

The official site says that the bus stops at the corner of 5th and Dearborn, but that is a nasty five-way intersection, and you don't want to be standing on the wrong corner because it'll take you two...

View Article

Stupid cmd.exe tricks: Entering a directory that doesn’t exist, then...

I discovered that cmd.exe lets you enter a nonexistent directory, as long as you leave it before anybody notices. rem acts like cd C:\Windows cd C:\doesnt-exist\..\Windows rem acts like cd C:\Windows...

View Article

Why does the CREATOR_OWNER SID sometimes reset itself to the object’s current...

I noted some time ago that the CREATOR_OWNER security identifier (SID) is not a shorthand that refers to the object's current owner. Rather, the CREATOR_OWNER SID is a template that is applied when...

View Article


Even though the brand is called One A Day, none of them actually should be...

I submit for your consideration One A Day Teen for Her VitaCraves Gummies. According to the product packaging, the serving size is "2 daily." Indeed, of all the One A Day vitamins listed on that page,...

View Article

How do I programmatically control the order of my program’s notification icons?

A customer had a program that created multiple taskbar notification icons, and they wanted to know if there was a way to control the order in which they appeared. Nope, that's not something you can...

View Article

Is there a problem with Create­Remote­Thread on 64-bit systems?

Back in the days when it was still fashionable to talk about the Itanium, a customer reported that the Create­Remote­Thread function didn't work. The customer explained that any attempt to call the...

View Article


Woodworking, the opposite of software development

While waiting for the BoltBus, I met a former software developer, who said that he's now a carpenter. Specifically, he makes furniture out of wood, so a more precise term for his type of work would be...

View Article


Microspeak: knobs

Recall that Microspeak is not merely for jargon exclusive to Microsoft, but also for jargon that you need to know because nobody will explain it to you. Here are some citations. This class has a lot...

View Article

When I intentionally create a stack overflow with SendMessage, why do I...

Take our scratch program and make these changes: LRESULT CALLBACK WndProc(HWND hwnd, UINT uiMsg, WPARAM wParam, LPARAM lParam) { switch (uiMsg) { ... case WM_APP: return SendMessage(hwnd, WM_APP, 0,...

View Article

What can influence how much stack is consumed when sending a message?

Last time, we looked at a simple program that recursively sent itself a message, and we wondered, "Which will run out first? The user-mode stack or the kernel-mode stack?" Some of the calculations are...

View Article

How I learned to type

Tomorrow is the 150th anniversary of the granting of United States patent 79,265 to Christopher Latham Sholes for a type-writing machine. My daughter asked me how I learned to type. I told her that I...

View Article


The cost/benefit analysis of comparing before an assignment

Consider these two code fragments: // Fragment 1 x = newValue; // Fragment 2 if (x != newValue) x = newValue; Which is faster? The answer to that question is "It depends." Fragment 2 introduces extra...

View Article

Taking advantage of the asymmetry of offline compression

Online compression is a difficult balancing act. Time you spend trying to get good compression is time the user could have been using to do something useful. For the same reason, the decompression...

View Article


Lock free many-producer/single-consumer patterns: A work queue of distinct...

When I discussed the work queue of distinct events, order not important, commenter JDG noted that there's a sequence of events that can result in a spurious wake-up. "Is this spurious wake just a...

View Article

How can I detect from the preprocessor what a macro’s definition is?

It is common that a preprocessor macro chooses between multiple behaviors based on various other controlling macros. #ifdef BUILD_DLL #define CONTOSOAPI __declspec(dllexport) #else #define CONTOSOAPI...

View Article


2018 mid-year link clearance

Bryan Gaw had been a member of Katy Perry's dance team for five years when he performed at the 2015 Super Bowl, a dancer's dream come true. During the show, he changed out of a metallic horse costume...

View Article

Consider the environment: Do you want a receipt?

Microsoft dining services installed a self-service store in our building. After you complete your transaction, the kiosk reminds you to consider the environment and asks if you want a receipt. If you...

View Article

How can I determine why the System process is listening on port 80?

A customer observed that the System process was listening on port 80 and couldn't figure out why. The netsh http show urlacl command will show which URLs have been reserved, as well as the access...

View Article
Browsing all 3085 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>