The Old New Thing

That's just super (and a note on baking)

Microspeak has its own lexicon. (Even larger dictionary here. I take issue with some of the definitions, but they are generally accurate.) In addition to the rather extensive use of the word "so" as an introductory particle, another peculiarity of Microspeak is the unusually frequent use of the word "super" as an intensifier, particular when...

The dangers of sleeping on a UI thread

If you have a thread that owns a window, you should not be using the function, because that causes your thread to stop responding to messages for the duration of the sleep. This is true even for sleeps of short duration, such as sleeping for a few seconds and waking up in order to poll the state of something in the system. As we noted ...

Shifting from program management to programming also affects your social life

My colleague who switched from program management to programming has this to say about unintended consequences: My take on this is that I developed through the needs of my job as a lead program manager the ability to talk to anyone at any time to get a particular issue dealt with, but that I didn't necessarily want to do this or enjoy the...

Comparing writing specifications to writing code

My colleague who manages to pack his entire office into a single box recently made the switch from program management to programming. I teased him, "So what's it like using an editor without a 'boldface' button?" His response was actually rather insightful. "Writing specifications is like writing a novel. Writing code is like writing poetry...

Apparently I can't take myself anywhere

Upon arriving at the office, I unpack my bicycle bag and remove a crisp new white shirt. I change into my work clothes, and then at 11am, I head to lunch as I usually do. (This is the lunch group that includes JeffDav and occasionally BenCon.) I get a sandwich, sit down, and immediately drip sauce on my brand new shirt. Can't even keep a ...

Viewing function composition as transformation of the domain

A lot of formulas you encounter in computer science can be viewed as function composition. Let's start with the simple problem of rounding integers down to the nearest multiple of some positive constant. The formula for this should be relatively easy for you to produce: round_down(n, m) = floor_div(n, m) * m where returns the largest ...

You know you're in trouble when your channel loses to dead air

When Australian Channel Seven aired a blank screen for 41 minutes [indirect report], you'd think its competition would pick up some viewers. But it didn't. But the glitch did not result in a ratings boost for public broadcaster SBS, with figures showing viewers preferred Seven's blank screen. To Seven's astonishment more than 900,000 ...

Beware of redirected folders, too

Earlier, we learned about roaming user profiles, wherein the master copy of the user's profile is kept on a central server (which for the purpose of discussion I will call the "profile server") and is copied around to follow the user as she logs onto computers throughout an organization. In the comments, many people said that what they really...

You can't even trust the identity of the calling executable

A while back, I demonstrated that you can't trust the return address. What's more, you can't even trust the identity of the calling executable. I've seen requests from people who say, "I want to check whether I'm being called from MYAPP.EXE. I'm going to make a security decision based on the result." Although you can do this, all it does is ...

Mysterious things Steve Yi has eaten

I read with some fascination Steven Yi's Mysterious Things I Have Eaten, since I have had four out of five of them myself. And I love the little story he tells about sea cucumber. Kimchee, like lutefisk and surströmming, most likely comes from the days before refrigeration. The acid produced by fermentation preserves (what's left of...