June 15th, 2010

What does the PRE in PREfast stand for?

Commenter Jeff asks what the PRE in PREfast stands for. It’s an inside joke. The Microsoft Programmer Productivity Research Center (MSPPRC) originally produced a tool called PREfix. Michael Howard put me in touch with the development team, and they explained that it was called PREfix because it helps you fix your bugs before (PRE) you even run the code. The problem with PREfix was that it required monster hardware, and even if you got the hardware up and running, the results took days to generate, and tuning the program’s parameters required intricate knowledge of its inner workings. In other words, it was something only a researcher would love. When they started sharing the tool with the product groups, the response was as you might expect: “This is great stuff you guys have here, but it’s kind of impractical to expect everybody to have hundreds of thousands of dollars of hardware and a Ph.D. in order to run it.” The solution was a lightweight version of PREfix, which was named PREfast because it was a fast version of PREfix. It didn’t do as thorough a job, but it didn’t require monster hardware and could be understood by people who didn’t have a brain the size of a planet. In a sense, Jeff asked the wrong question. The real issue is not what the PRE stands for; it’s what the fast stands for!

Bonus reading:

Topics
History

Author

Raymond has been involved in the evolution of Windows for more than 30 years. In 2003, he began a Web site known as The Old New Thing which has grown in popularity far beyond his wildest imagination, a development which still gives him the heebie-jeebies. The Web site spawned a book, coincidentally also titled The Old New Thing (Addison Wesley 2007). He occasionally appears on the Windows Dev Docs Twitter account to tell stories which convey no useful information.

0 comments

Discussion are closed.