Coding Horror

programming and human factors

Tabbed Browsing and MDI-SDI-WTF

Cyrus bemoans the user interface catastrophe known as tabbed browsing:

As far as I can tell, tabs just exist to violate the existing window managment systems I have in the OSs i use. So all the built-in ways I know to use my system fly out the window (no pun intended).

Well, Cyrus, I could go either way on tabbed UIs. My needs are much simpler: how about some window management consistency in Microsoft's own office suite?

On one hand, you've got Word and Excel, which appear to be straight SDI. Or are they? As Josh points out, not quite:

Well, I don't know what you'd call it, but I wouldn't call it consistent.

  • Open 2 documents in Word. Now open 2 documents in Excel.
  • Both applications show 2 taskbar icons (seems SDI).
  • Each app Windows menu lists the 2 open documents (seems MDI-ish).
  • Now, click the top right X (close button) on a Word document. The current document closes.
  • Now, click the top right X (close button) on an Excel document. BOTH Excel documents close.

Then you've got Microsoft Access, which has this bizarro hybrid MDI mode where every MDI window shows up in your windows taskbar, like so:

Microsoft Access screenshot

As for Microsoft Powerpoint, I saved the weirdest for last. Unlike every other Office app, Powerpoint does not allow multiple instances. There can be only one Powerpoint, ever. And it gets weirder! Try opening two presentations and then clicking the "close application" button in the upper right corner of the PowerPoint window, as illustrated in this movie:

PowerPoint movie

When does "close application" not mean "close application"? Evidently whenever you have more than one document open in Powerpoint.

So here's my question to Cyrus: how could tabbed interfaces be any worse than the complete and utter lack of window management consistency in Microsoft's own office suite?

Written by Jeff Atwood

Indoor enthusiast. Co-founder of Stack Exchange and Discourse. Disclaimer: I have no idea what I'm talking about. Find me here: http://twitter.com/codinghorror