August 07, 2007
The Large Display Paradox
As displays increase in size and prices drop,
more and more users will end up with relatively large displays by default
. Nobody buys 15 or 17 inch displays any more; soon, it won't make financial sense to buy a display smaller than 20 inches. Eventually, if this trend continues, everyone will have 30-inch displays on their desktops. This is clearly a good thing. You can never have enough display space. But there is one unintended consequence of large displays.
One of the
of small monitors, ironically, is that
because they're small, they nudge users into a simpler, windowless method of working
. Instead of wasting time sizing, moving, and z-ordering windows, users only need to deal with one maximized window at a time. They can flip between maximized applications in much the same way they change channels on the television. But once your display gets to 1600 x 1200 or beyond, this easy one-app-per-display model isn't feasible any more. Dan recently ran into this problem
when he upgraded to a 30" LCD
Users of 30-inch monitors face the terrible,
problem of how to effectively use all of that space. You don't often want to maximise a folder or document window on a screen this big; either you'll end up with
a lot of white space and important program buttons separated by a vast expanse of nothing
, or you'll get lines of text 300 or more characters long, which are
difficult to read
large display paradox
. Having all that space can make you
productive due to all the window manipulation excise you have to deal with to make effective use of it.
Personally, I'm a card-carrying member of
the prestigious three monitor club
, which means I'm one step ahead of Dan. At least
until he doubles or triples down
Although my displays are only 20 inches in size,
I have three of them
. Maximizing a window to a 20 inch, 1600 x 1200 display area is a reasonable thing to do most of the time. I also use
, which gives me
the indispensible ability to drag maximized windows between monitors
. I'm constantly grabbing maximized windows and "throwing" them from monitor to monitor, ala
With my triple monitor setup, I have a very large display surface with a primary area of focus and secondary areas that I can "snap" items to when I want them available for reference, but out of the way.
I have a natural snapping grid because I use three physical monitors.
It's a side-effect of the hardware, but a crucial one that I've absolutely come to rely on.
Dan only has a single large 30 inch monitor, so he has no natural grid to snap windows to. He needs a software solution:
I've been using
to manage this problem. It's a neat little Windows utility that makes it easy to bounce (most) windows around the screen and quickly resize them to take up the amounts of screen you probably want them to occupy. Two panes, each 1280 by 1600, give you a couple of twenty inch portrait-aspect-ratio "screens" that work great for many tasks.
I run into this problem a little bit on my three 20 inch displays, but it's only a minor nuisance. I'm in
trouble if I ever get a multiple monitor setup with displays larger than 20 inches. (I'd also need a much, much
.) There's no question that
maximized windows aren't effective on large displays
. For larger displays, I'd need to extend the "snap grid" effect of my three monitors to each individual monitor.
That's exactly what the
app does. It's quite intuitive; you use CTRL+ALT+(numpad) to push the currently selected window towards the quadrant of the screen represented by the number. Pressing the key sequence multiple times iterates through the two or three possible sizes at that particular position. This diagram explains it better than I can in text:
As you can see, you end up with a few dozen possible grid arrangements just using the simple numpad direction metaphor. But it's still quite a bit of work; I have to select each window and then use the numeric keypad (or the popup window equivalent) to
push it over where I want it to go
. WinSplit Revolution isn't multiple monitor aware, either-- it only works on the primary monitor.
, which supports multiple monitors. Just use the middle mouse button to drag a window, and you invoke the current grid template, which provides automatic snappable drop targets for that window.
In the not-too-distant future,
every user will have a monitor so large that maximizing a window no longer makes sense for most applications
. It's too bad some kind of automatic snap grid support can't be embedded into the operating system to help users deal with large display areas. Like Dan, we're all going to need it sooner or later. Until then, these applications-- or ones like them-- can fill the gap.
Axosoft OnTime 2007
that manages requirements, tasks, and help desk incidents. It's designed to help teams ship software on time. Available for Windows, Web, and integrated with VS.NET 2005. Installed or hosted. Free single-user license.
Posted by Jeff Atwood
View blog reactions
haha. you windows users. Suddenly the Mac way of maximizing a window only to us as much space as needed make a lot of sense. :-P
There are a few operating systems out there where hitting the maximise button doesn't enlarge a window to cover the entire screen. Instead, it maximises to what the application actually needs. If it only needs 1024x768, that is exactly what it will get.
I use 2 monitors at work with an OS which doesn't follow the above mentioned rule (yes, its Windows), and what I really hate is windows, message boxes and popups which jump into the middle of the desktop, which is usually inbetween the 2 monitors. It drives me nuts to no end. Microsoft applications are every bit as guilty as almost all other apps.
Until recently I worked primarily with two monitors. I had a third one for a little while, but it was taken for other uses. I would develop applications on one screen and debug them on another screen. It was truly a productive environment.
However, the computer though was old and pretty slow. So work was kind enough to get me a new system. It's much, much faster, and the monitor is much larger. However, there is only one monitor port on the video card!!! So now I work on a single monitor. While the computer is faster, my productivity is hurting. At times I wish that I could get my old, slow system back. I've even considered purchasing a new video card myself. However, the vultures have already gotten to the "spare" monitors...
I would rather have two smaller monitors than one big monitor. It really is a world of difference. I'm envious of you.
I feel like such an idiot. Five years ago, I bought an awesome computer desk. Which, sadly, only has room for one 23" monitor. Seemed like gobs of space at the time.
I experienced this as well about two years ago when i started using two 21" monitors. But not long after that I traded in my desktop and have been using a laptop with a 13.3" widescreen display almost exclusively (home and work). So now I'm back to the one maximized app at a time paradigm. And unless I'm mistaken, more and more people are buying laptops than desktops these days. And even further down the line, people will start using their TVs as primary displays, which obviously requires a completely difference kind of interface.
I've experienced a bit of what you say when I went to a wide-aspect monitor and wondered what to do with that extra horizontal space. I agree with most of what you say about window/application management. However, I really don't think it's the place of the operating system to have window management embedded. I come from the Linux community where the window manager is an individual choice. Call it chaotic if you will, but there's definitely more configurability that way. I would say _more_ should be handled by individual applications, and _less_ should be done by the operating system proper.
When you wrote about the Mac maximize button, I was wondering why someone hadn't come up with an application exactly like this one! In fact, the only multi-window application that I use effectively is the Visual Studio and the only reason it works for me is because of the snappable tool windows. This is great!
I had a wide screen monitor rotated 90 degrees so I could see more lines of code at one time - awsome!
As was mentioned above, this is exactly why OSX 'maximise' works the way it does, and it truly makes sense. Yet the Windows crowd constantly bitch and moan how it sucks because it doesn't work the way it does in Windows.
Day to day I use a 3 monitor, high rez setup under Windows, and the 'maximize' is pretty much useless.
Apologies for the rant *hides*
> Suddenly the Mac way of maximizing a window only to us as much space as needed make a lot of sense
Actually I think both the Mac and Windows need some work in this area.
What I'm proposing here is different-- maximizing to a space that the *user* determines, not the *application*. Big difference. One of the big complaints about the Mac way of "maximizing" is that you never actually know what will happen when you click that button. Could get larger.. could maximize.. who knows what will happen? It's a form of mystery meat navigation.
Compare that with dragging an app to a grid slot on a target monitor, which produces exactly the size you want and expect.
I frequently have apps that need to be maximized across both displays. I agree that many apps do not benefit from that much space, but some apps will always need as much room as you can throw at them.
Actually, you failed to note the REAL problem about large displays. You can't hang them off a good swivel mount arm, they weigh to dang much. Personally, I won't live life without my arms, and until they make better arms or lighter displays, that alone will limit me around the 20" market.
If you haven't tried them yet, I highly recommend it. YOu want convenience? It isn't dragging a window around your displays - IT IS DRAGGING YOUR DISPLAYS AROUND YOUR DESK! Trust me - try it and you'll NEVER EVER go back.
Just make sure you get the GOOD arms, not the ones that are just lamp mounts with stronger springs. Try something like this :
Might be just me, but I find having just one single 19" monitor keeps me more focused. It might be a psychological thing. When I had two monitors, I ended up having many things open at the same time and was distracted by the other screen. With just one screen, I could totally focus on the task, and I could quickly do alt-tab switching when checking programming reference API docs while coding.
Note also the trend toward for some people toward using 'smaller' screens, such as the growing number of designers and artists using their laptop as their main work machine. Nowadays, having a smaller laptop screen - say 13" or 14" might be preferable to a larger widescreen 15" model as it is more compact.
Screen size may very well be capped at the 22" limit for desktops and 14" for laptops. Bigger isn't necessarily better.
No, Mark and Mark, that's not how my Mac works. This lets you define the area you want to expand to regardless of the contents of the window. I'm sure it can work on Mac too, but it's not that way by default, you have to drag the corners and line everything up.
This way, on my 1680x1050 display, I can keep a roughly 1024 wide area on the left for browsing and text editing, and a roughly 640 wide area on the right for chat, FTP, stuff like that.
Anyway, I use GridMove, I like it, my Mac does work differently in its stock state, and I bet there are similar things. Then again, the wonderful journaling filesystem has failed beyond the help or DiskWarrior or anything else I can find so I won't soon be able to test anything out-- I do like the eternal blue screen with a little spinner in the middle.
I do 3d animation and software development. I have 4 monitors at the moment in my desk. One is a calibrated monitor for true light colors, the other are LCD. Personally I never had such problems about maximizing or loosing time handling with windows (even on 30" panels). Many applications remember the last position and size. The concept of Ctrl-Tab switching (like zapping on TV) is still valid even if you don't maximiza the windows.
Unless your work style is very messy, I don't see all this paradox... But probably it's just me, so I'm looking froward for 36" panels ;)
Duuude, are you using AutoHotKey?
That's THE power tool for Windows. I use it for automating and hotkeying everything, including window management.
"What I'm proposing here is different-- maximizing to a space that the *user* determines, not the *application*."
That's exactly what I had in mind with this design (which I pimped here in your previous post on maximizing):
(Scroll up a tiny bit to see the directions in red.)
You want your content creation window (graphics, audio, film, 3d) to be as big as possible. You want your tool window to be as dedicated and predictable as possible. Not that I like the program, but the Gimp's window structure makes sense in that regard - and the toolbar's dimensions can be adjusted.
3D Studio Max's toolkit can't be torn off the main screen to reside on a monitor somewhere else. Takes up too much screen real estate. Photoshop's windows may move around but it doesn't always get it right (or if the window is maximized on another monitor, things suddenly disappear. It's not always clear if they're "in" the window or "beyond" it.
The absolutely ridiculous version of "tearing" is of course found in Office 2000 or so where even 2-item menus can be made into miniature windowlets without organization. What you need is some kind of grouping/flock-like behavior; dragging each windowlet for a total of 20 times to the same part of the screen is, well, stupid.
For doing lots of stuff in parallel (coding + word processing + reading newsfeeds) having a monitor for each is overkill, and the grid system makes more sense.
The laptop example explained above has made for some great user interfaces - Ableton Live and Mackie Tracktion for audio production, for instance. It even plays nicely with more screens as each part of the interface can stretch.
I recently upgraded from 17" CRT to a 22" widescreen LCD at home. In many ways it's awesome, but in terms of work productivity (window layout and sizing), I still beleive that my two 17" LCD (non-wide) setup at work works better.
1680x1050 just seems to be an odd res. for opening multiple windows next to each other (compared to @work: Eclipse with detached windows split across 2 LCDs || Outlook on one LCD & PL/SQL (or whatever) on another).
Thanks for the links to Winsplit & GridMove, I'll go try them at home tonight!
There are many minimal, tiling window managers which solve this problem. I think they are all mainly for linux - I imagine it's probably pretty hacky to do a window manager for windows.
My favorite is xmonad, which is multi-screen aware, and weighs in at about 500 lines of haskell for the quite functional core. (there's also test code and ~2000 lines of extensions). I've been using it for about a month and loving it. The minimalism only really matters for you if you know haskell - it's very easy to comprehend the entire thing, and as such very easy to extend and customize.
Mac nerds are funny, so now the reason for the faulty non inutitive way of the mac maximize button, that has been there since 14" monitors where the big thing, is because of large monitor support. Come on ! LOL. Your support for whaetver stupid thing Apple invents is amazing. Try thinking for yourself at some point.
I love the way you think you're in Minority Report!
watch your eyes buddy...
I use a laptop for software development (dell xps 1710) with a 17" 1920x1200 screen + a 19" 1280x1024 external LCD. The biggest problem is the difference in DPI. If I increase the text size to make text easy to read on the 17" screen, the text becomes too big on the 19" screen. So I'm concidering getting more displays
For about the same price I can get
1) one 30" 2560x1600
2) two 24" 1920x1200
3) or three 19" 1280x1024 + one Matrox TripleHead2Go
What would your choice be?
I'll add my own analysis:
1) 4.1 mega pixels, -management
2) 4.6 mega pixels, -black border in middle
3) 3.9 mega pixels, -small primary screen
I'm leaning toward the 30" to get a decent primary working area without having to bother about the black border.
WinSplit Revolution looks very neat, I'll sure try that out. However, I find that tiny Sizer tool convenient as well: www.brianapps.net/sizer.html
very informative article!im also tempted for a multi display workstation!
For me, it is not the size. Its the pixels. It is fairly easy to get a large monitor these days. It is harder to get 1200 or 1920 pixels across. The only way to get that many pixels without also losing huge amounts of valuable desk surface ( as in where I can put my coffee cup and magazines and other non-electronic stuff ) is to get a laptop.
When will people realize that their reading text may be because it there are not enough pixels to fully render it. Not because it is too small. Making that same paucity of pixels bigger doesn't really help.
For me the appeal of a large monitor is the vertical pixel count. I was using a large CRT, but I was able to work at 2048x1536. This gave me 87 lines of code vertically at all times, so I could generally see the entire class I was working on, or minimum the entire method. My issue with multiple monitors is that 1200 vertical pixels is a step back.
My ideal setup would be multiple monitors at 1200x1920 each.
I like sizer, gridview, and ultramon - but they are all windows tools. What options exist for Linux users?
I currently use 2 1600x1200 CRT displays, with Xinerama (I believe) to allow me to drag windows between. I plan to move to two 1920x1200 or 1680x1050 LCD's, but would like the functionality of Gridview (but require the ability to drag windows between monitors).
Jeff I've never been able to see eye-to-eye with you on this maximize thing. How do you switch tasks? Do you take your mouse and move it from the top of the screen (where the most clickable things are) all the way over the main monitor, then to the bottom, then carefully click on the correct one?
Or do you use alt-tab to step through what can sometimes be dozens of tasks?
With my non-maximized setup, when I want to switch from this browser to my visual studio, I'll just hurl my mouse to the left edge and click. I find it faster and more convenient to have the handful of key windows making use of the infinitely large clickable areas at the edges of my monitors, but when anything is maximized that space is wasted.
It's true that I occasionally spend a few moments resizing to get things the way I like them, and maybe I underestimate that work... but I do that a lot less often than I switch tasks.
I have a 22" wide LCD and when my wife uses my computer she usually maximizes her web browser which makes lots of pages look like crap.
I would much rather prefer your method of setting my maximize size .(maxisize? - ew no.. that sounds like something completely different)
As long as you can still drag the window to as large as you want, but have it SNAP to a predefined region would be great.
Unfortunately, GridMove doesn't work with PuTTY SSH windows which is the main thing I wanted to use it for. Apparently, this must be a problem with the way that PuTTY creates its windows, and makes AutoHotKey (the scripting language in which GridMove is coded) unable to resize them.
If only everyone were Mac-proficient. This wouldn't even be a topic. Could it be that Apple displayed almost Nostradomic foresight in making the maximize button work the way it does? Windows needs to follow suit in the following years, if not by changing maximize behavior then by adding another button next to the minimize/maximize that "fits to content."
I have 2 20" displays and I still feel cramped, especially while working with Visual Studio. I hate navigating toolbar tabs and such-like when trying to do my work, so I naturally try to give every tool pallet it's own space. As you can imagine, real estate gets scarce quickly. I think if I had 3 20" or maybe just 2 30" displays I would cry from joy.
Jeremiah, there are quite a few 20" LCDs that support a "pivot" function - i.e. you can rotate the screen 90 degrees and make it 1200x1600 instead of 1600x1200.
Line up three displays in that way, and you have 3600x1600 pixels of desk space. And quite a few lines of code.
You have three monitors, I get it. Stop bragging. :-)
But have you seen the movie swordfish, where he is cracking that bank code? Now that is a monitor set up! He had like 9 of them or something.
Saw a great set up while on the net a few months ago. 30 monitors great configuration abilities. one problem $360,000. Maybe my cable company will get me one to make up for their other faults lol
Bind an extra mouse button to the key for UltraMon's "move to next monitor", Jeff. You'll never look back. :) And ditto on AutoHotKey being *the* power tool for Windows. A script for "does this application exist? If so, focus it, otherwise launch it" is indispensable. Also, RocketDock (small mem footprint) configured to be nothing more than a preview dock of my minimized windows that pops up when I want and keeps my main taskbar focused and uncluttered with just my restored windows is wonderful. Combined with say, Taskbar Shuffle (again small footprint) to provide the basic feature of middle click close and "we're in business", no robots. Oh and maybe Switcher for Exposé, just as soon as he releases that version with the close window feature. I should throw this layout on my blog just so I can have someplace to link people to... that's about all it's for anyways. ;)
PS. I bought the Microsoft Natural Ergonomic Keyboard 4000 on your advice, I love it! Thanks!
Oh, and StrokeIt for extraordinarily fast window minimizing, maximizing, closing, and all sorts of other things for the mouse. ;) No reason to move my mouse up to those buttons...
I'm visually impaired and that drives my need for a larger display more than any other factor. I'd have no problem running the resolution on a 22" widescreen as high as its native resolution, but most Microsoft solutions let you scale your fonts bigger but leave everything else (icons, control surfaces, etc.) at their tiny native size. IE 7, though, finally seems to get it right.
It's also not generally appreciated that until very recently, there were almost no apps or desktops optimized for widescreen. We have a cheap and nasty 19" widescreen LCD in our server room; the server it's on has no video support whatever for that aspect ratio. Result: Not pretty at all, but it's sure convenient for me and my eyesight! I intend to get a little better-quality monitor when the time comes. :)
I'm packing a 24" LCD widescreen an a 19" standard LCD.
I typically have my code editor full screen on the 24" and then a SQL Enterprise manager, browser window or documentation open full screen on the 19" monitor.
That's typically how I spend most my working day.
You should see the back to school specials at our local Best Buy. There is an Acer desktop with a 17-inch CRT monitor, for those who can't afford the extra 70 bucks for a 17 inch LCD.
Of course that system is the exception. Most of the computers are laptops with 15-inch displays and I think the trend is that more and more people are buying one of these and not bothering with a desktop anymore. The larger trend might actually be toward smaller displays not bigger ones.
I made a concious decision to ditch my desktop at work, and work only with a laptop. Now I can work anywhere and the experience is identical, modulo some network performance.
I thus work with a single smallish screen. I develop software, and I don't need to see a lot of code all at once. Instead, one becomes able to switch to new contexts fast, jump to different code points quickly. Ideally, one's invidual methods are small enough to fit on a single page.
The mental picture and context becomes the large "display" that is maintained. Using tools like Emacs that encourage fast context switches helps as well.
I see some colleagues at work with their multiple monitors, and they take a hit when they need to work remotely, since they are conditioned to need them to work properly.
My setup is a Linux system with two 19" displays. This is how I manage my space. I have 8 Virutal desktops. Each one is dedicated to a project. The left hand display is what I call my sticky desktop. Anything that I need to follow me around are put on that screen, and then set to follow me to each desktop. The right and screen is my work area.
I typically have 4 projects going at once, have my IM client on the sticky side, and a xterm open with vim running for notes.
This setup has worked perfectly for me for two years now. Never could justify a third display, not even sure what I would use it for, but I have to admit the idea of the center display being the focal point, and the other two displays being off to the side is appealing.
) provides excellent control using keyboard combinations. I've been using it with a 24" main lcd and 2 x 20" lcd's in portrait mode on the sides, and have been very happy. Unfortunately, I haven't had much need for the other plugins that come with the app.
> One of the advantages of small monitors, ironically, is that because they're small, they nudge users into a simpler, windowless method of working. "
Sorry, but I've got to disagree. Single window is really only good for people who can't understand windows. Once you do, it's almost always more efficient to have multiple screens open.
Case in point: I started at my current company doing data entry, and did it a lot faster than everyone else because I would open the windows and arrange them once at the beginning of the day so that I could see all the important parts of every window at all times. It's the equivalent of one of those little clipboard dealies you sit next to your monitor.
Once I explained the concept to a couple co-workers, along with how to cut and paste, they got also got a lot faster even without using high enough resolution to prevent overlap. The important part was understanding how to move between multiple windows. An understanding which will never arise with a "simpler, windowless method of working."
Babying users with single windows is easier, but not more efficient in most cases.
funny how Matchbox window manager starts to make much more sense now.
It was made for small screen portable devices, but with some clever hacking, it could be worked to work like you're saying...
I know someone who might like to read this...
This completely overlooks mobile users. Mobile screens will always be small by necessity. I'm on a 13" screen right now, but my computer -- a desktop replacement -- is 4 pounds and goes anywhere. Ultra-mobile PCs have even smaller screens.
What we really need are scalable UIs. I should be able to grow or shrink my UI just by dragging a slider, and ALL the visual elements should scale.
Unfortunately, many apps still hard-code display metrics, or use controls or fonts that don't scale. You can see this when you try to set a screen to a high rez and also crank up the DPI. Lots of visual elements break.
DUDE YOU WORK WITH AL GORE?
He's not Dan I tell you.
Hehe, I never thought I'd have TOO much space, but I'd have to agree with ya on that. I think the issue may be back to horizontal scrolling as well. While we're not physically using the horizontal scroll, in a way we are visually scrolling if we have a super wide monitor with two applications side by side. At least with "n-tier monitor" architecture, we have a definitive "break" in the monitors and function accordingly.
Personally, I've found Dexpot (freeware Windows based manager) to be the perfect solution for me. I have dual 19" at work, and 4 virtual desktops. I keep desktop 1 for my primary work, 2 for web browsing/research, 3 for e-mail, and 4 for miscellaneous/fun/extra stuff when the time arises.
The best thing is that Dexpot has hotkeys for virtually everything. I can open that e-mail outlining some code details and then hit WIN+1 (above the letters) to "throw" the e-mail message to my primary monitor. Then I hit WIN+1 (on the number pad) to jump back up to my work window and its right there. I even have some hot keys for "minimizing to tray" or "roll up" a given window when I need it temporarily.
I've gotten hooked on the "mouseless" type of work and I don't worry too much about resizing windows.
" I have a natural snapping grid because I use three physical monitors. It's a side-effect of the hardware, but a crucial one that I've absolutely come to rely on."
That's exactly what I do. And it's also why I don't like widescreen monitors: I'd rather have to square ones side by side. That way I get the snapping ability and a widescreen effect.
I just tried using GridMove and it is a wonderful tool!
I even created my own custom grid that splits a screen into 4 basic parts, but the closer to the corners you go, the larger your window will be... allowing me to have corner windows at 50%, 75%, and 95% of the screen (yeah they overlap above 50% but that is what I wanted).
I found a bug where real-estate driven 'follows mouse' focus from TweakUI was confusing the tool and I posted a message in the forum.
An hour or two later the developer updated the code and it's all fixed! Now THAT is service! Folks, please consider donating in support of this tool, it's clearly worth it to me.
Now to put my money where my mouth is... make a donation myself!
Even on laptops the displays are getting larger. The lowest priced laptops are the 15" and 17" models, because they have been the best selling models for the last couple years (of course, that may be partially because the smaller screens are more expensive, too). Desktops regularly come with 17" widescreen LCDs now, with a moderately priced upgrade to a 19" LCD.
bleh, accidentally posted before I finished.
The main reasons I can see for the screens getting smaller are:
1) the price of LCD monitors. A nice 22" display is still a bit expensive for the average user, and many are happy with a much cheaper 15" or 17" display, especially if they had a CRT of similar size.
2) the resolution of the displays. Since many people still run with lower resolutions and LCDs look best at their native resolution, many people may be reluctant to buy a large LCD that either won't look good at their chosen resolution or may display text at resolutions they feel they will have trouble reading. This, of course, goes back to the whole dpi debate...