Marc McDonald

Marc B. McDonald is an American who was Microsoft's first salaried employee (not counting Monte Davidoff, who wrote the math package for BASIC for a flat fee).

He is credited with designing and implementing the 8-bit File Allocation Table file system for the NCR 8200 data-entry terminal and Microsoft's Standalone Disk BASIC-80 in 1977.

McDonald also developed an 8-bit operating system called M-DOS or MIDAS; the system itself was never released by Microsoft, but its file system (a variant of FAT) influenced Tim Paterson's QDOS.

A version of "Standalone Disk Basic" was ported to a Seattle Computer Products 8086 by Bob O'Rear, and Tim Paterson was often at Microsoft to aid in the effort. Tim Paterson copied the key aspects of the FAT system (single table, each directory entry containing the head of the file's cluster list, and the last value indicating the number of sectors used in the last cluster) when he implemented the FAT12 file system for his operating system 86-DOS in 1980, which became the basis for MS-DOS and PC DOS in 1981. He made two mistakes in implementation:
 * In early versions there was no directory stopper entry. This resulted in reading the entire directory track to discover a file did not exist. On floppies this was a major slowdown.
 * MS-DOS updates the directory entry and FAT tables in the wrong order when a file is created. By writing the directory first, if the system crashed before the FAT was updated, a dangling reference would be created. This results in a cross-linked file on the next cluster allocation.

McDonald left Microsoft in January 1984, citing a reason that the company had gotten "too big", Microsoft having around four hundred employees at that time. He was Asymetrix's first employee where he worked on a LISP pcode system used internally and redesigned the ToolBook runtime and compiler for ToolBook 3.0. At Design Intelligence, Marc worked on adaptive document design and an expression-based programming language used for layout experiments. He rejoined Microsoft in December 2000 when it bought Design Intelligence.

When McDonald rejoined Microsoft, a number of employees including Bill Gates and Steve Ballmer tried to assign him the employee number "1" but found that the human resources software did not allow this. Instead he was given a badge with all the digits scraped off except "1".

McDonald worked in the QA-oriented Windows Defect Prevention group, focusing on organizational best practices to drive software quality from the bottom up. He is co-author of The Practical Guide to Defect Prevention published in November 2007. He holds six software patents.

McDonald left Microsoft in September 2011. He was with startup MindMode Corp. through 2012, and has been at PaperG since.