Units of measurement

04/30/2004

2 minutes to read

In this article

Whenever people find out that I work at Microsoft, invariably the next question they ask is “Have you met Bill?” (The next question is: “So what’s with the stock?” – as if I had a magic 8-ball to tell them).

I’ve met Bill socially a couple of times (at various company functions); he doesn’t know who I am thoughJ. But there was one memorable meeting I attended with him.

It was back in 1986ish; we were presenting the plans for Lan Manager 1.0 to him. One portion of the meeting was about my component, DOS Lan Manager (basically an enhanced version of the MS-NET redirector, with support for a fair number of the Lan Manager APIs on the client). My boss and I were given the job of presenting the data for that portion.

One of the slides (not Powerpoint, it didn’t exist at the time – Lucite slides on an overhead projector) we had covered the memory footprint of the DOS Lan Manager redirector.

For DOS LM 1.0, the redirector took up 64K of RAM.

And Bill went ballistic.

“What do you mean 64K? When we wrote BASIC, it only took up 8K of RAM. What the f*k do you think idiots think you’re doing? Is this thing REALLY 8 F*ing BASIC’s?”

The only answer we could give him was “Yes”J.

To this day, I sometimes wonder if he complains that Windows XP is “16,000 F*ing BASIC’s”.

Edit: To add what we finally did with DOS Lan Manager's memory footprint.

We didn't ignore Bill's comment, btw. We worked on reducing the footprint of the DOS redirector by first moving the data into LIM Expanded memory, next by moving the code into expanded memory. For LAN Manager 2.1, we finally managed to reduce the below 640K footprint of the DOS redirector to 128 bytes. It took a lot of work, and some truely clever programming, but it did work.