Saturday, June 10, 2006

Windows Lacks Conceptual Integrity

I read an interesting article recently that described "20 Things You Won't Like About Windows Vista." While I was reading the article I began to realize that most of the complaints about Vista centered on the lack of a coherent central vision for the Windows platform. This is something that I've realized about every version of a Microsoft Operating System that I have ever used, especially when I compare it to the Macintosh (something that the article does as well). If you have ever used a Mac you will remember that everything you do just seems to make sense when you are doing it. Anti-Macintosh zealots (one of which I used to be) will usually say that this is because the Macintosh is simple-minded and made for idiots, but after working on software design/development now for over 10 years I disagree vehemently with the notion that just because an application is easy to use it was designed for the stupid. I would give anything to have the application our team works on be as well-understood and easy to use as the Mac. The reason that the Macintosh is easy to use, in my opinion, is that it is one of the best examples of a system that wasa designed with "conceptual integrity." What do I mean by this? Well, for those who haven't read The Mythical Man-Month by Fred Brooks, for a system to be user-friendly it must have conceptual integrity - that is, it must have a coherent vision for the implementation of its functionality. Fred Brooks' idea on how to achieve this was to have a minimal number of architects overseeing the development of the system (since a system designed by a committee would appear to be... well... designed by a committee). Systems that have too many cooks in the kitchen, as it were, are usually much more difficult to use since different parts have different visions and the user subconsciously attunes to the differences and finds the system hard to figure out. The best example I know of a large-scale application that lacks conceptual integrity is Windows. The OS is so clearly designed by committee with a variety of competing visions that it only becomes more difficult to use as time goes on. With the Vista Aero interface Microsoft will copy Apple's GUI enhancements that Mac OS X had several years ago, but this will not make the system any simpler to use because it doesn't change the underlying design problem. With a code base that only continues to bloat and a feature set that never seems to appreciably diminish even the deprecated portions it seems that Windows is doomed to a worsening usability metric as later generations of Microsoft developers tack on new incoherent visions to an already confusing mass of stuff. Now if only Apple would pick up some decent market share maybe I would get my Mac back at work.