One of the fundamental rules of software development is that when you find yourself thinking “I’m going to throw this code away and start again from scratch” you’re almost always wrong. It often feels like the right thing to do – after all, you can correct all the design mistakes of the current code, remove all the clutter that’s accumulated over time and so on. But like I said, it’s almost always the wrong thing to do. Netscape did it and you can read all about it in Joel’s 2000 article Things You Should Never Do, Part I.
So it’s with some degree of interest I see that Microsoft Office 12 is going to have a completely different GUI. There’s some discussion and screenshots from Microsoft here.
While they’re not exactly throwing away all the code and rewriting it they’re breaking another fundamental rule of software development. People hate change. I remember reading in the classic software management book Peopleware (chapter 30 I believe) about a consultant who was giving a talk to a bunch of IT managers about this point. They were saying “Hey, we build systems that change how people work and play. We try to make sure that the changes are for the better… Why would a rational person resist any change for the better?”. He retorted “You don’t get it. I’m sorry but people really, truly hate change. That’s the problem: They’re not rejecting any particular change on its merits; they’re rejecting any change”. The bottom line is that people get used to using software in a particular way and really hate having to learn a new way to do the same thing they’ve done for years. It makes them feel stupid and people don’t like software making them feel stupid. It spawns the quote “this new version of X is far worse than the last one!”.
While from the videos I’ve seen it does look amazing and I’ve no doubt it’ll make my life easier, that won’t be the case for the majority of users. It’s a big risk Microsoft are taking but I suppose they need to do something new in Office – to most users (me included) the only thing that’s changed over the last few versions are the toolbars. And now they’re getting rid of toolbars altogether… Interesting.
I’m firmly in the camp of this is a good thing. Office hasn’t been interesting for years. New collaboration features…yawn. Rounded toolbar corners and blue gradients…move along, nothing to see here.
Now we’re getting an open XML-based default file format and a UI that looks like a genuine step ahead. Who knows, one day they might even move the macro languages over to .NET!
Yeah, much though I like nice graphics, the fancy toolbars didn’t really move Office along but some of those auto-previewing popup format things in the new version look superb. For once it looks like a genuine step forward…
I’ve only through the video but that did look cool. I think I’m most excited about the XML file formats because it offers some great opportunities for µISVs.