This sounds like when Jeff Atwood started that fad that if you didn't have three external monitors (yes, three) then your setup was suboptimal and you should be ashamed of yourself.
No. Just no. The best developers I've known wrote code with tiny laptops with poor 1366x768 displays. They didn't think it was an impediment. Now I'm typing this on one of these displays, and it's terrible and I hate it (I usually use an external 1080p monitor), but it's also no big deal.
A 1080p monitor is enough for me. I don't need a 4K monitor. I like how it renders the font. We can argue all day about clear font rendering techniques and whatnot, but if it looks good enough for me and many others, why bother?
1. No matter what operating system you're on, you'll eventually run into an application that doesn't render in high dpi mode. Depending on the OS that can mean it renders tiny, or that the whole things is super ugly and pixelated (WAY worse than on a native 1080p display)
2. If the 4k screen is on your laptop, good luck ever having a decent experience plugging in a 1080p monitor. Also good luck having anyone's random spare monitor be 4k.
3. Configuring my preferred linux environment to work with 4k is either impossible or just super time consuming. I use i3 and it adds way more productivity to my workflow than "My fonts are almost imperceptively sharper" ever could
My setup is 2x24" 1920x1200 monitors - so I get slightly more vertical pixels than true 1080p, but in the form of screen real estate rather than improved density. I also have 20/20 vision as of the last time I was tested.
My argument in favor of 1080p is that I find text to just be... completely readable. At various sizes, in various fonts, whatever syntax highlighting colors you want to use. Can you see the pixels in the font on my 24" 1080p monitor if you put your face 3" from the screen? Absolutely. Do I notice them day to day? Absolutely not.
I genuinely think 4k provides no real benefit to me as a developer unless the screen is 27" or higher, because increased pixel density just isn't required. If more pixels meant slightly higher density but also came with more usable screen real estate, that'd be what made the difference for me.
You lost me right here on line 1.
If there are apps on MacOS that can't handle high dpi mode, I haven't run into them as a developer (or doing photo editing, video editing, plus whatever other hobbies I do). Also, I don't have any trouble with plugging my highDPI MacBook into a crappy 1080p display at work.
> 3. Configuring my preferred linux environment to work with 4k is either impossible or just super time consuming.
Things like this are exactly why I left Linux for MacOS. I absolutely get why you might want to stick with Linux, but this is a Linux + HighDPI issue (maybe a Windows + highDPI issue also), not a general case.
> I genuinely think 4k provides no real benefit to me as a developer unless the screen is 27" or higher, because increased pixel density just isn't required.
You could say the same for any arbitrary DPI; 96dpi isn't "Required", we got by fine with 72dpi. It's all about ergonomics as far as I'm concerned.
I would also add, when it comes to 4K and, for example, MacBooks, things fall apart quickly in my opinion. Cables, adapters/dongles/docking stations just must match up for everything to work in proper 60fps, and it gets worse if you have two external displays.
As for my home set up, also stayed at 25" 1440p. Nice balance for work, hobby and occasional gaming without braking the bank for a top-tier GPU.
This seems like a long-standing problem with Linux, rather than a reason to dislike high-res screens.
# This affects every GTK app.
xfconf-query -c xsettings -p /Xft/DPI -s 144
The second step is going to about:config in Firefox, and setting layout.css.devPixelsPerPx to a higher value than 1.0. I really need to write an extension to do that in one click.What is really tricky, though, it's having two monitors with different DPI. Win 10 does an acceptable job with it; no Linux tools I'm aware of can handle it reasonably well. Some xrandr incantations can offer partial solutions.
I don't think the reasons you illustrated support that conclusion. You don't actively dislike the extra pixel density of a 4K display. You seem to only dislike the compatibility issues relevant to your use case.
>No matter what operating system you're on, you'll eventually run into an application that doesn't render in high dpi mode.
FWIW, I can't recall the last time I has a problem with apps not rendering correctly in hidpi mode on MacOS. Unless you've got a very specific legacy app that you rely on for regular use it's a non-issue.
>Configuring my preferred linux environment to work with 4k is either impossible or just super time consuming
Ah, I think I found the real issue ;-) If your linux desktop rendered 4K beautifully, seamlessly, and without any scaling issues right out of the box, I could all but guarantee that your opinion would be different.
> My argument in favor of 1080p is that I find text to just be... completely readable.
Yes, me too. To me it's more than just readable, I find the text crisp and comfortable. I don't need anything else.
Primary apps go in the middle, such as code editor, etc.. Tertiary windows, such as documentation go on the outer edges. Still quite usable, but a little out of the way for extended reading.
I do agree with you that 4K under 27” isn’t necessary.
What issues actually? Xmonad on Arch user here and I find the sweet spot for me is 27-32" 4k, 1440p on laptop (I guess 4k would be nice here too, but not sure if it motivates the increased power draw). After getting used to the increased real-estate, I do feel limited on my older 1080p laptop screen; fonts smaller than 8p (which is still all good) noticably impacts the readability to the point I can feel my eyes strain faster. It did take a bit of playing around with Dpi settings to get it right, though, out of the box it's not great. The Arch wiki has some great material.
The only frustration I do have (which IS super-frustrating, specifically for web browsing) is with multi-monitor setups with different pixel density - your point 2, I guess. Even plugging anything larger than 19" with 1080p into my 1080p Thinkpad is annoying.
I think it should be possible to configure it correctly but I just gave up and end up zooming in/out whenever I do this and send windows between screens. Haven't looked at it, but maybe a mature DE like KDE or GNOME (which, if you don't know, you can still use with i3) should be able to take care of this.
Also, this is all on X11, have no idea if and how wayland differs.
I'm working on an old 24"16/10 display (the venerable ProLite B2403WS) and an OK 32" 4K display with a VA panel. Both are properly calibrated.
There is no amount of tinkering that can make fonts on the 24" look good. It looks like dog shit in comparison to the 4K screen. It might not be obvious when all you got in front of your eyes is the 24" display, but it's blatant side to side.
On top of it, the real life vertical real estate of the 4K display is also quite larger.
I've never been a big 16/9 fan, but frankly at the size monitors come in today and the market prices, I don't a reason not to pick a few of these for developing.
I haven't had this experience (MacOS, 4K monitor for 2.5 years)
> 2. If the 4k screen is on your laptop, good luck ever having a decent experience plugging in a 1080p monitor. Also good luck having anyone's random spare monitor be 4k.
shrug - 4K and 1080p seem to work together just fine for me. I've currently got a 27" 4K monitor and a 24" 1080p monitor both running off my 2015 13" MacBook Pro; the 4K is on DisplayPort (60Hz @ 3840x2160) and the 1080p is on HDMI (and it happens to be in portrait mode). I use all three screens (including the laptop's), and while the 1080p is noticeably crappier than the other two, it's still usable, and the combination of all three together works well for me. A couple of extra tools (e.g. BetterTouchTool) really help with throwing things between monitors, resizing them to take up some particular chunk of the screen, etc. - my setup's quite keyboard-heavy with emphasis on making full use of the space inspired by years of running i3 (and before that xmonad, ratpoison and others) on linux and freebsd.
> 3. Configuring my preferred linux environment to work with 4k is either impossible or just super time consuming.
That's a statement about linux and i3, not monitors. (And again, I like i3, but stating this limitation as if it's a problem with monitors not i3 seems... odd.)
Never happened to me in 4 years, see below. That said, I barely use any graphical programs besides kitty, firefox, thunderbird and spotify.
> 3. Configuring my preferred linux environment to work with 4k is either impossible or just super time consuming. I use i3 and it adds way more productivity to my workflow than "My fonts are almost imperceptively sharper" ever could
This is just not true. I have used the same 32" 4k monitor for 4 years running NixOS with bspwm (a tiling window manager, which does even less than i3) on 3 different laptops - thinkpad x230 (at 30 Hz), x260 and x395 and it all worked completely fine.
I used a script like this to setup monitors, I would run it every time I would change my monitor setup (e.g. on the go): https://github.com/rvolosatovs/infrastructure/blob/0e17a1421...
It depends on a very simple tool I wrote, because I was sick with `xrandr`: https://github.com/rvolosatovs/gorandr , but `xrandr` could easily be used as alternative.
Recently I switched to Sway on Wayland and it could not be smoother - everything just works with no scripting, including hot-plug.
> I genuinely think 4k provides no real benefit to me as a developer unless the screen is 27" or higher, because increased pixel density just isn't required. If more pixels meant slightly higher density but also came with more usable screen real estate, that'd be what made the difference for me.
Indeed, screen size is way more important than resolution. In fact, even 4k at 27" seemed too small for me when I had to use that in the office - I would either have to deal with super small font sizes and straining my eyes or sacrificing screen space by zooming in.
I have been running two 1440p displays on a 4K retina MBP and the experience has been impressively seamless. Both with Catalina (the latest) and High Sierra
The biggest problem is with Apple port splitters; they are crap and sometimes monitors wake from sleep with a garbled picture
Since aging has forced me into wearing reading glasses, I wear single vision computer glasses that are optimized for the distance range of my monitors' closest and furthest points.
Because I dont have scaling enabled, I don't get any of the HiDpi issues that I've gotten on my laptops with Windows.
I have found that I am still wanting for even more screen real estate, and for a time I had a pair of ultrawide 23" monitors underneath my main monitors, but it created more problems than it solved and I recently went back to only two monitors.
A 4k monitor is now $300 (new). Used are even cheaper.
> Configuring my preferred linux environment to work with 4k is either impossible or just super time consuming. I use i3 and it adds way more productivity to my workflow
I use Gnome 3.36 and many HiDPI issues I was having before are now gone, without any extra configuration.
> My argument in favor of 1080p is that I find text to just be... completely readable.
It is readable but fonts are pixelated, unlike 4k.
My only problem is that macOS has some artificial limitations when it comes to using non-Apple monitors. Like a lower refresh rate. My solution? Use Linux.
I am using using Emacs and tmux under Linux, in the Gnome desktop. Gnome has HDPI scaling. For me, that works fine with a 4K 43 inch display. The thing you need to watch out for is to get a graphics card with proper open source (FOSS) driver support. Some cards are crap and don't come with FOSS drivers. You can get them to run but it is a PITA on every kernel update. Don't do that to yourself, get a decent card.
I did a lot of research before buying an xps-13 and went with the 1080p version due to basically all the reasons you just stated + poor battery life and video performance.
I have hope for the future though... what would really make transitioning easier is a way to automatically upscale incompatible programs, even if it means nearest neighbor scaling at least it will make them usable on super hi-dpi monitors.
I still switched to 1440p as 4K is just better looking 1080p. You cannot fit more information on the screen with scaling and without scaling everything is too small. I work as backend developer so space is more important for me than visual quality.
Happy i3 arch linux 4k monitor user here for over 2 years. I only set an appropriate Xft.dpi for my monitor size/resolution in ~/.Xresources once and that was it.
Can't imagine being easier than this tbh.
Or, if you are using decent graphics hardware, you could even get two of them and have four times more display space than you have now.
It might depend on the program, too. Some might only work in pixels. Fortunately, it is usually not a problem if you are trying to run a program designed for Gameboy; the emulator should be able to scale it automatically, subject to the user setting. I don't know if any X server has a setting to magnify mouse cursor shapes, but it seems like it should be possible to implement in the X server. Also, it seems like SDL 1.x has no environment variable to magnify the image. My own program Free Hero Mesh (which I have not worked on in a while, because I am working on other stuff) allows icons to be of any size up to 255x255 pixels (the puzzle set can contain icons of any square size up to 255x255, and may have multiple sizes; it will try to find the best size based on the user setting, using integer scaling to grow them if necessary), but currently is limited to a single built-in 8x8 font for text. If someone ports it to a library that does allow zooming, then that might help, too. However, it is not really designed for high DPI displays, and it might not be changed unless someone with a high DPI display wants to use it and modifies the program to support a user option for scaling text too (and possibly also scaling icons to a bigger size than 255x255) (then I might merge their changes, possibly).
Still, I don't need 4K. The size I have is fine, but unfortunately too many things use big text; some web pages zoom text by viewport size, which I hate, and a bigger monitor would then just make it worse.
Could you clarify when in your life you've had a 4k screen with good OS support, so that we know what experience you are speaking from when you say that?
But I do agree with points 1 and 2 (they tend to work better on windows, though).
On the other hand, what about 3? I would find it ridiculous that it'll take you more than 5 seconds to enlarge DPI (no multi-monitor) even on the weirdest of X11 WMs. X11 is designed for this....
I was one of the people who worked on 15” retina MBP everywhere, even in the office where I had 30” on my desk, to not have to readjust and keep optimal habits for the screen size. Now I simply refuse to work on a laptop at all, it feels like being trapped into a tiny box and I get literally claustrophobic :)
I have used between 1-3 monitors over the last decade, and there sure are advantages to having 3 for certain tasks. However, I noticed that having multiple monitors resulted in me having a dedicated screen for email (usually the smallest, my laptop screen). This decreased my productivity.
Perhaps not everyone has this weak spot, but for me using multiple monitors has a downside from an attention/focus perspective.
I'm just pushing back against these out of touch fads. Most developers worldwide don't have a three-monitor setup. There is no proven correlation between quality software and 4K displays or mechanical keyboards (to name other fads). More importantly, the best devs I've known -- people I admire -- used tiny laptops with tiny displays, and shrugged when offered even a single external monitor; it just wasn't a big deal for them.
But I will tell you why multi monitor setups aren't the best for me. It doesn't feel like having a nice big desk to work at; rather, it's like having a separate desk for each monitor, and I have to move from one to the other to use it. With more than one centered monitor, I have to move my head to look between them, or my entire body, so that I can face straight towards whichever monitor I'm currently looking at. I've tried going back to multi monitor setups many times and every time I get tired of it faster due to straining my neck, eyes, elbows and shoulders with all that turning-to.
For me, it's one very nice monitor, with my laptop plugged in in clamshell mode (although now I leave my rMBP cracked so I can use TouchID).
I've also been using a window manager (Moom) with hotkeys to be able to set up three vertical windows on my screen. That seems to be the sweet spot for me: I can have multiple different code editors, or editor+terminal+web, or throw in email/slack/whatever into the mix. (I can also split a vertical column to two windows to achieve a 2 row x 3 column layout, and lots of other layouts, 1x1 vert/hor, 2x2, centered small/large...) I feel like I've arrived where you're at, my perfect setup!
I also still enjoy the 13" rMBP screen, although I can't get to 3 columns, and lately the keyboard hurts my wrists after extended usage. I use a Kinesis Freestyle 2 with the monitor+rMBP which has been absolutely fantastic for typing ergonomics.
I don't want that. There was a time when I used multiple monitors, but I've found that just working on a laptop works better for me. It's less distracting, and I find switching between windows to be both faster and less disorienting than turning my head to look at another monitor.
I can definitely understand other people preferring multiple monitors, but not everyone has the same preferences.
I LOVE the trackpad & keyboard combo on my MacBookPro. For a while, I was using Teleport to use my laptop as the input device for my iMac.
I do occasionally use the Magic Mouse for drawing (direct manipulation) tasks.
(My first laptop was a second-hand HP 6710b at 1680×1050 for 15″, and that set me to never accepting 1366×768. So my next laptop was 15″ 1920×1080, and now I use a 13″ (though I’d rather have had 15″) 3000×2000 Surface Book, and it’s great. Not everyone will be able to justify the expense of 4K or similar (though I do think that anyone that’s getting their living by it should very strongly consider it worthwhile), but I honestly believe that it would be better if laptop makers all agreed to manufacture no more 15″ laptops with 1366×768 displays, and take 1920×1080 as a minimum acceptable quality. As it is, some people understandably want a cheap laptop and although the 1920×1080 panel is not much dearer than the 1366×768 panel, you commonly just can’t buy properly cheap laptops with 1920×1080 panels.)
I'll go one step further: I used the LG 27" 5K Display for two whole years before returning to a 34" Ultrawide with a more typical DPI.
Obviously I preferred the pixel density and image quality of the high-DPI screen, but I find myself more productive on the 34" Ultrawide with a regular DPI. (FWIW, LG now has a newer pseudo-5K Ultrawide that strikes a balance between the two).
I look forward to the day that monitors of all sizes are available with high DPI, but I don't consider it a must-have upgrade just yet.
Also Note that Apple made font rendering worse starting in OS X 10.14 by disabling subpixel AA. Using a regular DPI monitor on Windows or Linux is a better experience than using the same monitor on OS X right now. If you're only comparing monitors based on OSX, you're not getting the full story.
I don't mind the pixels, as long as the font rendering system is good.
Of course I understand the need for a Retina display if you're working on macOS...
Put yourself in the mindset of a typography geek. Then, by default, you will care about almost all of these things. I'm not saying you should care about all of these things all or most of the time, but that's the correct mindset to put you in sync with the author's conclusions (mostly -- I don't really think 120Hz is that big a deal).
IMO 120 Hz monitors are overrated for pretty much everything except for FPS games (and similar fast-paced interactive titles).
I have a 144 Hz display and I would not want to go back to a 60 Hz display for gaming. At some point, my monitor changed to a 60 Hz refresh rate without telling me after some driver update. The first time I played Overwatch after that happened I could immediately tell that something was wrong, since the game just didn't feel as responsive and smooth as it usually does.
I think three monitors is distracting, but that whole community discussion gave me the opportunity to compare how I use a multi-monitor setup compared to others.
I generally dislike how fonts are rendered at floating-point scaling or lower resolutions, but I too just learned to live with it over years of ignoring it. Unfortunately, now I can't unsee it!
Could you elaborate on this? Specifically, do you feel that having three/multiple monitors is necessarily distracting (no matter what you do with them) or just encourages distraction?
My experience is the latter, and that if I am disciplined and only put windows from one task at a time on all three, then I have no more temptation to be distracted than I usually have at my internet-enabled glowbox, but maybe I'm an outlier.
Blogs never left— they may have withered to near-nothingness after the same exact people who claim to want them abandoned them, but they’re still here.
I may be wrong but I believe the people who claim to want blogs abandoned them for sites like Hacker News.
1 for my full screen IDE: 3 files side by side, multiple terminals
1 with 2 browser windows: my product (a web app), and another with specs, stack overflow, google
And my macbook’s screen with slack or email.
Whenever I have 2 monitors or less, I find myself switching windows around all the time! With 3 I just move my eyes and mouse.
The only good solution today is the iMac 5K. Yes, 5K makes all the difference — it lets me comfortably fit three columns of code instead of two in my full-screen Emacs, and that's a huge improvement.
4K monitors are usable, but annoying, the scaling is just never right and fonts are blurry.
Built-in retina screens on macbooks are great, but they are small. And also, only two columns of code, not three.
One thing I noticed is that as I a) become older, b) work on progressively more complex software, I do need to hold more information on my screen(s). Those three columns of code? I often wish for four: ClojureScript code on the frontend, API event processing, domain code, database code. Being older does matter, too, because short-term memory becomes worse and it's better to have things on screen at the same time rather than switch contexts. I'm having hopes for 6K and 8K monitors, once they cost less than an arm and a leg.
So no, I don't think you can develop using "tiny laptops with poor 1366x768 displays". At least not all kinds of software, and not everyone can.
This opinion seems bizarre to me. You start by offering personal (and valid) anecdote, then end up saying "I don't think you can develop [...]". But this flies in the face of evidence. Most people by far do not use your preferred monitor setup (iMac 5K) and in my country a vast number of developers use 1366x768 to develop all sorts of high quality software.
It's one thing to say "as I grow older, I find I prefer $SETUP". No-one can argue with that, it's your opinion (and it might very well become mine as I grow... um, older than I already am!). It's an entirely different thing to claim, as you do here and I think TFA does in similar terms, "you cannot prefer lower tech setups", "you cannot develop software this way", "it's very difficult to develop software without $SETUP". The latter is demonstrably false! I've seen it done, again and again, by people who were masters at their craft.
When we are talking pixel count, we have to talk about size of the display also. a 28" 4k is acceptable, a 40"+ 4K is best used as a TV.
The best display I use right now is a 11" iPad Pro with a refresh rate at 120 Hz. You really can feel it, especially for stylus work.
In addition to what thomaslord said [ https://news.ycombinator.com/item?id=23554382 ], 4K monitors tend to be widescreen. 1280x1024 user here; you'll take my aspect ratio when you pry it from my cold, dead hands.
I wish there would be more 1920x1200 or 2560x1600 displays...
Lacking those options at reasonable prices leaves me with the option of using rotated 2K monitors, though 27" ones are uncomfortably tall and 24-25" ones are a little too high in pixel density.
Huawei's Matebook's 3K (3000x2000) display with its 3:2 (1.5) ratio at almost 14" size is an amazing sweet spot though. I wish they would have it in 28" size for desktop use :)
In the end I'm working on 27" 2K and 5K iMacs for about a decade now and I see it as a good compromise, despite the aspect ratio, but I quite like my 30" HP ZR30w with its 2560x1200 resolution. Unfortunately its backlight is getting old and uneven :(
My monitor is still available at Walmart for $500. It's like an actual desktop when you can spread out all your stuff.
But you can't spread out your stuff any more than you'd do on a 24" 4k monitor...
I don't understand the value of multiple displays for code work. Just about everything that I could do with multiple displays can be more ergonomically achieved with multiple logical desktops. I can swap a desktop with a keystroke rather than pivoting, and that workflow translates well from laptops to large workstations.
When I code I notice a few things about the multimonitor setup. My cursor can travel 10 physical feet of screen space and it's literally inefficient to point. The ergonomics are terrible. The entire setup basically feeds inattention and an ever-sprawling amount of crap being opened. More than that I think having multiple large rectangles shooting light into your eyeballs kind of screws with your circadian rhythms.
When I code I use a laptop and enjoy how briefly my hands leave the keyboard before returning because what little pointing i'm doing can be done extremely quickly because of the small size of my workflow. Bigger is better is oversold - a workspace should match the work - too small is just more common than too big.
1. Main screen. For the code editor, intense web browsing, etc.
2. Secondary screen. For debugging visuals (since I work on web stuff, it usually hosts a Chromium window; for a mobile dev, I imagine it would be an emulator/simulator), documentation referencing (with the code editor open on the main screen), etc.
3. Third screen. For all comms-related things: MS Teams/Outlook/Discord/etc.
I didn't mention terminal, because I prefer a quake-style sliding terminal. For a lot of devs, I imagine that having a terminal on their secondary screen permanently would work great as well.
P.S. Not that long ago, I realized that the physical positioning of monitors matters a lot (to me, at least) as well. I used to have 2 of them in landscape orientation side-by-side and one in portrait orientation to the side. It was fine, but didn't feel cohesive, and I definitely felt some unease. Finally got a tall mounting pole, and now I have the landscape oriented monitors one on top of each other instead of side-by-side (with the rest of the setup being the same). That was a noticeable improvement to me, as it felt like things finally clicked perfectly in my head.
Email hides behind the web browser and slack behind the output.
By 'like them' are you talking about the full set of tradeoffs, or the raw visuals? Because I'd be very surprised if someone actually disliked how an all-else-equal 4K screen looks, compared to 1080.
So I am still stuck with my regular HD monitor + laptop monitor - which is pretty good.
A 5K monitor allows you to view an enormous set of workspaces and code, and sharply. It will cost you less than $300 a year, which for any decent developer is less than 1/2 of 1% of your annual revenues (and its tax deductible for contractors!).
There is no way the increase on productivity doesn’t far outweigh that cost.
I was plenty productive on PC XT clone with a tiny monochrome CRT monitor and an Hercules video card. (I wanted to say I was plenty productive with my C64, but that'd be stretching it :P )
What I want to fight is this notion that once tech N+1 arrives, then tech N must have been unproductive. That's demonstrably false, a form of magical thinking, and not a healthy mindset in my opinion.
Don't forget the cost of buying a new computer that can drive that display.
None of our laptops even have DisplayPort outputs let alone sufficient onboard graphics for that resolution.
One of my roles for a long time was speccing/procuring computer equipment (later overseeing the same) for a huge diverse organization. I took feedback, complaints from users and vendors, etc. People are passionate about this stuff... I was physically threatened once, and had people bake cookies and cakes multiple times as a thank you for different things.
The only monitor complaints I recall getting in quantity were: brightness, I need 2, and i need a tilt/swivel mount. Never heard about resolution, etc. Print and graphic artists would ask for color calibrated displays. Nobody ever asked for 3, and when we started phasing in 1920x1080 displays, we literally had zero upgrade requests from the older panels.
Developers wanted 2 displays and SSDs.
And some grow to like them - I used to scoff... before I tried it for myself.
I think as well, it depends on your eyesight, and also your workflows and apps. I use Rider (and previously Visual Studio), and these have a lot of panes/windows - it's really nice to be able to have the code front and centre, with debug output, logs and a command prompt in another screen, for example. Another example would be to have zoom/webex in one screen, while I'm taking markdown notes in another.
A good while back, I moved to a dual monitor setup at home (1x 3k in landscape, 1x 1200p in portrait), and a triple monitor setup at the office (1x 1080p in landscape, 2x 1200p in portrait). I also use a Dell screen manager, so I can easily setup regions that windows can snap to - for example, the portrait displays are usually split in 2 horizontally.
The triple monitor setup is admittedly gratuitous, but I'm never going back from a dual setup - it's just so convenient to have everything I need always there, instead of constantly flipping back and forth through the many windows I invariably have open. It feels like I'm context switching much less.
If you're scanning tons of text, all the time, across multiple windows, you need a lot of real estate, and in times of yore you would turn to printouts and spread them over your desk. A lot of modern dev goes in this direction because you're constantly looking up docs and the syntax is shaped towards "vertical with occasional wide lines and nesting" - an inefficient use of the screen area. Or you have multiple terminals running and want to see a lot of output from each. Or you have a mix of a graphical app, text views and docs. A second monitor absolutely does boost productivity for all these scenarios since it gives you more spatial spread and reduces access to a small headturn or a glance.
If you're writing dense code, with few external dependencies, you can have a single screen up and see pretty much everything you need to see. Embedded dev, short scripts and algorithms are more along these lines. Coding with only TTS(e.g. total blindness) reduces the amount you can scan to the rate of speech, and I believe that consideration should be favored in the interest of an inclusive coding environment. But I'm digressing a bit.
For a more objective ranking of concerns: pixel density ranks lower than refresh rates, brightness and color reproduction in my book. If the screen is lowish res with a decent pixel font that presents cleanly at a scale comfortable to the eye, and there's no "jank" in the interaction, it's lower stress overall than having smooth characters rendered in a choppy way with TN panel inverted colors, CRT flicker, or inappropriate scaling.
Book quality typography is mostly interesting for generating a complete aesthetic, while when doing computing tasks you are mostly concerned about the symbolic clarity, which for English text is reasonably achieved at the 9x14 monospace of CP437, and comfortably so if you double that. There's a reason why developers have voted en-masse to avoid proportional fonts, and it's not because we are nostalgic for typewriters.
And yet for some reason we have ended up with tools that blithely ignore the use-case and apply a generic text rendering method that supports all kinds of styling, which of course makes it slow.
This is sad in itself. Proportional fonts are vastly superior to type writer fonts in presenting code. The kerning even makes for better readability even if it comes at the expense of the ability to do ASCII art.
The bigger issue is that, like we've been doing for the last 40 years, a cutting edge 2X display should eventually become the new 1X display, while the former 1X's become obsolete. This makes building software a bit easier, even with resolution independence, it is difficult supporting more than 2 generations of display technologies (e.g. right now we have 100 PPI, 150 PPI, 220 PPI, even 300+ PPI at the bleeding edge).
More importantly, it's one thing to say "I prefer this new tech/resolution/gadget" and another to claim "how can you work like this?" (Where "this" can be "without a mac", "without a mechanical keyboard", "without a 4K monitor", "without three 4K monitors", etc).
Software is developed successfully without any of those. It's not only not an impediment, it's not like a sort of martyrdom either. So no, it's not time to upgrade that monitor.
Someone else in this thread commented that for many devs, their gadgets are a proxy for actual skill. It's easier to show you have a 5K monitor "like all hackers should" than to actually be a good developer.
I'm sorry to say this but that is not a real argument.
It taught me the valuable lesson that creating software, to them, was mostly about thinking, not about the gadgets you use to write it down.
Like another commenter said, it seems gadgets work as proxies for talent for some developers -- "you should use a mechanical keyboard and a 5K three-monitor setup, like real hackers do" -- because actual talent is harder to gain and demonstrate. A sort of cargo culting by accumulating tech gadgets.
Linux can be made to look good in that respect, but the situation for scaling legacy applications is pretty bad.
Multiple monitors are slightly different: the physical gap means it’s not a seamless switch and not every task benefits.
Probably why ultrawides are gaining popularity.
For me 27" is the perfect display size: - Any bigger and I find I have to move my head to much to be comfortable in the long term and I get a stiff neck. - Any smaller and I can't fit enough on the screen at once and my productive decreases.
2.5k (1440x2560) on a 27" monitor has pixels at a good size that most apps scale by default beautifully on.
5k is exactly double the density of the already perfect 2.5k, so (at least of MacOS) everything displays exactly as it does with 2.5k except really crisp!
Therefore, I now run the 27" LG 5k as my primary screen, and my old 27" 2.5k vertically on the side for all those status like things that it's good to see but don't require my focus. Also, since the size and "looks like" resolution is the same, I can drag windows between them without any changes and size/scale. It just works!
But that's nothing to do with physical size and everything to do with resolution.
How is more pixels and more legible text not strictly better than lower resolution monitors?
It’s like preferring 10 DPI mice to the modern 1000+ DPI ones, saying that PCIe 4x was better than 8x or actively disliking a modern DSL connection compared to a 56k dialup.
Yours is just an idiotic stance to feel superior than everybody else.
Not everything is a numbers game.
I look at my screen most of the time. I'm not buying cheap screens anymore. It is just not worth it.
I just refuse to be told that I must use a { three-monitor setup, mechanical keyboard, 4K monitor, macbook, $LATEST_FAD } or otherwise I'm using a subpar development environment.
I still remember when Full HD monitors were all the rage. Nobody considered them cheap tools back then, and somehow code got written and developers were happy. There will come a time when someone on the internet will tell you that a 4K monitor is a cheap tool and that nobody can properly code using one.
Do you mean '≡' (U+2261 identical to)? Because no, it very much doesn't; in fact I'm not sure I've ever seen a font where it looked bad short of vertical misalignment with surrounding text.
I coded on a MacBook Air 11" on daily basis during 1 year. I thought it was no big deal too until I started developing myopia.
Did your eye doctor tell you your myopia developed because of staring at your laptop's screen? (Mine developed when I was a teenager and hadn't yet spent a lifetime of staring at CRT monitors, and my eye doctor told me it was likely unrelated to computer screens. But maybe medicine has changed its opinion, this was decades ago).
Its more about maximising productivity in my opinion.
Me? I can certainly code with a poor quality 1366x768 display (doing it right now with this Dell Inspiron!) but I hate it. I'm not a 4K snob, but I do like better screens!
Every time I use a 'non-retina' type of display (like an old laptop I use for testing or my 19" 1080p monitor), it feels like I'm looking through some dirty glass because of the blotchy effect.
I tried 4K on one linux environment (and documented the experience[1]), and according to numerous responses, my situation was not unique: if you try 4K on any Linux environment, and don't enjoy everything being tiny, then it's not a fun time trying to get everything to behave like you can with Apple's built in resolution scaling options.
[1] https://www.jeffgeerling.com/blog/2020/i-replaced-my-macbook...
I've realized that a stable environment does wonders for productivity. What you got used to (stable) is path-dependent and personality-specific. But it doesn't matter. What matters is to train yourself to sit down and work. If you're opening that laptop lid and thinking about visiting Hacker News first, shut it down, get up, walk away from the desk and then retry. At this point, I feel like doing a "productivity, productivity" chant / rant a la Steve Ballmer's "developers, developers" chant:
I'm primarily a C programmer. 1366x768 limits my functions to about 35 lines at 100 columns wide. My font is Terminus, sized at 14.
I thank my x230 for enforcing me into a paradigm where functions are short and to the point. I watch my co-workers flip their monitors vertically and write code that goes on for days. While it's not my style, I'm thankful I've been forced to make do of limited space, and it has trained me well.
So yeah, nobody needs a 4K display. But I would think most people don't know what they're missing. (:
i.e. I have a three monitor setup, two 1080 screens and a central 1440p screen. Mechanical cherry blue keyboard and a nice gaming mouse. Big desk. One of those anti-RSI boob mousemats. Nice headphones. Beefy computer. Ergonomic office chair. Everything at the right height. Quiet room. Next to an open window, but which is in shade.
Some days I will happily chug away writing reams of code.
Other days I will get nothing done and every minor annoyance will bring me out of focus; background sounds, glitches in my desktop environment, almost inconceivable hitches in computer performance, my chair feels wrong, the contrast of all text is too high, it's too dark in here, it's too bright, this is all bullshit, I'm so done with computers...
And on other days I'll get even more done, hunched like a Goblin in my living room armchair with my legs tucked beneath me, working through to the early morning, on my tiny 13 inch dell laptop, vaguely aware that I have searing pain* through one wrist, having not eaten for 12 hours, but completely and utterly content and in flow writing code or a paper.
Humans are crazy fickle.
There's no Platonic Ideals when it comes to Crushing It(tm) as a software developer.
I think learning the art of mindfulness and meditation does more to help you focus than expensive equipment fads and micro-optimizing your environment.
* Before anyone mentions, yeah I'm aware RSI is Not Good. I've got a bunch of various remedies for it. Ironically I've found that bouldering helps with this it the most. Just not able to do that during lockdown :(
In the last 3 months I went from 1 screen to 2 to 3 as I progressed through particular stages of development. When we 'go live' I'll easily be using all 3, but I don't _really_ need them, it's a nice to have.
It turns out the whole idea of needing tons of desktop space was vastly exaggerated. You can't focus on 3 screens at once, it is impossible. Even on a large screen you can only look at one place at a time. Programmers are focused on one thing for a long period of time anyways - your code editor. Maybe a terminal as well that you need to swap to occasionally. Having multiple monitors has limited benefits.
Where multiple monitors is helpful is if you're an operator - you are watching many dashboards at once to observe if things break or change. Traders for example will have workstations with 9 screens at once. But this makes sense - they are not focusing on one thing at a time, they need to quickly look at multiple things for anything unusual.
I've personally found that using a tiling WM gives me vastly more benefits than multiple monitors ever would. Although I was also pretty happy using Gnome's super-tab/super functionality during my non-tiling days.
4K is sort of a nice to have, but hardly a requirement. I'm as happy on a normal DPI screen as I am on a retina screen. Our brains adapt very quickly and unless the text is overly blurry (because of poor hinting implementations), a regular DPI screen is perfectly fine for coding on. My own personal preference is high refresh rates over anything else - I can't stand latency.
Since I used ebook readers with their displays, reading on a monitor is always a compromise in comparison.
Wouldn't want to go lower than 1080 though. It can work of course, but it just doesn't have to be.
I tried it for a while but I find virtual desktops cover my multi-tasking needs just fine.
When I had multiple displays the context switching involved in moving my head and focusing on the other displays wasn't great.
I guess if I was a designer it would make more sense but for coding what I have now works fine.
The author, Nikita, did exactly mention that point, mid page of the article under the heading of "Get a monitor".
Let me express an opinion. This is my blog, after all.
So yeah, opinionated piece, no big deal. And I happens to agree with him.1. Top-tier Macbook Pro 2. Portable Macbook (Air)
I used to have #1 with two large-ish monitors and I hated it. Two monitors are effectively a single 2xW monitor and that means moving your head from side to side constantly. Having them X inches above your keyboard means moving your head up and down (I touch type but need to look at the keyboard occasionally).
A laptop means a hi-res screen and a keyboard in close proximity. Instead of moving your head around you can use Spaces.
The second laptop can act as a second screen if you need it — as well as a coffee shop runner and a backup if your main machine is down or getting serviced.
It’s the same cost or less than a powerful laptop and two external monitors, assuming you are buying hi-res.
I’ll never go back to a 2-3 monitor setup.
I started developing neck pain, so I had to go back to one.
At least buying a 4k/120hz monitor is not painful to your body, only your wallet.
Personally I don’t mind a small UI so I currently just run (macOS) on 3840 × 2160 on two 24” LGs. With size 11 Fira this gives me 8 80char columns.
Everytime I read something like this I cringe. Ergonomics is terrible with laptops. There are no osha approved laptops.
Those developers should sit in a good chair, with a properly positioned keyboard monitor and body, and head off the problems their body will encounter. (or is encountered but ignored)
My ideal setup is two 1440p monitors, but even then I tend to zoom in quite a bit.
I also had a coworker who was fine with their laptop screen. People you are finicky with these kinds of things seem to have their focus elsewhere over the actual work done.
No, not universally. If I follow the advice and disable font smoothing, it looks worse than any font display I've ever used, including 8 bit home computers. https://i.imgur.com/Y0xkhTb.png
Being able to see more things >>>>>>> sharper text, once you're past 100dpi or so at least.
And first operating systems and unix core utils were most likely written using much simpler tools than what developers have today at their disposal.
But based on the replies, I am wrong and probably retarded ;)
So now I need a wider monitor. I was on an NEC 6FG until 2011 and then went to a small dell flat panel 1280x1024. I suppose it is time to join the 2020's.
I have multiple VNC and RemoteDesktops up at any moment, so maybe I'll really splurge and go for one of those fancy curved ones.
This article is written in a style i can really appreciate. That's a lot of research.
I upgraded from a 32" 1080p display to a 32qk500. A significant improvement in visual quality for a reasonable price (~USD$270)