March 16, 2008
I've been a multiple monitor enthusiast since the dark days of Windows Millennium Edition. I've written about the manifold joys of many-monitor computing a number of times over the last four years:
I have three monitors at home and at work. I'm what you might call a true believer. I'm always looking for ammunition for fellow developers to claim those second (and maybe even third) monitors that are rightfully theirs under the Programmer's Bill of Rights.
So I was naturally intrigued when I read about a new multiple monitor study from the University of Utah:
Researchers at the University of Utah tested how quickly people performed tasks like editing a document and copying numbers between spreadsheets while using three different computer configurations:
- single 18-inch monitor
- single 24-inch monitor
- two 20-inch monitors
Here's what they found:
- People using the 24-inch screen completed the tasks 52% faster than people who used the 18-inch monitor
- People who used the two 20-inch monitors were 44% faster than those with the 18-inch ones.
- Productivity dropped off again when people used a 26-inch screen.
I dug around a bit and found the actual study results (pdf) or something very close to it, if you're looking for more detail than the summary I've presented above. This isn't the first time the University of Utah has conducted a multiple monitor study. It's very similar to the multiple monitor survey they conducted in 2003, also under the auspices of NEC. I agree it's a little sketchy to cite a study from a display vendor that advocates-- surprise-- buying more and bigger displays. But bear in mind they did find diminishing productivity returns with 26 inch displays. This is something I personally experienced, and I dubbed it the The Large Display Paradox. That finding isn't exactly going to endear them to display vendors.
Patrick Dubroy took a skeptical look at the multiple monitor productivity claims and found several credible sources of data. I'll combine his finds with mine to provide a one-stop-shop for research data supporting the idea that, yes, having more display space would in fact make you more productive:
Patrick, despite his skepticism – and remember, this is a guy who didn't see a productivity difference between a 14 inch laptop display and a "big ass LCD" – came away convinced:
After looking at the studies, I think it's fair to say that some tasks can be made significantly faster if you have more screen real estate. On the other hand, I think it's clear that most programmers are not going to be 50% more productive over the course of a day just by getting a second monitor. The tasks that can be improved are not the bottleneck to programmer productivity.
I'm not sure what Patrick was expecting here. Let me be perfectly clear on this matter: more is more. More usable desktop space reduces the amount of time you spend on window management excise. Instead of incessantly dragging, sizing, minimizing and maximizing windows, you can do actual productive work. With a larger desktop, you can spend less time mindlessly arranging information, and more time interacting with and acting on that information. How much that matters to you will depend on your job and working style. Personally, I'd be ecstatic if I never had to size, position, or arrange another damn window for the rest of my life.
Choose own your path to happiness, whether it's upgrading to a single 30" display, dual 24" widescreen displays, or three standard 20" displays. As long as it results in more usable desktop space, it's a clear win. I support all of the above scenarios, and more importantly, the existing research does too. The price of a few monitors is negligible when measured against the labor cost of a programmer or information worker salary. Even if you achieve a meager two or three percent performance increase, it will have more than paid for itself.
What does get a little frustrating is when people claim that one large monitor should be "enough for anyone". This isn't a zero-sum game. Where there is one large monitor, there could be two large monitors, or three.
Sometimes, more is more.
Posted by Jeff Atwood
From the study:
Single 24 Double 20 Single 18.
So more is NOT more.
Conclusions seem hard to draw with such meager data, but it certainly isn't a clear win for multi-monitors.
Multi-monitor has been invaluable to me for ages. My current job won't let me go to 3 monitors, but for most of my work, the third monitor wasn't really doing much, unless I was running Notepad++ for some random text output.
Just to reinforce what others have said, having Visual Studio up in one monitor and SQL Server Express Studio/Web Browser open in the other while debugging is simply priceless. I would go batty having to minimize switch things out.
I also use virtual desktops. When I get an e-mail to deal with an existing app that has frequent bugs, I hate having to minimize/close/move my existing work to accomodate, so I just jump over to Desktop 4 (my "extra one") move the window with the e-mail message to that desktop, fire up another copy of my needed tools and resolve the issue.
I use Dexpot (http://www.dexpot.de/index.php?lang=en) to handle all of my needs. In addition to the virtual desktop option (with hot keys to move windows and swap desktops) it also has a few built in tools like rolling up windows and minimizing them to the tray. There are plenty of hot keys to merge with all of this. Granted the application hasn't been updated in a couple of years, but I haven't found this much functionality in a free app yet.
Nowadays, I think I have very little "lag time" when I get work done and I love it. Long live multiple monitors, virtual desktops, and hotkey/launchers!
I'd like to add my 2c if I could. I went from a dual display (21"w+19"w) to a single 40"w display and I must say that there is much more difficulty in researching while coding (be it msdn or a technical article describing an algorithm that I am to translate to code). I sure do miss my dual monitor setup.
Not that a 40" display doesn't have its benefits (read: larger than life CS and WoW)
I do a lot of coding and a lot of Photoshopping. For both having 2 monitors is a must. I've worked on at least 2 displays for many years now and at one point had 3 setup, but as someone mentioned - the third didn't do much but look cool.
For web coding, having one screen for code and one screen for browser is invaluable for time. But for Photoshopping, I sometimes find even 2 monitors isn't enough space.
When you have lots of files open and need to spread them out, it gets pretty cramped, even spanning two monitors. I'm not sure a third screen would make it easier, however. I would almost favor a 2 screen setup with just bigger monitors. Here at work I'm on a 19" set - moving up to 22" or more with two would be insane. I can't say it'd speed up productivity all that much, but it would be far more convenient.
I can see all you lot are mobile ready!
now explain why the whole world uses landscape mode.
i use 2 24" LCD's in PORTRAIT MODE and nothing beats it.
code, prose, the web: all portrait mode.
but go ahead, waste the margin and give up context.
1)Rotate one of the monitors to portrait mode, especially with the new LCDs with the wider aspect ratio. May not be aesthetically balanced but it's a heckuva lot more useful.
Documents, eMail? Portrait.
Spreadsheets, PowerPoint? Landscape.
2) Position the monitors as close as physically possible, not two feet away from each other. Laptop users - grab a phone book to elevate the laptop to the monitor height if necessary.
3) Don't forget Windows allows you to "position" the monitors so the logical position matches the physical position when they are different sizes or resolutions (e.g. I keep the bottoms of both monitors aligned). I'm amazed how many people don't bother with this simple trick and their mouse 'jumps' all over the place.
Morons who claim no productivity gains from multiple screens --
Have you ever actually *used* (like, for many months/years) multiple LCDs?
I don't know how a programmer could go from multi-LCD setup to single display not claim some, even if minor, productivity dropoff.
If you can't afford it or if you feel bad b/c your company won't drop the $$$ for multi-lcds, fine. Just say so. But it's probably worth the $$$, from a personal corporate perspective.
I run a 19'' wide and my Macbook Pro (both 1440x900) and it's great. People who says that this does not increase productivity is because they don't code :)
Obviously you cannot look at both at the same time, but it is way faster to move your eyes then to press alt-tab, find the IM window (or whatever you need), release alt-tab, then press again to return to where you were. And if you happen to need to this very often you're waiting time. Virtual Desktops (Spaces in Mac OS X) help with this, but it's not the same, I've tried to use only one screen and move across "spaces" but the multi-screen is still better for coders.
On the other hand no Window Manager (at least Windows, OSX and KDE/GNOME/ETC) don't do a very good job organizing stuff. Mac OS X "Maximize" is not a panacea and very often you have to manually adjust the window. Windows does the same, but instead uses the safe approach: use all the screen. This sometimes ends up being a waste.
The truth is that if you use Visual Studio, Multi-monitor is much better (unless you have a 26++ inch screen, where you could leave everything open, but even then, having your running application AND the debugging code may not fit).
Jeff, I also am a true believer. 3 at work, 3 at home. My 3 at home are the superior ones, and I paid for those out of my pocket.
I'm still waiting for the study that states it so simply that even the bosses will find the argument compelling. It would go like this: productivity gain to go to 3 monitors from 1 is X, and cost to do so is Y. So for a desired payback/rate of return on investment of Z%, your employee in question has to be worth Q dollars an hour or more to make the upgrade obviously worthwhile.
Actual numbers applied to the above logic would make productivity gains of as little as 10% a laughably easy investment. 10% on a $60k employee is a $6k/yr savings. At $500 an upgrade, you'd get your full upgrade costs back in savings in about 1 month. Slam dunk.
But it has to be in a STUDY. If the numbers come from a BELIEVER, we're just making them up....
I'm sitting in front of my 2 19" widescreen monitors right now. I'm personally a big fan of the dual-monitor scenario for a number of reasons. to illustrate this fact I'll give concrete examples.
1) I'm a gamer. so being able to have an FAQ or my AIM buddy list, or my media player be on the other monitor is convenient. after i die and i have to wait for a respawn or whatever, i can take a quick glance over and see what is going on. and I can also keep track of what music I'm listening to.
2) I'm a programmer. I'm studying computer engineering so I'm getting my fair share of programming done, nothing is nicer than being able to open up a few instances of puTTY on my main monitor and have firefox display my instructors spec for the program on the second monitor, and it's not a distraction, when something isn't clear to me I simply turn my head and see what the spec says.
3) I'm a multi-tasker. I'm the guy who leaves firefox open with a few tabs, is logged on AIM and xfire, always has a music player open, and still needs to get stuff done. if I'm surfing the web and someone IM's me, it's on my second monitor, out of the way until I can get to it. if I wanna see what songs are coming up in my playlist, or I wanna change playlists, I mouse over the border and change it quick.
once I sit down to do a certain task on my computer I open up the windows I need, get them situated and thats it. no more fussing around, alt-tabbing, trying to remember what the program spec said. It just gets done. so more is more. and if you still don't think it's good to have a second monitor for programming, how about having javadocs on its own monitor? or a C reference? or anything for that matter. you could put up some interfaces you need to implement, anything really.
I personally find that in my case having a second monitor is ALWAYS more convenient and increases productivity.
This is a personal choice thing. I am a big evangelist of at least two monitors. I always show laptop users how to configure their system to use both monitors. What I find interesting is when people have 5 windows open on one screen and nothing on the other. I ask people about it and they are to "busy" to move their windows to a different screen. But will spend endless accumulated hours "Alt_Tab"ing around hunting for one particular window. I love a two monitor setup and using MaxiVision was using 3 for a while. Unfortunately Excel didn't like to play nice with MaxiVision and I spend 90% of my working day in Excel so I quit using it. I have dual monitors at home running off a dual head Nvidia card, and dual monitors at work, running off my laptop. The pixel size difference is annoying, and occasionally trying to move between is a pain if they aren't lined up properly but for the most part I love the flexibility and have seen a marked improvement in my productivity. Now I need to buy a couple modern sized screens.
Good stuff as usual.
I use multiple monitors (2x20" LCDs) with virtual desktops (Virtual Dimension) on Win XP -- there's no way I can go back. I use the two monitors to separate similar tasks (code on one screen, requirements/design description on other) and the separate virtual desktops to separate different tasks (remote desktop to a build machine, work-in-progress documents, etc.).
I'm not sure what Patrick was expecting here.
I'm not sure why you question why Patrick questions.
More can indeed be more, but more can also be less.
Perhaps the problem is the window manager? I've found that I'm most productive when I don't have to deal with managing windows and I can see everything on the screen. Hence I've used xmonad ion (x11 window managers) which allows me to tile/tab my windows. In my mac/windows environments I spend way too much time resizing, reorganizing, and flipping through virtual desktops.
I like xmonad especially because my virtual desktops are per screen resolution. Hence I can map my 9 virtual desktops between my two monitors any way I want. This is even more useful when I dedicate a virtual desktop per task allowing me to switch to the right task. for example, I have 1 full screen e-mail desktop, I full screen chat desktop, 1 full screen web desktop, 1 full screen documentation (web browser) desktop, 3 full screen vim (code) desktops, 1 full screen terminal (building) desktop, 1 full screen testing desktop. No more dealing with windows once I launch my apps.
If I need more for my task at hand I can introduce a new window which will split the screen or add a new tab for the full screen window. Another benefit is that I can focus on the task at hand- I don't have popups for every new bit of e-mail, IM conversation, etc. I don't see things bouncing around at the corner of my eye. I just see my vim window and terminal. When I need to read bug reports review code, I have my browser and e-mail desktops side by side. When I'm relaxing I have my chat window and browser side by side.
You guys are all weak sauce.
I've built an adapter that amplifies the signals coming out of my DVI port and converts it to varying levels of electric shock that are applied to a warehouse full of monkeys, each carrying a red, green, and blue dry-erase marker, that I have organized onto a 1920x1200 array against a ginormous whiteboard.
Personally, I have 2 monitors and 2 PCs linked with Synergy (http://synergy2.sourceforge.net/). When my mouse leaves the lefthand side of the screen of my Windows XP box it seamlessly moves over to my Solaris box next to it.
The best thing about synergy, apart from sharing mouse/keyboard across unrelated OSes and boxes, is that the clipboard is carried around with the cursor.
I can run a something on the Solaris box, copy it and paste it on my XP box without even thinking about it.
It's well worth a try.
When debugging through client(winform/website) / server(webservice/db and other)-scenarios I find it as a big mess when using only one monitor.
If I have breakpoints in the webservice and in some external DLL and in the client that is consuming the webservice and using only one monitor and a break occur it takes some time to find out what app that popped up, I have to to read windows titles and somtimes some code before knowing what application that breaked.
I allways have 2 monitors and run the client on the left monitor and server on the right. That way its a direct link in the brain when the right IDE pops up on an break, left=client, right=server. And I can step through the code in the clientwindow to the left, continue automagically on the right side when I do server calls..
You cannot get that clear, overall view with only one monitor or with virtual desktops.
Whether on Linux, Windows or OS X I've been using some sort of desktop manager since I discovered their existence in college (on some RedHat distro).
But, recently I switched over to using 2 monitors: a 20 inch display + my MacBook's screen. Previously I ran 4 desktops and each had a specific role: 1) terminal, 2) IDE, 3) browser window dedicated to what I'm working on 4) more browser windows for non-work browsing, email and IM.
FWIW I find that I was more productive using a Desktop manager. For me the difference is the fact that desktop managers all have customizable hot keys for switching between desktops and I got very quick with this sort of setup.
I'm not quite as quick at switching between "views" using Alt (or Apple Key) + tab. I usually have 5 - 10 apps running at any given time so with ALT+Tab I could be many keystrokes away from a particular view whereas with multiple desktops I have a known destination (ex: i always have my mail on desktop 4). So, for me, switching desktops (especially with a 2D grid of desktops) is way quicker.
Also - on a Mac you Command+Tab to an app - not a particular window of the app. This also slows me down a bit cuz at that point you may have to use Command+`to scroll through windows.
Spaces on Leopard pisses me off b/c if you Command+Tab you'll switch to another desktop exposing the app you just switched to. I have a love hate relationship with this feature. Sometimes I wish it would just activate that app (w/o switching desktops) at which point I could do a quick Command+N to spawn a new window on the desktop I'm currently at. Like I said - this is a love hate thing.
But having my terminal (with tail -f on a few log files) on my laptop screen while having an IDE maximized on my main display is pretty nice. Right now this convenience is stop me from switching back to just a desktop manager. I'm trying to get used to combining the solutions but for some reason switching desktops while running an external display is way too sluggish for constant use (im blaming the macbook's video card).
Anyways... nice entry.
It seems that the more silly these posts become "more is more", "what's wrong with turkey?", the more comments are posted.
It appears that you have hit the sweet-spot of "writing down" to the masses...
Sorry but, if I have virtual desktops instead of 2 monitors, I can't look at a monitor a document and then type to the other simultaneously. Thats it, also Windows has some applications for virtual desktops, I used VirtuaWin, it gives you 4 monitors and its very simple without idiot effects and more :) (I'm a Linux User anyway too :P)
I agree that a larger monitor and/or multiple monitors will make you more productive. So much so that I too wrote about it a while back on my blog at: http://www.followsteph.com/2006/12/19/a-large-monitor-is-actually-cheaper-than-a-small-monitor/
Something to note, I also included a few screenshots of my work environment at different resolutions, and it's clear that the larger screen resolution has an advantage over the smaller ones.
But what's even more interesting, in terms of economics, especially considering the price of monitors today, there's no reason to skimp out on a smaller monitor. The price difference can be quickly be made up with even just a 5% productivity gain!!!
Multiple monitors are great but when combined with remote desktop they make a massive difference
2 screens, 2 OS, 1 set of input devices
Remote desktop is so responsive these days that this setup effectively doubles your CPU power and increases productivity even further than the standard 2 monitor 1 OS setup
Quote wackadoo : "It seems that the more silly these posts become "more is more" .. the more comments are posted.
It appears that you have hit the sweet-spot of "writing down" to the masses..."
Your comment is even more silly and pointless! I guess you were attempting to be ironic?
If you dont like the posts, stop reading em and go somewhere else with your lame comments
I am using Yod'm 3D software on a single monitor. Yod'm 3D is a freeware application that virtually adds 3 more desktops to Windows and you can switch between desktops by keyboard. It improves my efficiency.
I love a three screen setup. It increassed my productivity by 3 times.
My setup: 1 screen for Flash, 1 screen for Dreamweaver, 1 Screen for Photoshop.
The idle webdeveloper workstation. I invested in the third graphich card setup and return of investment and profit was only onemonth. from the normal 3 website a month im now buidling 4 to 5 a month.
Go for it.
Absolutely agree with multiple monitors being critical for developers. What engineer spends all their time looking at a single window of code?
Back when I had only one monitor, I found myself often printing out things like javadocs and help files and even full source code files so I could reference them "side by side" with what I was working on on the screen. The eco-nazis above should take note here: I'm quite positive my second LCD uses less energy and resources than I was blowing on the printer, ink, and paper before!
I also prefer two monitors to one large monitor. It's not about the pixels or even the super-widescreen aspect ratio (both my monitors are widescreen, so maybe side by side they are super-duper-widescreen?), although both of those are good. It gives me two natural "compartments", where reference materials and debugging instances can go on one monitor and the stuff I'm editing goes in the other.
As for matching size/etc: My first screen is a laptop screen, so that's right out. Still, I set it next to my standalone monitor in the same place (to the left and lower on the desk) every time, so the OS knows that when I hook up the standalone monitor it's desktop lies to the right and slightly offset above. Makes for a seamless experience, although the dot pitch differences and especially the screen brightness differences can be somewhat jarring.
As we've seen in the comments, everyone has their own preferences, and that's great.
What's not being said is that whether your or not your boss will let you have the setup you want (without flinching) tells you a lot about your boss and company.
Not too long ago I did some internal web design consulting at a huge entertainment company in LA. Fortunately I made using a Mac "because it can test all browsers" a requirement of my taking the position and I ended up with a 24" iMac. The highly paid Java programmers were all stuck with those sad little sub-desktops that never ship with enough memory to run an IDE, and 17" inch monitors!
Naturally the project was a total nightmare with schedules pulled out of mangers butts, etc. etc...
And for the record, I prefer a single large monitor because I can't stand bezels. It's a designer thing, bezels might be a plus for hard core programmers. Here's hoping we get wraparound monitors someday soon.
I joined the multi-monitor club not too long ago, and I have to say, switching between two windows has all but disappeared.
I just wish monitors didn't have so much side-bezel. I would love to have 4 monitors joined in a grid without visible seams.
I'll Second Ultramon, it's a great addition to multiple monitors in windows because its so helpful to actually have the task bar fill up with the windows that are actually on that monitor instead of them all showing up in the one bar (especially when you have firefox all over.)
I will have to agree with both on the virtual desktop issue. It is not a 100% replacement for multiple monitors but I have Ubuntu Gutsy on my laptop and have the 2x4 wall of desktops that I can quickly flip around really helps to ease the pain of not having my normal 4 monitors. Also allowing my chat box to follow me between desktops is a huge help while I leave email and RSS feeds on separate desktops to check when I feel like it.
Another multi monitor program I would want to suggest is synergy
I use this at home for my dual display, one being linux and the other windows and is a giant help. It's as good as having them as one system because I can copy and paste between the 2 (though sometimes that can bug out counting on the program in linux I am pasting to.) The only real thing I end up missing is dragging an app between them. It's a great setup for testing between the 2 and for hen I have to run something that only runs on one platform or the other.
Jeff, you said:
"Personally, I'd be ecstatic if I never had to size, position, or arrange another damn window for the rest of my life."
The problem with most window managers (including the MS Windows' one, or the Linux most popular ones like Gnome and KDE) is that they are not doing their job. If it's called Window Manager it should MANAGE the damn windows. Each time you move or resize a window, you are doing work that should belong to the Window Manager.
You should consider using a so-called "tiled window manager". A tiled window manager is one that never allows windows to overlap, but manages them automatically in order to use 100% of your screen space. If you open a new window, e.g., the other windows will rearrange to make room for the new one.
Since I use a tiled window manager, I never have to move or resize windows. It'd be your dream. Google for "tiled window managers" for more information.
As a developer, I find a two monitor setup a requirement of the job. I use one as my main work area and the other for reference. I've tried just having a single wide screen LCD, but there was no good way to have the reference item and IDE sitting side-by-side nicely. There just wasn't enough screen real estate. Now I have a wide screen and a 4:3 sitting side-by-side.
BTW, I'm a HUGE fan of the Kensington Expert Mouse (as shown in the picture). Anyone who suffers from carpal tunnel or is afraid that they might suffer from it in the future should give the Expert Mouse a look.
I find it difficult to quantify how much more I do with two monitors. I have two 22" monitors. But apart from productivity, it is much more enjoyable, so maybe I am inclined to stay here longer.
Sometimes I have documents related to what I am working on open on my laptop so that it becomes, in effect a third monitor.
I hate developing on a single monitor after having used two or three.
Do you actually work on all three monitors? I'd guess you work on one, the center one, and use the others to read docs and surf for info/other stuff, ie replacing some docs you'd be having next to the keyboard. That's how I'd do it. Then there is another thought that pops up...heared long ago that much of the "time" people are trying to optimize away is time where the subconscious gets to come up to pace resulting in feeling more stressed. Today I'm running as much as possible set to default, working as a consultant and jumping between many different computers makes it hard to be picky about features.
I have a 3 moniotr setup, however I only use the third monitor for programs that I only use once or twice a day. The other two monitors are used for 99% of my work. My wife is a phsyio and she reckons its good for me to move my head a few times a minute between the two monitors...
So can you add the point "Are 2+ monitors healthy or not.."
I used to have three screen then i became a dba. Initially i had one screen. Geez was that awful. You go back the the scrolling the page and minimizing windows. Now i have two screens, which really do help as i can compare two applications side to side. Luv it. if i can go back to three, i would do that in a heart beat. I guess it all depends on your job or task that you are planning to accomplish.
Another tip for multi-display setup this time without buying additional monitor(s): If you have 2 or more computers/laptops you can use MaxiVista (http://www.maxivista.com) to display-expand one of them to all other machine's monitors. That's how e.g. you can recycle your old slow laptop to become extra monitor. No affiliation. Cheers.
When I saw the new University of Utah study, I was thinking the same thing -- it would be great to have a list of all these studies in one place. So, thanks!
I'm not sure it's accurate to say that I "came away convinced." Most headlines say something like "Multiple Monitors Yield 50% Productivity Increase", and my conclusion was that it's only true if you spend your entire day cutting and pasting cells in a spreadsheet. For programmers, I think that the benefits are going to be pretty minimal (but still there).
Looks like Atwood is a track baller, shot caller. Did you go MAC?
"You guys are all weak sauce.
I've built an adapter that amplifies the signals coming out of my DVI port and converts it to varying levels of electric shock that are applied to a warehouse full of monkeys, each carrying a red, green, and blue dry-erase marker, that I have organized onto a 1920x1200 array against a ginormous whiteboard."
Must love that refresh rate
My problem with larger screens over two monitors is that larger screens force you to always be managing more screen estate. Multiple monitors means you only ever have to manage the smaller screen estate, but you can instantly extend it when you need to by going over to a second monitor.
That argument only works if you don't live in multiple monitors, but just use the extra screens for reference documents/constant minor sidetasks like IM/etc
I find this quote about the programmer will not be 50% more productive with two monitors very interesting.
Clearly this person does not know basic economics. The programmer only has to be more productive than the cost of the second monitor to make the second monitor a good deal. Clearly, since nice monitors are only about $300 now, a programmer will probably make up that productivity in a couple weeks for sure...
Tell me one thing - why a coder needs more than a 17' monitor? I think it's useless.
I have a 3 monitor display.
I've used 4 monitor displays.
Three works very well... I cannot imagine going back to 2.
Using four required a lot of 'where is my mouse' activity
(even if using that 'ctrl key' to locate the mouse...)
Working off a laptop, even with multiple displays, is near impossible now.
I think a lot of the power of virtual desktops depends upon their implementation. I used to use fvwm with an 8 screen-high scrollable desktop but it was really one big contiguous desktop. Using individual desktops just doesn't feel the same and my productivity drops.
I do taxes. At this point, I'm usually the guy who has a full-screen only tax preparation program open so both the customer and I can see it, and because I'm also the office specialist on difficult cases, I may need to research a stock's basis online, translate foreign currencies for an overseas rental property case, or contact a law firm (or a brokerage firm's financial support dept.) for live e-conferencing.
Then I've got to have at least a small scheduler window running, so I can book next year's appointments immediately when I finish up. For program security and legal reasons, I'm not allowed to use things such as the Windows calculator program or external note makers, and certainly not to install something like an mp3 player on this workstation, so I don't even have the normal small apps many people would put on a second screen, and yet I still would lose about 50% productivity on just one screen, and could probably gain some by going to 3.
Because of security for customers, minimizing the prep window means a 'possible inactivity' counter starts, and minutes later, I would have to go through log in again, so just having to set those new appointments on a single monitor would probably add 15 non-productive minutes to my workday or reduce my returning customer base, or both.
At home, I use duals or more on all my PCs, with one box that goes dual monitor even though it's still set up by default for Win 98, dual boots to Kubuntu Linux, and has six virtual pages when in Linux even with 2560 x 1024 real estate for each page.
I have found that three 20" 1600x1200 LCD monitors is ideal. Any employer that puts up resistance to providing their programmers with at the very least two monitors is a company you do not want to work for since they are obviously pennywise and dollar-foolish.
Of course there will be some decrease in productivity - especially for people who do all commands via the mouse. The bigger the monitor, the more monitors, the bigger the real estate a mouse needs to travel. Plain and simple. Also, beginner users will always be more productive when they have "the task at hand" in focus and uncluttered.
With that... I have two monitors and 5 virtual desktops. I am swtiching between them all the time and could not imagine working any way else. But hey, I also know a fair amount of keyboard shortcuts and dumped the mouse for a wacom tablet. So yes, for the power user more is more.
As the interaction between user and computer change - we dump the mouse for touch screen and hopefully eye tracking - more just might be more. But we are also dumping our desktops for iphones... Planning on a second monitor for that?
I liken the dual (or more) monitor world vs the single monitor world to watching a large screen tv and then watching a movie through a periscope. I feel crippled at work on my one 20" monitor, while at home I have all kinds of productivity opportunities on my dual monitor rig. Large monitors aren't the answer though - they lose their appeal at around 26" for me. I'd rather have dual 19's (but don't tell my wife).
I've found my productivity to be roughly equal in the following two setups:
Ubuntu [@ home] 4 virtual desktops on a single 22" widescreen lcd
Windows [@ work] 15.4" laptop screen and 17" lcd
The windows side does feel a little cramped. When I'm working at home things feel about right, with the 22" and laptop screen.
Granted, I do mostly sissy web development on the ubuntu machine, but I still feel the virtual desktops hold their own. I think once your display gets above a certain reasonable minimum size (20-24"), you get more out of adding virtual displays than physical ones. (saves room on your actual desktop, too)
With you Jeff. I had two monitors for about 18 months, then went to a firm who only had one. But when I asked about too, the rational was that it was a bigger 22in monitor. So I said.. can I have another one then?
As a developer, one screen drives me crazy moving all the windows around.
On another note, alot of my fellow developers have been moaning about Vista lately, even to the point where one of the guys was getting a new box and persuaded the network guy to put XP on it... Anyone else noticed this vein in development depts?
+1 to portrait mode.
I have 3 20" monitors in portrait mode. I'm a web developer, and I typically have the code in the center window, a browser in the right window, and ancillary stuff (IM, command shell, database shell) in the left window.
I discovered the value of portrait mode by accident. Someone rotated my monitors as a joke. I was too busy to change them back, but soon realized it's a much more efficient use of the real estate.
I agree that more monitors are more productive when multi-tasking.
It's a distraction (to me) if I am trying to focus on ONE thing, though. For example, if I have to get a document done - I turn off the second monitor and minimize everything else.
I have to say it seems like a lot of the comments are being made by people who aren't programmers. People that say they don't view multiple apps at once are clearly not programmers and the people that site virtual desktops sound a bit like Linux apologists.
I have zero problems using two monitors and in fact I use three at home. It might be that some people are just better at multitasking. For instance at home I play two WoW accounts simultaneously and have one window open to a WoW database website for looking up stuff. Or I'll play two accounts on two of the monitors and have TV running on the third.
One display, one window (ratpoison)
I'm not going to even bother reading the article.
I work on real-time process control systems and it is absolutely invaluable to be able to tweak the control system and watch the result, either in the operator screens or on a live trend.
Not even an issue in our neck of the woods.
Fred (Three Screens) the PLC guy
Menschen, die man nie vergisst
kostenlose Anzeige, Automobilien, Ferienhaus und vieles mehr..
As a programmer, I need a large number of windows open at the same time (for different files of source code, debug windows, reference and help pages, etc), even more when I'm working on several remote computers at the same time (I'm talking UNIX). Hence the use of two large displays, what really helps (I prefer dual monitors rather than a single larger one).
But I must say that most often (i.e. many collegues of mine in other dpts), don't really make an efficient usage of the large display they just got: whatever they do, they do it within a single windows open in full screen. For example I often see a single MS Word document covering their huge display and zoomed at 200%... Even the emptiest window (such as a folder with two or three icons only), they open it full screen leaving a large unuseful empty white space covering the screen. It's a reflex, they automatically maximize any window...
Not a clever usage. First, they seem to ignore the multitasking capabilities of their OS and a large part of its drag drop features, and then they keep switching between full screen windows, sequencing their work instead of paralleling it. No productivity advantage at all, a single 14" DOS display would allow them same job at no extra cost for the company...
I think there are tasks where large or multiple monitors is literally required such as programming, other design jobs or whenever you must look at multiple windows at once, and some where people can live without it (even though it'd be better anyway as 19" is obviously better than 14"), such as word processing (office work) or single tasked positions.
It's exactly the same as when I'm doing some mechanical work under the car: I don't stow each wrench after having undone each nut, but I keep all the tools needed for the job on hand and visible. This, as for multiple or large monitors, unmistakably increases productivity...
I think that once one has tasted dual monitors, stepping back to one simple monitor is a pain.
Raja, having several windows visible at the same time is useful in example when you have to watch many live data coming at the same time, or when you have to carefully compare two (or more) sets of data, or a piece of code you made which has a bug hidden against a working example that you found in a web page...
Or as Kaitain, when you are able to play a game whilst watching TV :-)
But I agree, having some virtual desktops is close. Having virtual desktops plus dual head is even better. That's the config I'm enjoying on my SGI box :-)
Anyway, multiple monitors is indisputably better when you're a programmer, for all the reasons I just mentioned...
"Get a bigger desk :).
I hate it when I have to use less than 2 monitors.
Virtual desktops are a replacement for monitors in precisely the same manner than alt-tab is a replacement for virtual desktops.
Ens on March 17, 2008 10:30 PM " --- WELL SAID!!
A couple of people have commented that Virtual desktops are not the same thing as multiple monitors, but no one has explained why that may be so.
I have always been using 4 virtual desktops (Linux) and it has all the advantages of multiple monitors like not having to resize windows, having 4 full screen apps open all the time, etc, without the disadvantage of having to move the mouse to another screen or turn your head to the next monitor. With workspace switching mapped to a hotkey, the next workspace is just a keypress away. The only 'advantage' that multiple monitors would have is that you have them visible at the same time - i dont really see that as an advantage.
From wikipedia (Polychronicity): "Polychronicity is in contrast to those who prefer monochronicity (doing one thing at a time)".
Some cultures are monochronic, others are polychronic (?)
In our office everybody has one monitor and we still tell stories
about that spanish guy who insisted on used three
(1=terminals, 2=outlook, 3=word).
I'm using 4 virtual desktops:
1st: firefox fullscreen (tabbed only)
2nd: max 4 xterms on desktop, all visible
3rd: thunderbird fullscreen
4th: "don't close by accident" apps (most likely xterm again).
When I have to read and write the same time I start to mess
up positioning windows on one desktop.
There are some tools to help autoarranging windows or resizing
to standard sizes, but what I use heavily is the "Stay in front"
feature. That way you can make good use of empty spaces in the
But I would welcome a 2nd or 3rd monitor to use them
for some status data (- nagios). Like those guys in
big plants do, where they have this whole wall full of
gauges and blinking lights and everything.
At home I'm used not only to multiple monitors, but also to
I've grown up with a setup of two monitors, one for the C-64 and
one running TV and I'm still doing that "multi-tasking" setup
at home - most likely because the apps I'm running are
not working on the same OS or because video games on PCs still
still block the PC from being used for something else.
More than one is too confusing and not a good concept. Same goes for virtual desktops.
This is why we have tabbed IDEs and browsers.
Multiple monitors are simply a geek affectation, nothing more nothing less and anyone who truly believes their brain is wired completely differently than all their ancestors and is capable of concentrating fully on more than one thing at the same time is welcome to their self delusion. If you can get your boss to pay for such a thing, fill your boots, but in reality the most efficient and effective way to *get things done* is to keep your work windows always maximized and use alt-tab if you must but make sure nothing *NO THING* can intrude upon you while working.
Programmers should get this fact of intense concentration being a fundamental requirement for being an effective programmer, apparently though they prefer to fulfill their geek lust over any and all logic.
I must say that for me, personally, at times multiple monitors are a lifesaver. But only for certain situations. When I am programming, I am happy enough using just my laptop, mostly because I enjoy sitting in a comfortable recliner while programming for hours on end. On the flip side of things, I run my own recording studio and there is nothing better than having the dual monitor setup. Using a nVidia card, there is the horizontal span option that allows the two monitors to be seem as one large display to all windows apps. The program has no idea that there is more than one monitor. Windows doesn't even know, because it is done with the nVidia hardware and shows up as on display in the display panel. This is great while running my recording software, because it can span both screens seamlessly allowing for twice the space. Currently I am using dual 19 LCDs, with a total of 1280x2048 pixels of viewing area. I would love to upgrade that even further. I am looking into running four monitors (2x2), to give me a total of 2560x2048.
In conclusion, I can understand both sides of things, The people who think multiple monitors is pointless have a good point, because not everyone can benefit from it. But at the same time, for different situations, multiple monitors can be almost necessary for productivity sake.
@John, it's not that focusing on more than one thing at a time is what multiple monitors are good for. It's the fact that you have additional workspace so you can quickly access other avenues of info. If you have two applications you constantly have to switch back and forth between, having two monitors will increase your efficiency because it cuts down on that amount of time switching between programs. This is definitively true for call centers, for example, where reps will be going back and forth multiple times within one phone call. Think of an 8 hour shift where a call center employee might spend 2-4 seconds switching back and forth between applications to access a customers information and that this will happen an avg of 5 times per call at an avg of 80 calls per day. It's simple mathematics to see how quickly that adds up (26.67 mins per shift for each rep - almost an entire lunch break at some jobs!). Say you employ 10 reps, multiple that loss by 10 and that's how much time you lose everyday having your employees constantly switching between programs just to access customer data! We all know that time is money and in today's corporate business environment it's imperative that as a company you provide a customer with a quick and efficient solution to their call in, help get their answers, and get them on with life, or leave enough time to pitch new products the customer may not be aware of. I think multiple monitors are amazing and their applications will only continue to grow as more corps start to realize their true potential.
P.S. I am a day trader and I have a 6 monitor array that I purchased from http://www.multiplexpc.com about 5 months ago. I highly recommend anyone interested in multiple monitors or high quality multi monitor optimized computers to check out the site.
I say yes! Anyone who has multiple monitors knows that they have a huge advantage in productivity. Check out http://Multi-Monitors.com for SUPER PC multiple monitor computers. Or you could get an extra graphics card if you know what you are doing. Check out this awesome multiple monitor computer on Youtube:
Pretty cool, huh!
You can argue about preferences all day long, but independent scientific studies have shown that for someone who works in front of a computer, 2 monitors are better than 1.
And the best part about this is that you don't even need a desktop anymore to run multiple displays! Many products already on the market let you connect monitors to almost any Windows and Mac machine through a simple USB port. Why would you want to invest 100s and 1000s of dollars in a specialized PC when you can have the same office setup running off a laptop for a lot less? Check out http://www.displaylink.com/shop.html and see the options for yourself.
I have used virtual desktops for years and I have also used multi monitors for years and I kid you not both are wonderful things. You can accomplish more productivity with one solution compared to a single desktop, but each works well in certain situations.
The kind of work I do, multi-monitor makes most sense. in fact some folks in my office have upto 4 monitors and those are for very good reasons, these folks do lot of monitoring work for the production environment, which means runnnings different monitoring tools which paints pretty graphs on each screen. there's no substitute to have all infomarmation in front of you at the same time if you need it.
Honestly, since I switched to multi-monitor setups, I've stopped using virtual desktops, its makes lot less sense. there are very convienient features like You can copy something on 1 screen and paste into the second and so on.
My programming desktop has 6 monitors. After ~4 years of using 4 monitors, the upgrade to 6 has been fantastic for what I do. I _can_ develop on a single display, but why torture myself? The displays stretch about 100 across, which I think is about my limit for being able to use the displays. I have another desk with 3 displays for email, invoicing, documents, bug triage--it helps keep the 6 display system focused only on the coding issues and free of the other distractions.
I first started using 2 monitors full-time about 10 years ago.
Only people that have never used 2 monitors will try to convince you not to try it.
2 monitors = at least a 75% increase in productivity
+1 monitor to = +25% more...
eg: there is a ramp point and 2 is the financial/desktop realestate sweet spot for sure. I like 2 huge monitors and 1-2 smaller on the flanks.
Anyone who's used AutoCAD swears by two monitors. There just isn't enough room on one monitor for all the tool palettes and windows it requires.
I tend to find two monitors to be very productive. I am a college student and it is very convent to read off a website on one monitor and type in another. This also works great for entering excel or mini-tab data. I tried going to three monitors but found it decreased my productivity(not necessarily true for all users). Two monitors and the use of them is better then one big monitor in my opinion too. I can click drag and maximize into each monitor and after its setup its just a flick of the mouse to go to one or the other and change something. Let alone the chance that I want to watch netflix while doing homework. Just my opinion.
Greeting. We can be sure that the greatest hope for maintaining equilibrium in the face of any situation rests within ourselves.
I am from Mauritania and also am speaking English, give true I wrote the following sentence: Posted by cory doctorow, july - pm permalink.
Waiting for a reply :-), Benny.
If you don't like 2+ monitors, than you must hate all that wasted space on your dining room table when doing taxes. I'm sure you just keep all 10-50 documents in one neat stack and switch back and forth, viewing only one document at a time.
Certainly, there is no one solution that works for everyone, but your monitor real estate is called a "desktop" for a reason. Who wants a two foot square desk when they can have 4-6 sq feet?
I finally gave up this fight with my employer. I bought two 28 inch monitors ($300 each) to use at work. I feel crippled without two monitors and have two 20 inch monitors at home. For web development, database manipulation, debugging, graphic development, it's nothing less than essential for me.
This, by the way, was after our computer purchaser said... I could have gotten you the bigger monitor, but this one was on sale for $89 and I got an extra $10 off by taking the demo unit.
I don't think he really get's it. Sure... he saved a dime, but he's skimping everywhere.... with a great loss in productivity.
If a developer needs more monitors, then he needs. But not all need them, or don't need badly enough. I could think that if you need to monitor lots of stuff, then more monitors is good. But I like to do things in the center monitor anyway, so if I don't need to keep an eye on other stuff, I can use one monitor only.
When one of the guys on my team left a couple of years ago I swapped my 19" Trinitron for his 21" Trinitron. Makes a big difference. Most of my time has been spent with Delphi 7, and I preferred configuring the windows so that it took up most of the screen, but wasn't maximised (maybe that's why I now feel at home on the Mac). I had preset configs so that I could have the Delphi windows on either side of the screen so I could have either two code windows or code and documentation. Visual Studio really needs to be maximised even on my 21" screen so now I have to switch applications more often than I'd like.
The guy who said he only wants to look at one thing at once is right, you can only read one thing at once, but he must have a photographic memory. I can't remember all the principles of reading xml in C# and have to keep going back and forth between VS, Opera and the help files. Oh yeah and NUnit, yeah! NUnit, I use that (note to self, write tests!). Switching applications is muda-waste. He must also have a very narrow field of view, I mean, there's the monitor bezel and even everything around the display that could inadvertantly catch his attention. What about books, paper to doodle on, reference sheets pinned to the wall? The argument for having multiple monitors is the same as the argument for having multiple sheets of paper in view and/or multiple open books.
Apart from laziness, one of the reasons I haven't done much with XCode on my MacBook is because the screen is no-where near big enough for all the information a programmer needs on screen, especially a n00b who needs to keep looking at tutorials. At least Spaces and Expose help.
@Michael - you *can* run a Terminal Services session across two screens if you want to. You need the latest TS client (TSC6 I believe) and pass it the "/span" command-line option.
The only problem is it's old-skool dual-screen i.e. it's really one screen but twice as wide, so dialogs pop up right in the middle, which is annoying to say the least. I use GridMove on the TS server to solve that.
Dennis Said: "Modern development Studios/IDEs have so many docking windows, some of which I use extensively, so I don't want to constantly open/close or hide/unhide them. My coding window seems to always shrink, which I hate."
Which is exactlly why I have 4 monitors... here's how I layout my typical dev environment for "heads down" coding.. from left to right
1. I use this monitor for web browsing, MSDN help, etc.. bascially it's a view for reference material. This is also where my VPC's and remote desktop windows land so that I can view them in full screen as well.
2. This is my main code window, the IDE is maximized and I dedicate the whole screen to code view / forms view / web design
3. I've undocked all of my VS dialogs, tool bars, etc.. it's where my solution explorer, properties window, server view, etc go.. since they are outside of the "main ide" I can extend them to the full length of the screen, which is important because some of our solutions contains in excess of 10 projects with thousands of code files
4. Outlook SQL Server Manager and Google talk..
I don't like wide screen monitors.. and I've been happy with my 17" monitors.. If anything, I think I would go up to 19".. but that would be it..
Oddly enough, the MS powertoy for multiple virtual desktops does not work right as soon as I switch to multiple monitors. At least with my video card, I have to choose between multiple monitors and multiple desktops. Very annoying.
As it turns out, I am recently beginning to believe my two monitors are not really enough realestate. I would like to have a third. I run several applications at once that are not useful unless they are maximized. Having a couple of these apps is not very cumbersome, however more than 3 or so turns into a burden to swap back and forth between apps.
When writing code, only one monitor is required. Debugging is different, two is definately an advantage over one as the application can run on one screen and the debugger on the other in full screen mode, so you get more real estate on the debugger. Therefore, developers should have 2 monitors.
Average users, just 1 if enough. You can only focus on one screen at a time anyway.
Also, if you have an application that runs in full screen mode (games, presentations), its easier to catch the breakpoints on a separate screen. I've run into an instance where if the applicatoin was running in full screen mode (hide toolbar etc), the only way you could debug is on a separate screen since the breakpoint essentially was hidden by the application. Not all applications are like this, but some are and the 2nd monitor comes in handy.
You understand the benefit of multiple monitors but you use that keyboard? Really?
I have 3 widescreen monitors pivoted [http://www.solatis.com/s.png] -- it's just a programmer's heaven. I'm getting claustrophobic when behind a single monitor -- I just can't believe I even was productive at all before.
Two screens of code, one screen of output -- comparing debug results immediately with codes, comparing output of multiple interacting processes quickly, browsing API documentation and immediately programming against it, watching pr0.. ehr, nvm.
People who claim there is no benefit (or little benefit) in programming with multiple monitors, obviously haven't really expercienced it.
By the way, Jeff -- your blog made me buy them about a year ago. Thanks for being an advocate for them, and converting ignorant ol' me.
So Jeff, Purdue Grad, Fan, or related to either? (I noticed your chair back)
I rock the triple 20" monitors solely due to Jeff's recommendations, so of course I'm gonna agree with him that more is more! The only (possible) mistake I made was getting widescreen monitors so my total resolution is 5040x1050 which is a strange ratio.
I think dual/triple monitors is a no brainer - its more productive, its better, it just makes sense, period! - its just getting people used to the idea - petty office jealousies, because non-developer staff are bitching "what makes him/her so special to have 2/3 monitors" - until we get people out of the mindset that multiple monitor setup is no big deal, we programmers will suffer the mono-monitor degradation!!
I've been a big fan of multiple monitors, and feel hobbled without them sometimes.
What I'd like to see is a solution for having 2, 3, or more computers all next to each other- not 3 screens on one machine. Some kind of kludge of gencontrol + windows xp native multimonitor support. Not a kvm. not RDP.
I move my mouse into the upper left corner, the app is already using VNC to connect the machine to my left, and my mouse seems to just flow right onto the desktop of that machine, and the end result is a seamless 3-screen system across 3 machines.
I imagine it'd get a little more hairy for dragging windows onto other desktops... but it'd be great for my work.
For the most part, I'd rather have one big screen than two smaller ones - a 24" instead of a couple of 20", for example. Working in an IDE (Eclipse), everything is contained within that one area, and it can never be large enough.
However, a second (possibly smaller, say a 17") screen would be useful to keep off to one side, containing web browser for viewing documentation and for testing, and maybe a window tailing log files, that sort of thing. Peripheral tasks that involve leaving the IDE, basically.
I run 3d cad on 2 20" moniters. Well worth the $300 extra for the other screen. I run the cad on the primary moniter and all the parts database, .pdf reference files, email, etc on the other. It makes it much simpler to glance at a drawing for a reference than screwing with alt-tab.
I am a member of the triple monitor club (3x22") and I find that is the perfect number to partition my applications on. Left-most is my communication and information monitor which has email, Google calendar docked, RSS feed reader, winamp, IRC, etc. Central monitor has Eclipse and Agilian and any MS Office junk that I have open. The right-most monitor has my browser(s) and a scattering of putty terminals. I dunno if it helps my productivity at all, but it is really nice to be able to just glance over at my email to see any new items rather than having to sort through a pile of windows just to see that you didn't actually care about that email that just arrived. Then you have to sort your windows out again to get back to work. I use UltraMon which totally helps with the multiple taskbar action.
The only thing that I find worse is the stealing of focus problem because if you start an app up and it steals focus when you are typing it can be even more annoying than if it popped up right in your face.