2/6/2004 2:52:15 AM


Some people wonder if Joel and I, two ex-Excel bloggers, ever knew other.

Joel Spolsky has a very popular website on software development called Joel on Software. He worked on Microsoft Excel for two years and then left Microsoft on September 1994. I came on board Microsoft in late June of 1994, so we were in the same team for at most three months. Excel then probably had less than 50 developers and 6 program managers, so everyone tends to know each other. I don't actually remember him, but the face in his website does look familiar.

What surprises me about his column is how much of what he writes, I felt that I could have written, because many of his ideas are engrained in Microsoft culture, especially in usability and UI design. He did actually write a book on UI.

Take, for example, one of Joel's guidelines not to completely redesign a UI; this is a totally Microsoft concept.

Software developers have a tendency to want to make software better. However, any changes to, say, the locations of menu and toolbar items that deviates from Microsoft Office or Microsoft Windows conventions is very disruptive to users. Millions of users rely on Microsoft conventions, and, even if the changes are more efficient, the change to the user can be as profoundly unnerving as moving from a QWERTY keyboard to a Dvorak keyboard. The impact is compounded by the fact that most applications adopt Microsoft conventions as well.

The software is no longer familiar, easy, or "just like Office." It doesn't feel natural and has "to be learned." The thing about people is that once they acquire a habit of doing something a certain way, it's hard to break that habit and learn a completely different way; it's as if your fingers know which keys to press without any conscious effort.

Program managers in Microsoft Office, when designing a new feature, take extreme care to minimize any changes to menus or keystrokes to eliminate training costs or user anger. Even applications like Excel and Word are restricted to matching the conventions of their earlier versions.

In addition, to convert loyal Lotus 123 and WordPerfect users, both Excel and Word had a special 123 and WordPerfect mode. Excel, in addition to reading Lotus 123 spreadsheet files, recognizes Lotus keystrokes, parses Lotus-style formulas and runs Lotus macros--in essence, emulating Lotus 123. (Excel, by the way, supports five different macro languages--AppleScript, Lotus 123 macros, VBA, XLM, and one other.)

WordStar lost its leadership position in wordprocessing to WordPerfect in the 80s, because its last version was a completely different program with a different user interface and feature set--the original codebase was lost. Many users failed to upgrade to VB.NET, or left VB altogether, because VB.NET represented too significant a change from VB6.






Net Undocumented is a blog about the internals of .NET including Xamarin implementations. Other topics include managed and web languages (C#, C++, Javascript), computer science theory, software engineering and software entrepreneurship.

Social Media