The Old New Thing

A very brief return to part 6 of Loading the Chinese/English dictionary

Back in Part 6 of the first phase of the "Chinese/English dictionary" series (a series which I intend to get back to someday but somehow that day never arrives), I left an exercise related to the member of the union. Alignment is one of those issues that people who grew up with a forgiving processor architecture tend to ignore. In this ...

There's a reason why envelopes have backs

For some reason, people are upset that I don't have hard data for the cost difference between "slow" and "fast" mode enumeration. I already did a back-of-the-envelope calculation that showed that fast mode reduces the total time to enumerate the items in a folder from five minutes to two seconds. That's what's so great about back-of-the-...

If only he'd known to offer to back up their PC instead

I love it when two unrelated stories conspire to create amusement beyond what each one provided separately. We start with this report from BoingBoing of a man on Craigslist who offered to perform computer maintenance and repair in exchange for second base. (For those not familar with North American high school sexual slang—and that ...

Does a dual-core processor count as one or two for licensing purposes?

Now that dual-core processors are gaining in popularity, there has been some confusion over whether a dual-core processor counts as one or two. This discussion of multicore processor licensing may clear things up. The short answer is that a dual-core processor still counts as one processor. For example, Windows XP Professional supports up to...

Eating Belgian food at Brouwer's Cafe in Fremont

Last year, some friends and I went for dinner at Brouwer's Café, a Belgian pub/restaurant in the Fremont neighborhood of Seattle. The menu is pub food, which means that everything comes with frites and a choice of several dipping sauces, none of which is ketchup. One of my friends spent some formative years of her life in the ...

When you crash, make sure you crash in the right place

Last time, I recommended that functions should just crash when given invalid pointers. There's a subtlety to this advice, however, and that's making sure you crash in the right place. If your function and your function's caller both reside on the same side of a security boundary, then go ahead and crash inside your function. If the caller is ...