Operating in a tech support free zone

Tonight, I was reading Raymond Chen's excellent The Old New Thing blog. And something struck me that I've seen many times before in his blog, but didn't think about that much.

Many of the entries in his blog begin with "A customer asked...", referring generally to a developer of Windows applications requesting support from Microsoft for developing those applications. I'm guessing these developers probably had MSDN subscriptions with support incidents they were using. My company pays for my MSDN subscription, and I have support incidents. And my memory of the last time I used a support incident is very clear.

Into the wayback machine

It was 1997. Bill and Monica were in the news, Hong Kong was finishing its term under British rule, and nobody had yet heard of the fetching boy wizard with the scar, yet. And I had a Windows 95 problem. It was a printing problem which showed up with many common HP printers, and it caused lots of headaches with the product I was working on.

Consider the following:

Font ascender/baseline depiction

The application I was working on did some rather detailed typesetting, which required throwing lots of tight clipping rectangles around. And, if a line had no characters with descenders, then the clipping rectangle might very well be so tight as to come almost up to the baseline.

But, with the problematic HP drivers, if even a single pixel of the descender lay outside of the clipping rectangle, then it wouldn't print any of the character at all. Which meant that printouts from my application were missing lots of text.

The first MS support call

I was a brand new developer with the power of my first year's susbscription of MSDN behind me, so of course, why not talk to the experts at Microsoft? After all, I was getting two support incidents a year, and hadn't used a single one, yet.

I spoke to a frontline person, who was friendly enough, but quickly determined my problem was too technical and needed to be "escalated" to an "engineer". Great, I thought! I get to talk to an actual developer! Well, my mom always said I was too naive.

No, the engineer was a support engineer. Who I imagine must have known something about development, but I've no reason to believe he ever actually saw any Windows code himself. But he was able to confirm my problem. And so I asked, what do I do? Well, he did offer a comparatively obscure possibility which he doubted would be workable, and I agreed after understanding it. And then he said he would "escalate" the issue, and get back to me with anything he found.

That took him about 24 hours. In the mean time, I solved my own problem. Which is to say, since it wasn't necessary for me to partially clip characters, I rewrote my drawing code to, at the very last possible minute, determine if the clipping rectangle surrounded at least some of the given character and, if it did, temporarily removed the clipping rectangle while drawing the character.

The last MS support call

When he did call me back, he had no further solution to offer. I then explained to him the solution I'd come up with, and he applauded it as a clever approach that certainly ought to work.

And that's the story of the first and last MSDN incident I ever used. If I'd ever suspected that I might get Raymond's attention, I might have tried again. But I decided right then, for better or worse, that tech support incidents were for people who couldn't read documentation or debug their own code.

And my reading of Raymond's blog suggests that maybe I wasn't so far off.