skip to main content
Skip header Section
The Old New Thing: Practical Development Throughout the Evolution of WindowsDecember 2006
Publisher:
  • Addison-Wesley Professional
ISBN:978-0-321-44030-3
Published:01 December 2006
Skip Bibliometrics Section
Bibliometrics
Skip Abstract Section
Abstract

"Raymond Chen is the original raconteur of Windows."--Scott Hanselman, ComputerZen.com"Raymond has been at Microsoft for many years and has seen many nuances of Windows that others could only ever hope to get a glimpse of. With this book, Raymond shares his knowledge, experience, and anecdotal stories, allowing all of us to get a better understanding of the operating system that affects millions of people every day. This book has something for everyone, is a casual read, and I highly recommend it!"--Jeffrey Richter, Author/Consultant, Cofounder of Wintellect"Very interesting read. Raymond tells the inside story of why Windows is the way it is."--Eric Gunnerson, Program Manager, Microsoft Corporation"Absolutely essential reading for understanding the history of Windows, its intricacies and quirks, and why they came about."--Matt Pietrek, MSDN Magazine's Under the Hood Columnist"Raymond Chen has become something of a legend in the software industry, and in this book you'll discover why. From his high-level reminiscences on the design of the Windows Start button to his low-level discussions of GlobalAlloc that only your inner-geek could love, The Old New Thing is a captivating collection of anecdotes that will help you to truly appreciate the difficulty inherent in designing and writing quality software."--Stephen Toub, Technical Editor, MSDN MagazineWhy does Windows work the way it does? Why is Shut Down on the Start menu? (And why is there a Start button, anyway?) How can I tap into the dialog loop? Why does the GetWindowText function behave so strangely? Why are registry files called "hives"?Many of Windows' quirks have perfectly logical explanations, rooted in history. Understand them, and you'll be more productive and a lot less frustrated. Raymond Chen--who's spent more than a decade on Microsoft's Windows development team--reveals the "hidden Windows" you need to know.Chen's engaging style, deep insight, and thoughtful humor have made him one of the world's premier technology bloggers. Here he brings together behind-the-scenes explanations, invaluable technical advice, and illuminating anecdotes that bring Windows to life--and help you make the most of it.A few of the things you'll find inside: What vending machines can teach you about effective user interfaces A deeper understanding of window and dialog management Why performance optimization can be so counterintuitive A peek at the underbelly of COM objects and the Visual C++ compiler Key details about backwards compatibility--what Windows does and why Windows program security holes most developers don't know about How to make your program a better Windows citizen

Contributors

Recommendations

Reviews

Panagiotis Louridas

Raymond Chen has been a developer at Microsoft for about 15 years. In the last four years, he has maintained a popular blog. This book is a collection of some of his most interesting postings, in addition to some new material. The result is fascinating at parts and whimsical in others, especially for readers not familiar with his blog, who should be the book’s main audience. Indeed, the book betrays its blog origins; it is composed of numerous short pieces grouped into 21 chapters. There are chapters that deal with material that could be read by anybody interested in software (for example, chapters 1 and 2). There are also chapters that are deeply technical (for example, chapters 3 and 10). The subtitle of the book may lead one to believe that this is a book of software engineering wisdom, distilled from Microsoft’s massive experience with the world’s most popular operating system. Although the book does contain software engineering gems, it is largely a collection of anecdotes about Microsoft’s product development, which is taken from Chen’s time spent working there. At their best, anecdotes can be illuminating and entertaining. Readers learn, for instance, that Chen and Michael Howard [1] spent a day in the product support services department. On the day the Blaster worm launched its second wave, they were answering phone calls. This certainly belies the image of Microsoft as the corporate giant that does not give a toss for its customers. During development of Windows 95, the plug-and-play team built a chain of bridge cards 20 feet long. This was done in order to test whether the operating system could use a video card at such a distance. The tidbits on user-interface design are also revealing. They reveal how much attention must be paid to the user, and how the user experience may contradict the developers’ established wisdom. Chen also offers programming advice. Many of the blog entries are actually hints and tips for programming Windows, and will be of interest only to Windows developers. Other entries are about programming in general, such as the poor man’s way of identifying memory leaks. First, let the program run until it has allocated an absurd amount of data; then, dump that data; and, finally, look for patterns in the dump, as most of the dump will be leaks. Other parts will make readers champions in Trivial Pursuit, the nerd version: “Why was nine the maximum number of monitors in Windows 98__?__” “How did Windows choose its final build numbers__?__” A pattern develops throughout the book. Chen tries to answer the “why” behind design choices in Windows. Anybody who has maintained a large and complicated piece of software over extended periods of time will sympathize with the guys at Microsoft who have to maintain their amazingly complicated product. And it becomes obvious to all that the essence of design is a compromise between different competing forces, under pressure and uncertainty. This, of course, makes the book a sort of absolution for Microsoft, especially since Chen is wary of including anecdotes and instances of decisions, of which there must have been plenty, that turned out to be blatantly wrong. With this in mind, it is a book that software developers will enjoy. Readers may find themselves smiling, remembering times when they have been in similar situations. Online Computing Reviews Service

Access critical reviews of Computing literature here

Become a reviewer for Computing Reviews.