Thoughts on software and life.

Sunday January 11

Why Longhorn Will Suck

It is my opinion that Microsoft needs to start doing a better job of babysitting the hoards of developers that make software for the Windows platform. Seriously, the quality of GUIs that people produce for Windows is absolutely horrible! The model for building a GUI has barely advanced since the dawn of Visual Basic over 10 years ago, and all we're getting with Longhorn is way to make it easier for developers to build the same old widgets with prettier graphics and xml source code.

It's almost as if we haven't learned anything about the way people use computers over the last 20 years. There is a core set of patterns that are repeated over and over in thousands of applications, each of which has their own subtly different behavior and visuals. Back and forward, undo and redo, delete, find, bookmark, etc... And there are a core set of graphical objects like images, text, maps, and calendars, which everybody has to reinvent every time they need one in their application, and they usually do a lousy job of reinventing it. Sure, there are classes for some of these things in GUI libraries, but the user doesn't see that - they see the programmer's personal interpretation of how they think it should look and work. Still, after all these years, the only GUI patterns we get from Microsoft, Apple, and others are things like "window", "button", and "listbox". To add insult to injury, they give us the taskbar and dock (and now Expose), which are just hacks to help us sludge through the mess of windows on our desktops.

Developers on Windows have way too much freedom to throw crap in the user's face. While developers love this freedom, users hate it. Microsoft can afford to pay a bunch of smart interaction designers to design a better model for everybody to use, so why don't they? I guess they figure it's more profitable trying to sell flashy 3D widgets, or maybe they prefer it when third party software is hard to use, so that consumers spend their money on the Microsoft version (which is still hard to use, but at least consistent). Apple at least tries to guide developers towards a higher standard, but even they still have a long way to go in my opinion.

Microsoft is giving us a unified data storage model in Longhorn, but the user experience is still going to be the same old mess. While I look forward to writing code for the Longhorn platform, I am not really looking forward to using it.

Posting your comment. Please Wait...