For the last couple of months I’ve been working on Windows as my main desktop during the workday (not my personal choice, but I can live with it.), and that’s caused me to notice a few things I haven’t noticed before, especially in contrast to the Mac style of managing windows. I’ve task switched between Mac and Windows before–for several years in the late 90s I did all my development and book writing on Windows and all my e-mail and Internet on the Mac–but this is the first time I’ve had the chance to compare the two environments with multiple monitors, and that’s made some difference in my take on matters. Practices that work well on a single monitor system don’t work as well on multimonitor system and vice versa. After playing with this for a while, I’m starting to think that the Windows approach works better for multiple, small monitors and the Mac approach works better for a single, widescreen monitor.
To summarize, here are the critical differences between the two platforms. These are worth keeping in mind when you’re designing a cross-platform application such as Firefox or Limewire, or any web site.
The Maximize Button
On Windows the maximize button fills the screen with the current window. On the Mac it doesn’t. First of all, the Mac sets aside space for the menu bar at the top and usually the dock at the bottom. However, even taking that into account, the maximize button still does not expand the window to fill all available horizontal space. Users browsing on Macs rarely if ever have browser windows expanded to the full screen width. Doing so requires manual dragging and positioning of the mouse. Consequently designing a site for a specific resolution such as 1280×1024 will break the site on Macs with precisely those specs. Even if a Mac user sets their display resolution to match your requirements, they still won’t be able to handle your page. Window size is not the same thing as screen size. Do not design as if they were. Window and screen size are only loosely coupled, especially on the Mac.
On Windows, a maximized window cannot be dragged to the other monitor. Neither can it be expanded or contracted by dragging the edges. It is locked to one monitor and its size.
On the Mac, even “maximized” windows can be expanded, contracted, and dragged. It is possible to “over-maximize” a window by dragging it across more than one monitor. (You can do this on Windows too, but only if the window is not maximized.) You can even overmaximize a window on a single monitor system by dragging the window partway off the monitor while leaving the grow box visible. Programs that resize windows for the user need to be very careful that they don’t exceed the screen bounds.
The Menu Bar
The top menu bar on the Mac is clearly its single biggest weakness in multi monitor setups. In Windows, you can freely switch between two applications on two monitors while keeping both visible. Each is fully and independently functional. However on the Mac there’s only one menu bar, and it only lives on one monitor. You can show two windows on two monitors but you can only really work on your primary monitor because that’s where the menu bar is. You can use the second monitor for reference documents or simple games. However any program that needs a menu can only effectively live on the main monitor. This is a huge disadvantage compared to freely switching between menus as on Windows. (The exceptions that prove the rule are Parallels and VMWare. If what you have on the second monitor is a Windows program, then it does have its menu bar, and you can effectively task switch between two apps on two monitors.)
Linux is once again trailing far behind. I tried to install the latest version of Ubuntu on my pretty standard Dell PC with two regular aspect Dell monitors, and all it could do was mirror them. It could not use them as dual monitors. I’m sure with a few hours of research and forum posting, I could have found some XF86.config tweaks that would have made it all work, but I didn’t have the time. These days Windows and the Mac both “just work” with dual monitors. I remain dually astonished at Linux: on the one hand that it still clearly isn’t ready for prime time on the desktop after all these years, and that nonetheless people seem to keep insisting that it is. This was hardly the only significant flaw I found within ten minutes of popping in the live boot CD, though it was the worst.
It’s been claimed repeatedly that developers (and presumably other knowledge workers) are much more productive with multiple monitor setups. I suspect that’s true, but only on Windows. Mac and Linux users are better off blowing their money on one really honkin’ big display than on several somewhat smaller displays.