DEV Community

Cover image for The Complete Guide To Using One Monitor As A Programmer.
Mahmoud Harmouch
Mahmoud Harmouch

Posted on

The Complete Guide To Using One Monitor As A Programmer.

The debate over whether one monitor is better than multiple monitors has been going on for years. There are many factors to consider when deciding which monitor setup is best for you, such as your work environment, the size and type of your display, and the number of applications you use on a daily basis.

No matter what your needs are, there is a monitor setup that will be perfect for you. Monitors come in different sizes, shapes, and resolutions. The most common one is the has around a 30-inch in diagonal size. It’s the standard for most people and provides a standard viewing experience. Multiple monitors allow you to spread out your work on two screens simultaneously, which many argue can provide a better working environment overall because it can help you to focus on what you’re doing. However, this is a matter of personal preference and often depends on the tasks you are performing.

In this article, we are going to discuss some of the key benefits of using one monitor on your daily job, along with keyboard shortcuts to efficiently utilize your monitor. If you are a Linux user, then this article is definitely for you, especially if you are using Ubuntu. If it is not the case, then try to find some alternatives.

👉 Table Of Content (TOC).

Benefits Of Using One Monitor

🔝 Go To TOC.

It is a common misconception that one monitor is not enough for coding. In reality, it can be very efficient. Although, a lot of people have been using multiple monitors for years now. However, if you're a developer who really codes, there are some great benefits to using just one monitor for coding and development.

The first benefit is that you'll be able to save on desk space. With one monitor, you won't have to worry about clearing off your desk every time you need to code or work on something else. This will allow you to keep your desk clear of clutter and distractions so that it's easier for you to focus on your work.

The second benefit is that if the screen resolution is high enough, it will be easier for you to see the code in front of you without having to scroll back and forth between the two screens.

The third benefit is that your brain will be able to focus on the task at hand because the screen won't be divided into two parts. This means that your work will be easier to track and you'll have more clarity when you're working.I'm going to have one large monitor, but I might use a second monitor for something else (like a browser, for example).

The fourth benefit is that you'll be able to multitask better, because the screen will have a smaller "footprint." This means that the amount of space your monitor takes up will be less, and therefore you won't see two or three windows on one screen. This makes it easier to run multiple applications without constantly closing them. For example, you can have a spreadsheet open and a browser open, and you'll be able to move between them quickly.

The final benefit is that the screen will be easier to read because it'll have smaller borders. This means that your eyes won't need to travel as far across the screen when they're reading something on it, which will make it more comfortable for them.

Hidden Features of Using One Monitor

🔝 Go To TOC.

One of the main advantages of using one monitor instead of multiple monitors is that it forces you to focus on one task at a time.

Studies show that multitasking can actually reduce productivity and efficiency[0]. It can also lead to more stress and even physical pain[1]. Using a single monitor reduces the risk of this happening. This is one of the main benefits. It also puts less strain on your eyes when trying to view two screens at once, reducing eyestrain, headaches.

The benefits of using one monitor are numerous. One monitor is cheaper, more convenient, and more useful for multitasking. In addition, it's easier to share what you're doing with others on a single screen than on multiple screens. It's also easier to compare two objects on the same screen.

One of the major disadvantages of multiple monitors is that they are generally more difficult to move and set up than a single monitor, even after being adjusted by an expert. Another disadvantage though is that each screen must be adjusted for the correct position and size by an expert, which is more difficult than adjusting a single monitor.

In the next section, I am going to share a handful list of shortcuts i use on a daily basis that help me to easily navigate between applications and such.

Linux Keyboard Shortcuts

🔝 Go To TOC.
  • 🪟 + : Maximize the app window.

Maximize window

  • 🪟 + : Move the app window to the right half of the screen.

right half

  • 🪟 + : Minimize/Detach the app window.

Minimize

  • 🪟 + : Move the app window to the left half of the screen.

left half

  • ctrl + alt + : Move to the previous workspace.

  • ctrl + alt + : Move to the next workspace.

workspaces

  • alt + tab: Move between applications.

tabs

Wrapping Up

🔝 Go To TOC.

This constitutes our guide on using a single monitor for your daily work. We have discussed the pros of using a single monitor, and the cons of multiple monitors. We also went over a list of keyboard shortcuts that help you easily manage your environment.

As always, this article is a gift to you, and you can share it with whomever you like or use it in any way that would be beneficial to your personal and professional development. By supporting this blog, you keep me motivated to publish high-quality content. Thank you in advance for your ultimate support!

Happy coding, folks; see you in the next one.

Reference

🔝 Go To TOC.

[0] American Psychological Association, Multitasking undermines our efficiency, study suggests.

[1] Madore KP, Wagner AD. Multicosts of multitasking. Cerebrum. 2019;2019:cer-04-19.

[2] Ubuntu, Windows and workspaces.

Top comments (107)

Collapse
 
jeremyf profile image
Jeremy Friesen

I have long used one monitor for writing code. And usually with only focus on one application and one tab.

The benefits I've found are reduced tendency to context shift and developing patterns/commands/behaviors for navigating to different locations in the code.

With one monitor, Slack and emails are pushed aside. As well as my browser. I focus in my text editor and the problem at hand. But to maintain quick access, to related information, I have established conventions.

My local git branches are almost always of the form jeremyf/issue---<org>/<repo>#<number>. In my text editor, I can run a function to open my browser to that issue. I also wrote a function to create that branch based on the current active tab of my browser.

These "convenience functions" help me shift to different views without entirely shifting context. What I mean by that is instead of going to my browser, searching for the issue, and possibly being tempted to look at another tab, I've made sure that I'm facilitating connecting different sources of information.

Which is all about saying: I can only actively focus on one thing, and perhaps two side by side comparisons so one monitor is adequate.

Collapse
 
apayrus profile image
Rustam Apay

When I wrote yesterday an article about 2 monitors, I didn't guess that I stepped into the holy war topic :)

Collapse
 
jeremyf profile image
Jeremy Friesen

As a recent adopter of Emacs, I can completely empathize! (The long running "holy war" is Vim vs. Emacs)

But what you touched on is "Use the tools that work best for you!" And my observations is "The less I can offer myself the opportunity to self-distract, the better off I'll be."

Collapse
 
spock123 profile image
Lars Rye Jeppesen

Oh boy :) you did hehe

Collapse
 
nans profile image
Nans Dumortier • Edited

I also wrote a function to create that branch based on the current active tab of my browser.

I'm curious about what the code looks like, would you mind sharing it ? 😁

Collapse
 
jeremyf profile image
Jeremy Friesen
Collapse
 
k4ml profile image
Kamal Mustafa

I have coding for 20 years now and only use single monitor. 3 years ago, I bought a second monitor and it really amazed me how great it is having a second monitor. I thought about all the years that I've missed before. But then I started to depend more and more on dual-monitor setup, to the point that when I go outside, I feel paralyzed without a second monitor.

So since early last year, I'm back with just single monitor. I'm using tiling support in KDE and love it so far. My screen most of the time just divided into two - browser (firefox) on the left and console on the right, where I do most of the coding and other ops work.

Collapse
 
grahamthedevrel profile image
GrahamTheDevRel

Love the perspective of a single monitor user!

And I do agree with a lot of the points here despite my setup.

They key to any productive setup is something you and @jeremyf touched on, context switching!

The screen real estate is only useful if you need to see multiple things at once and they aren’t distractions. If you have slack open and in view, bad idea!

One tip to add that I used before I became a monitor addict was multiple desktops.

Have only 2 windows open at a time on each desktop and if you need to switch task use a different desktop. This “separation of concerns” keeps distractions to a minimum and makes switching between IDE and browser for example much quicker!

I think it also depends on your job type. Back end and doing code heavy jobs, single monitor FTW for focus.

Front end design or full stack, I can almost guarantee that multiple monitors work better as you have to reference so many different things at once and the constant switching from design docs to IDE to browser to terminal becomes a major bottleneck!

Great perspective on it and certainly a valuable contribution to show the other side of the story!

Collapse
 
joelbonetr profile image
JoelBonetR 🥇

I really need to see if I get a new email, sometimes are something important that I need to answer relatively quick. The same occurs most of the time with MS Teams so I need at least 2 screens when working.

Let's imagine that I work alone plus that I don't really need to have the email and a chat app visible all the time for any reason.

If I'm doing backend dev I'll eventually need to test things using postman, in the app itself, have some Git Gui or terminal, have a place to take some notes, maybe a kamban as well to organise myself.
If I'm doing frontend it's the same (maybe I can get rid of postman) plus I'll need to see the designs (Figma, Abstract, Adobe XD...) and some times I'll be in need to compare both side by side.

Alt+Tab let you switch between the current window in context and the one that was in context before so everytime you hit a different thing, alt tab will provide a different window cycle order.

Is it possible to work with a single screen? Definetely.
Is it better and/or more efficient than having two or more? Definetely not.

😆

Collapse
 
wesen profile image
Manuel Odendahl • Edited

I highly recommend a tiling/tabbed window manager such as i3 on linux or yabai on mac, if you are a developer. With a few shortcuts, you can quickly move your windows around and keep programming layouts ready at hand. Every chrome and window that is not aligned is a waste of space. While I do have many monitors, I enjoy the same peace of mind as I do when I am just full-screen in my editor while on the road.

Get comfortable with the tabs in your terminal (for example, kitty), and learn how to configure tmux to be comfortable in it as well. You can then enjoy the same ease of window management everywhere, by the magic of the terminal!

tabbed window manager

Collapse
 
k4ml profile image
Kamal Mustafa

For those not ready yet to move away from Gnome or KDE, good news is both of them now has tiling support.

Collapse
 
afheisleycook profile image
technoshy

There terminator

Collapse
 
babycamel profile image
babycamel

or tmux

Collapse
 
well1791 profile image
Well • Edited

This is an interesting topic indeed. I remember back in the days when I was using two monitors, then I noticed a few things that I didn't like:

  1. I had to move my head left and right, or up and down in order to follow whatever I was doing (it was hurting my neck)
  2. When I was "tabbing" between windows, sometimes I was missing the focus because the app was in the other screen

Now I use only one monitor, and here's a few more tips:

Always use virtual desktops!

  • My first virtual desktop is for development (editor and browser)
  • My second virtual desktop is for communications and any other app related to work not related to development (slack and harvest)
  • My third virtual desktop is for background processes and entertainment (I tend to open a private browser with youtube running in the 3rd desktop)

Limit each visual desktop to max of 4 applications, ideally 2 applications is the best

Sometimes you need to use more than 2 apps (like insomnia, figma, or some database gui), and it's ok, but the workflow changes when it's 2 and more than 2 apps:
for 2 apps: Use alt/cmd+tab, it's easier to move between apps when there are only 2, it help you focus on two things at a time (and it will depend on the virtual desktop)
for more than 2 apps: If your OS allows to use some sort of alt/cmd+#app-number then take advantage of it, you will be typing less than walking through the apps

Use global shortcuts for your terminal on any desktop

Mac iterm2 allows to hide the window from the app-switcher, and set up a global shortcut to rise the terminal
Linux guake/yakuake are both great, and allow the same behavior as iterm2
Windows there's nothing that can help here, it means, the first virtual desktop will always use 3 apps ):

Other gotchas

  • When using the editor + the browser, try to focus the editor windows in the 2nd third of the screen so that your eyes are focused a little bit to the left of the center of the screen, also, it allows you to see some changes in the browser

screenshot of visual studio code over edge browser

The idea of this is to avoid having to move your eyes all the way to the left side of the screen to read code, and move it back to the center of the screen to see something in particular.

  • If you're using devtools and feel like you need more space, use more often the "responsive" mode.

And that's it!

EDIT

One more thing, always use shortcuts to switch between virtual desktops, personally I have found these shortcuts ctrl+f[123] very useful for both mac and linux (haven't found a good solution for windows).

Collapse
 
wiseai profile image
Mahmoud Harmouch

This is really a @well crafted comment. I appreciate you taking the time to write about these valid points. I wish I could pin your comment.

Collapse
 
well1791 profile image
Well

Indeed I tried to take care of this comment, the reason behind: I remember when I was using two monitors at work, then I decided to leave one of them, and the rest of the team was wondering "wut?!" so eventually I decided to prepare a few good arguments for it, and the final evidence is that I usually move fast between apps (which makes me look like a magician haha). Anyways I appreciate you took the time to read ^^.

Thread Thread
 
wiseai profile image
Mahmoud Harmouch

These are evident signs of a true brave warrior. Keep pushing forward, brah.

Collapse
 
thegreytangent profile image
Jason V. Castellano

Programmer 1 : Guys try using 3 monitors and you will be productive.
Programmer 2: No, I use only two monitors, 3 monitors are very distracting. two is enough.
Programmer 3: Hey for me, it hurts your productivity. Try to use only 1 monitor. It saves a lot of time, money, and energy.
Programmer 4: huh? are you guys still using monitors?

Note: The number of monitors depends upon your personal preference. Only try what works for you. Me? I'm only use one. Therefore, I follow some tips of this articles. Thank you for sharing. (-:

Collapse
 
wiseai profile image
Mahmoud Harmouch

Bear in mind real chad programmers start counting from zerOS...

Collapse
 
thegreytangent profile image
Jason V. Castellano

yeah, I like that (-:

Collapse
 
babycamel profile image
babycamel

Anyone remember the days of coding with 0 monitors?

Collapse
 
thegreytangent profile image
Jason V. Castellano

yeah, in the past long time ago. In the era of CNC I think. However, it a just only a joke analogy that i read in social media. 😁😀

Thread Thread
 
babycamel profile image
babycamel

I was thinking of the old days of teletype printers with reams of paper spitting out.

Collapse
 
ironcladdev profile image
Conner Ow

screenshot

I typically keep vscode on the bottom column and usually chrome and discord on the top. Other apps like mongodb compass and slack are usually in the back, behind vscode. Large monitors are great.

Collapse
 
afheisleycook profile image
technoshy

I don’t use discord much but I use signal

Collapse
 
wiseai profile image
Mahmoud Harmouch

Matrix is even better.

Thread Thread
 
afheisleycook profile image
technoshy

Matrix is good

Collapse
 
tqbit profile image
tq-bit

The shortcut to move one window to one half of the screen is totally underrated.

In case you wonder: There's a MacOS app to achieve the same as well called Reactangle. rectangleapp.com/

Collapse
 
wiseai profile image
Mahmoud Harmouch

The shortcut to move one window to one half of the screen is totally underrated.

Fact.

Collapse
 
peterwitham profile image
Peter Witham

Great write up, thanks.

One advantage for me when it comes to using one monitor is not having to reposition all the windows when I disconnect my laptop from the screen.

I'm actually still undecided which way I prefer but I have noticed as I get older and my vision goes with it, that using big multiple monitors does not always work well with wearing glasses. I have to move my head too much to read the part I need to see.

I'm finding that laptop screens with a good keyboard shortcut routine and full screen windows is starting to work out better for me.

Collapse
 
moopet profile image
Ben Sinclair • Edited

Wait... the most common monitor is 30"? Have things changed so much? Where does this stat come from?

The first benefit is that you'll be able to save on desk space. With one monitor, you won't have to worry about clearing off your desk every time you need to code or work on something else.

I'm not sure why that's different if you have more than one monitor. If the monitor is in the way of your desk space when you want to do papercraft or have your lunch, you're going to move it. It you have two, you're going to move one or both. What's the difference?

The second benefit is that if the screen resolution is high enough, it will be easier for you to see the code in front of you without having to scroll back and forth between the two screens.

What do you mean by "scroll" between screens? If your resolution is high enough, why does it matter if it's two 22" or one 34" wide thing?

The third benefit is that your brain will be able to focus on the task at hand because the screen won't be divided into two parts.

If you have a massive screen, you're more likely to split it into parts, aren't you?

The fourth benefit is that you'll be able to multitask better, because the screen will have a smaller "footprint."

You're talking about using a huge screen, which is by definition going to have a bigger "footprint".

I don't get this post at all!

Collapse
 
wiseai profile image
Mahmoud Harmouch

Just chill, dude. It was a G.I. Jane joke, silly me, quasi-serious response to a post published before this one. Not much work went into this post. And it was on Sunday. So. You get the point—more on the story in this comment.

But in any case, I still don't get why I should use more than one monitor. Even if you are a technical analyst or a day trader, more than one monitor is just too much. It is not beneficial for your mental and physical health both in the short and long run.—I like your constructive criticism about the ideas, BTW.

It is pretty funny to mention that, in most online debates, each group believes they are the "smart people" group. Humans are funny. Life can end at any moment, and I am so damn grateful to be alive. Have a nice day.

Once upon a time, a wise man said: "We should put more effort into forgiving than cancelling each other."

Collapse
 
noriller profile image
Bruno Noriller

My laptop is like 14' with a max resolution of 1600/900.
I'm middle of moving cities and it pains me everytime I try to be productive.

Collapse
 
fyliu profile image
fyliu

I didn’t even notice the 3rd and 4th benefits are opposite use cases. One is good for single focus and the other is good for multi tasking. Single monitor can work for everyone!

That said, I work better with 2 screens. One full screen terminal tmux split vertically between shell and vim. The other running a browser with developer console open. The key thing is when I save, the browser UI updates and so I can see it before and after my changes. Live update is less useful if I have to switch desktops to see the final rendering. It’s no longer “live”.

Well, I have about 12 windows in tmux all divided vertically in half and maybe the shell half has horizontal divides for running tests.

Collapse
 
d64134n0 profile image
Diego Galeano

Exactly what I was thinking.
I don't get it either.

Collapse
 
afheisleycook profile image
technoshy

This is good guide

Collapse
 
wiseai profile image
Mahmoud Harmouch

Thanks for the feedback!

Collapse
 
jeoxs profile image
José Aponte

I hear you! I believe the main advantage is gaining focus on the main task. BUT (😅yes, there is a "but"): I think this depends a lot on what kind of development you do. For example, IMHO, web development is more efficient with two screens, as you want to check changes on real time. Using the good old "ATL + TAB" is slower than moving your eyes to the second screen. And, remember, It is the same task.

If you're multitasking (ex: programming and reading discord/slack), then having two screens will not give you the best performance on your main task.

I really appreciate all the effort you put on this guide, as Windows shortcuts is a lifesaver when using a single screen. Typing a shortcut is a lot faster than moving your cursor. Thank you for this post!

Collapse
 
wiseai profile image
Mahmoud Harmouch

Glad it helped!

Collapse
 
unsungnovelty profile image
Nikhil

Checkout tiling window managers. The ultimate productivity hack. I moved to i3wm a few years and have never looked back. I am in the process playing around with qtile window manager which is configured with python. Have not found enough time is all. The workflows you can create with Tiling window managers. Just brilliant!

Collapse
 
dumboprogrammer profile image
Tawhid

Great article just wanted to point out that you shouldn't say "Linux" shortcuts.It varies on Desktop Environments and also extensions.Like you said Alt + up arrow and down arrow to move between workspaces but in Gnome with horizontal extensions it is actually Alt + -> and <-

Collapse
 
jmau111 profile image
jmau111⭐⭐⭐

I'm also team "one monitor" 🏄🏼‍♂️. Besides, electricity consumption can be a concern...

However, I think it might depend on what you do. For example, I don't handle complex graphical renders on a daily basis. Many professionals need them.

Collapse
 
wiseai profile image
Mahmoud Harmouch

GG. One monitor gang.