Ask HN: Why do many developers use laptops like desktops?

10 points by neverminder ↗ HN
So I've been looking to switch jobs and been talking to some (software development) companies. This is what strikes me as a surprise - many of these shops use laptops exclusively. From talking to them more it turns out they don't really move around that much and effectively use their laptops as desktops. I am used to heavy duty gear (dual 4K 27 inch displays, top of the line CPU, 32GB+ RAM, comfy peripherals, etc) - I have pretty much identical setup at work and at home. I also have an ultrabook in case I need to be mobile (doesn't happen often). Am I missing something here?

19 comments

[ 3.4 ms ] story [ 52.7 ms ] thread
I hate them, but it's easier from a configuration management standpoint and from an IT management standpoint. They're easier to move around, easier to treat as disposables and just replace if they go bad, etc.

Again, not a fan myself but I see the same thing happening where I've worked in the past. If your developers aren't actually building complex applications on their local computers it doesn't make much difference I guess, but I'm with you -- give me a desktop with dual 27's (they do external monitors with the laptops usually though) and I'll be happy.

You don't need a bunch of processing power to type a text file.
It is the pain of replicating the same setup in both machines.

I used a desktop machine and a laptop. Whenever I have to move, I have to replicate the repos and the setup on my laptop.

I prefer to do throw all that I can on laptop. I remote access the desktop when my laptop fails or when I need a long running process. Whenever I need, I connect the display to my laptop. I am quite comfortable with my laptop's keyboard. If I am not, I just connect other peripherals directly to my laptop too.

Granted, now I have a T470 with 24Gb RAM. So this setup works fine. Previously when I had an old T410, I relied heavily on the desktop. So there's that.

Also, now, with a laptop, it is much easier to make employees take home their work, I suppose.

I can only use a laptop if they are connected to huge monitors, and an external keyboard/mouse. Otherwise I have to squint and type awkwardly. If they dont allow external monitors, that would be a huge dealbreaker for me.
The danish version of OSHA requires (or used to required) an external moniotor + keyboard if you used a laptop at any location for more than 2 hours, precisely because it has horrible ergonomics.
Laptops have terrible ergonomics. If you want to have the (small) screen at eye level, then the keyboard is not at a good height. If the keyboard is at the right height, then you have to look downwards to look at the screen.

At work, I have a laptop which is attached to a docking station which has a proper keybaord and two monitors connected to it. I almost never take it out of the docking station. I asked for a desktop but the official policy is to only hand people laptops.

It depends on how often "need to be mobile" and what you want to do while mobile happens. For me it is at least a few times per week that I want to take my laptop to a meeting, client demo, finish up some work from home, on flights, and so on.

A desktop + ultrabook would be cheaper and easier to carry around - but the hassle of keeping them in sync is too much. Everything from Homebrew package versions to keyboard mappings in different IDEs to browser login cookies. A beefy laptop that stays connected to a dock 95% of the time avoids all that.

I've used laptops hooked up to docking stations for years. It makes it really easy to grab and go for meetings, for travel, or to bring it home with you.

There isn't much of a reason for a desktop unless you really need the extra power. Depending on what type of development you do, this may or may not be a requirement.

There is a culture thing about MacBook Pro's being used by developers. The latest round of MBP has a pretty horrible keyboard experience, so home or at the office, I have it hooked up to monitor, keyboard and mouse. When I had a previous gen MBP, I used that as screen-1 plus keyboard.

I'd venture a guess that 95% of developers (myself included) don't need the horsepower a desktop could provide. I would have to try hard to utilize all the resources on a laptop too.

At least for me, I like having a single computer so I don't have to put any effort in keeping two computers synced. Modern laptops can be 4+ core, 16GB+ RAM, and can handle a lot. At my last job I had this monstrous HP "workstation" laptop and I used the size/weight as an excuse to never take it home. But it was useful to be able to carry it to presentations and meetings.

Every place I've worked in the last 8 years has provided a docking station and external monitor(s)/keyboard/mouse, etc. Apart from fan noise, it doesn't feel any different from a desktop.

At my last workplace there were a few business folks who used their 14" laptop keyboard and monitor and never used the company provided peripherals. I can't understand that at all, but everybody has their preferences. If a company expected me to only use a laptop screen I think I'd strongly consider not accepting the job offer!

It really boils down to the fact that most devs don't need the horsepower that desktops provide.

A laptop can connect to 27 inch (4k monitors), your prefered keyboard/mouse setup. It also comes with a slick integrated uninterruptible power supply (ie the built in battery).

Need to go on a business trip? Undock it. Need to take some work home? Undock it. Want to show a colleague in another building what your working on? Undock it.

If you had a dual computer setup (Desktop and Laptop), you're now in charge of making sure state/configs is mirrored across the devices. I've wasted hours of productivity from this issue. Drove to coffee shop 30 minutes away. Forgot to git push the repo on my desktop. Drove back, git push, Drove back. 1.5 hours wasted...

For 95% of use cases, laptops are pretty hard to beat. The outliers are AI/ML workloads, serious video editing, CAE software etc. Basically anything, where long-term steady state thermal management would become an issue.

I kinda wish the Macbook or Thinkpad-lines would support dockable compute, in a slick way. I know E-GPUs are a thing. But still find the packaging clunky. On the road (4 core i7, 16 GB RAM). Docked? Now it becomes Dual-xenon-like with 64 gb ram, 2x gpu. All state would live on the laptop. A pipedream? Yes.

But for using an IDE to write Javascript, Python, C++. A post-2012 laptop typically has the horsepower. I'm currently rocking a T430. I just wish it had a 4k touchscreen. Then it would be perfect.

So that I can carry my machine into meetings without stopping my work or having to install stuff on multiple machines, remote in to give a demo, etc.

My setup is similar to yours except I need to be mobile ~15 times per week. It also simplifies WFH, coffee shops, etc.

dual 4K 27 inch displays, top of the line CPU, 32GB+ RAM, comfy peripherals, etc

For what it's worth, you can easily match those specs with laptops these days.

I guess what it boils down to is that most companies only want to give each person one computer and consider the value of their workers being able to take that computers with them somewhere (even if they only need that once a month or less) to be worth paying a premium for.

Heavy lifting is done on the cloud. I develop web and ML stuff on a tMBP. Prototyping is done offline and the large-scale training of models is done on the cloud. My laptop is lightweight enough to put in my backpack and still leave space for groceries bought on the way home. Have a 4K display and Windows US desktop keyboard (as UK Mac keyboards are close enough to a US keyboard) and mouse. I never use split-screen as I am used to window-switching on a 13" screen.
I would like to have both .. but only got a laptop .. :-/
Well, in my case, it's often because I think I'll use it like a laptop when I buy the machine, then slowly stop bringing it anywhere/using it away from a desk or table. I guess you could say the use case changes after the first few weeks or months.

But that's just the personal reason. There are probably a fair few business reasons for it too.

Less heat, easier to move desk.
I'm DevOps. I travel to data centres, meetings, India, London, etc - it's handy to have my exact machine with me at all times. My desk at work replicates my desk at home, twin monitors on an arm setup, where my laptop sits central underneath them, with a keyboard in front of it. Works perfect for me and I've never found myself wanting a desktop. I have a v. powerful gaming PC but rarely use it other than to play Rocket League...
One big advantage is in working from home: if you have a laptop you can just take it home and there is your dev environment exactly as it was setup at work.

Also while I desktop at work, I have a P51 at home, which I am typing this on. It is connected to an external mouse and keyboard, plus two external screens (I have no 4k screens, but it does have a real graphics card so it could pull them if I had any). It has a 4 core i7, and 32gb of ram, so you don't necesarily have to compromise if you only occasionally need portability (it is absolutely no ultra-portable).