212 comments

[ 2.0 ms ] story [ 246 ms ] thread
Too true. I’ve come to particularly dislike the way we design computing devices and interfaces. They ruin our bodies and require exceptions to accommodate people with different capabilities. And to afford those accommodations is a privilege many do not have access to.

The best thing we can do is spend less time in front of them.

> Too true. I’ve come to particularly dislike the way we design computing devices and interfaces. They ruin our bodies and require exceptions to accommodate people with different capabilities. And to afford those accommodations is a privilege many do not have access to.

> The best thing we can do is spend less time in front of them.

While I think this is great advice, the author of the article lost all credibility as soon as he mentioned a chiropractor

Same here - how they are allowed to continue to be a trade is beyond me. My friend is a neurosurgeon and has more than a few stories about times she's had to fix or more often, mitigate, damage done by chiropractors. But at the same time, nothing is done about other quacks like supplements, homeopathy, etc...
Be careful, if you get too close to supporting medical regulations and evidence-based medicine, you will awaken the crowd who thinks vaccines are poison and quacks should be allowed to sell ivermectin for every ailment. Surely Tim Ferris should be allowed to sell supplements because the free market is absolutely perfect (unless a member of the free market is deciding to enforce masks as a condition of entry or something).
I don't want to ban things like homeopathy and chiropractors but I have seen them attached to government hospitals in the UK. Chiropractic treatment should not be funded by the public.
At first I thought this would be about technical habits, but I’m glad it’s actually about longevity.
I do body weight exercises and stretch every day. They are easy to do during breaks from coding, and don't require any special equipment.

I am really fond of the L-sit as it works so many muscle groups and makes for a strong core. It's something you may have to work up to though.

I also meditate. It is great for concentration and overall well-being.

https://stretch15.com/ is nice low effort way to start stretching.

It was on HN few months ago and since then I do it almost every day. I've been going to the gym for a long time but proper stretching is something I never paid attention to.

As someone who has been feeling various back pains at the ripe old age of 25, I appreciate this article greatly.
I don’t know what happened, but a couple weeks ago, I was sitting on the couch when I suddenly had a sharp pain shoot through the right side of my body. It subsided after a few seconds, but for a week I had a persistent pain in my side, around my right rib cage and behind the shoulder blade.

At first I thought it was something really bad, like an organ issue. It hurt just to lay down in bed at night. Only thing that seemed to give any relief were really tense stretches. It ended up going away after that week, and at this point I assume I must have just pulled some muscle in a bad way, but I certainly didn’t think I was old enough to have back issues like that.

Sounds awful. I’ve done the same once, in college, reaching for a shower curtain. I genuinely thought I was too young to experience issues like that.

Could also be a nerve thing. Sometimes my upper back and shoulders compresses a nerve and it ends up shooting into my elbow.

I herniated a disc at 21 and that was just from bad posture, I was sitting on the couch as well and as I was getting up I felt a terribly electric pain shoot from my lower right back to my leg. It took years for it to be better and I’ve aggravated it several times. On one occasion the pain was so bad it requires a hospital trip, where their best advice was physio and to stay active. Rest and a sedentary lifestyle is disastrous if you’re prone to back injuries. Even now, although I’m very active, just sitting in the same spot for an hour triggers piriformis syndrome. Quite literally a pain in the ass that affects my hips.

I had all sorts of random pains throughout my back/arms. After I started climbing almost everything disappeared. Being forced to stretch your hands above your body a few days a week is probably healthy for a programmer.
> According to my chiropractor, sitting for long periods of time had led to my stomach and thigh muscles being relatively unused, and therefore unable to assist my back in supporting my body, putting it under extra strain.

This is reasonable - getting up often and walking or stretching is good for you. However I wouldn't rely on chiropractors for medical advice.

And you know … working out, lifting weights, walking for a while.
You need to work out or you'll turn into a potato that can't support your own upper body. You'll end up with all kinds of medical and joint issues.
Thanks for the tip. I think I used the wrong term in the post (now updated). I live in Japan and go to a 接骨院 which I assumed was chiropractor, but osteopath is probably a better translation. I should have researched before posting.
Understand, thanks for clarifying/updating.
Totally agree, either physical or mental health problems is the most dangerous risk we face. Doing or not doing something over a long period of time can have serious consequences.
I think there's on assumption being made here which ought to be challenged. Laptops are widely used, but they are not great coding environments. They were created to enable portability, but the way it mostly gets used promotes terrible habits, posture, handpositions, viewing angles, all of the above. If given a choice I would opt for a desktop and live with the portability restrictions it comes with. Of course it is an increasingly uncommon choice. The next best thing is to use the laptop docked but closed, and have separate peripherals: monitors, keyboard, mouse.
Yeah, I agee with the problems laptop use can create. I do use a decent laptop but use it as a desktop with eye level monitor and external keyboard attached. I found that positioning the keybord close to my body with a table height slightly above my sitting thighs such that the elbows are close to the body is the best ergonomics I could find and any back/neck/shoulder aches I used to get in my 20s and 30s have nearly vanished completely. My only problem is my butt getting tired of sitting on a chair and use it as an excuse to take breaks. Not sure if this position is universal, I did find it through experimentstion and I encourage evryone to test out various positions and to avoid using laptops for extended periods of time, it is really bad and could also create poor sitting habits that extend beyond the computer.
Laptops are actually kind of ok just not how people use them. ;)

Elevate & decoupled! Raise the screen. Use a Bluetooth keyboard. Stop staring down!

Ideally one can rig up a way to get the keyboard under the laptop. That's rough though, not always easy (some soda cans & cardboard... Where there's a will!). Often I end up with my laptop on my adventure pack and the keyboard in front (or on my lap). I used to just use tablet style 2-in-1's, which rock: the Tryone gooseneck arm (or many others) let's you hover the screen in really nice position, wherever you want.

I was pretty fine having a decently hidpi 11-12 inch screen positioned close in, but I have really wanted a bigger 2-in-1 I could work with. I miss 2013 when there was the bigger bigger bigger push for tablets: we are creeping back up, but the bold 18.4 beasts of that age were I hope only a bit too soon.

It all comea down to!:

> Improve your coding environment

There are many great options for a stand if you want to use the screen. My current setup: standing desk, external keyboard and trackpad, 2 monitors raised to comfortable viewing height, and laptop on stand where the screen is aligned with the larger monitors.
I don't understand why people insist on using more than one monitor.

Downsides: - Looking sideways is bad for your neck. - Looking from the one to the other and refocusing probably takes more time than using a shortcut key to switch between virtual desktops or something similar. - Consumes additional space, energy and money.

Upsides: - Looks cool and professional, I guess. - ??

I'm not expecting you to understand but I find it less disruptive to look to the side than switch windows or desktops.
The advantage of having two monitors is that I can look at two things at the same time.

I have my main monitor centered and my second off to the side. My browser mostly lives on my second monitor while my IDE lives on my main. I spend a large majority of my time looking at my center monitor, as I put my IDE there and also move my browser there when I need to look at it for any extended period of time.

In this case, I concur with the parent post. I probably have a browser window on every virtual desktop, but I also have a browser window that exists on all virtual desktops. In this case I could just access this browser window from the virtual desktop that contains my IDE.
I either want to look at 2 things at once, or I'm often only looking at one monitor at a time. Besides, my chair swivels lol. I'm certain the common posture of how many look at their phones (neck down, for many hours over the course of a day) is far more damaging to the neck than a 30 degree side turn.
> The next best thing is to use the laptop docked but closed

That's what I do, combined with a 64-thread/128GB build machine.

In fact, I'm so happy with my discontinued HP UltraSlim docks mounted vertically on the side of my desk/divider that I went to IT and special-ordered the last model that fit those docks. My new laptop is five years old. Worth it! :)

As someone whose desktop is showing its age and no longer games much, I'm curious about your build machine.

Do you have a physical build machine? Or in the cloud? And did you build it or order it from somewhere?

i have a similar setup with an amd threadripper thinkstation.
It's just a guess but this sounds like a physical machine with threadripper 3970x (128gb memory is the max it can handle without memory bandwidth contention) though I'm also curious about the details.
Physical machine, in a server room at Sony's Lund office. Custom order of several machines from Compliq, a small local shop.

It's a Threadripper-something, 128GB RAM, and nvme disks totaling 9-10 TB (plus a sata SSD for the OS, and maybe a big HDD for the mirror). I use btrfs' raid to join the repo disks, while others use other solutions (e.g. ext4 on top of mdraid). I also run btrfs compression, which saves a lot of space for very little cost (iirc, something like 1% extra time for a full Android build, but ymmv).

Most of us share the build machine with 1-3 other engineers, which is fine because we rarely need to make (big) builds at the same time. Android is not small, and having multiple copies of the complete history for multiple people would be impractical, so we have a custom git/repo mirroring solution that keeps our various checkouts from growing out of hand.

People use whatever tool they like to connect to the machine. I've seen remote desktop of some sort, xpra, mosh... Personally, I'm using ssh and screen, with some ssh_config aliases for quick access to specific product branches.

When it's time to flash a build to a device, rsync is great. I believe AOSP aims for hermetic/reproducible builds, which enables big speedups from rsync.

These port replicators are easily replaced by a monitor with a high-speed usb c hub now a days.

I have not needed one in years, power, peripherals, and networking all go through the single usb-c connection.

But I can't hang my laptop from a USB cable. :)
FWIW, I'm happy with IKEA Skådis pegboard (vertical, clamped to the desk surface) + magazine rack, holding laptop & thunderbolt dock. The dock means it's a single cable to unplug to take the laptop out. It's probably cheaper to get something off AliExpress, but being able to see the products in store to have a better idea if it would work was worth it for me.
> Don’t code late at night

Big disagree fore. For me, code comes much easier in the deep of the night. I can just write, and it's fine, where-as during the day I get distracted by side quests & perfectionism.

I think regularly of PKD writing I think in VALIS trilogy about the heat of the palm tree garden (of Eden), waves of heat making us languid. And then the night, the absence of god's light, humans unwatched, free, unburdened. The contrast has resonated with me for so long, the relief from pressures of the day, unburdened freedom. I feel it, I feel freer, as I code deeper into the night.

I think it might be better generalized as “don’t code for some daily period of extended downtime”, or even more generalized as “take one very long break between work days”. Even that won’t necessarily apply to everyone, but for most people it’s a more healthy habit than cranking for >10 hours a day or similar overwork.
What I love the most about coding at night is that I am more creative, and everything flows better.
I try to incorporate deadlifts into my workouts twice a week to prevent this.

Lower back pain is scary. During covid, when the gyms were closed, I couldn’t do deadlifts and felt the back pain coming. Thankfully everything opened up.

I also have a medical condition that has caused degenerative arthritis in the lower back. I find that if I'm seated in anything but an Aeron I can't remain seated for long. I suspect it's less the brand than the mesh with some give. However, since I know the brand, I happily spent the $1300 for my home setup. (I also sprung for an Uplift standing desk)
Deadlifts are the best, not just for the back benefits but for hand strength as well - my wrist pain is a distant memory now.
Ironically I hurt my back attempting dead lifts. Perhaps the form was poor
I'm hoping that a potential transition from monitors to AR glasses will substantially alleviate some of these issues.
I'm also hoping LLM burst enable reliable voice input for code.
I never liked the seated, sedentary nature of programming. Over time though, I've forced myself to take regular breaks, say every 10 minutes to straighten out my spine, and every 60 mins I go for a longish walk to clear my head and repair my back. Any hard problems or puzzles I encountered usually get solved when walking, as my brain is in a different state and can problem-solve better.

There are ergonomic items you can buy for a home-lab situation or maybe the office splurged out on Herman Miller chairs, but no amount of ergonomic items (Vertical Mouse etc) will solve the sitting down problem. You have to do pattern interrupts and frequent (reparative) breaks.

This is known to increase productivity. If you're in your twenties you can probably get away with long sessions sitting down without major issues, but over time, sitting /will/ affect you if you're not doing interrupts and exercising/repairing yourself.

What do you do, when you straighten out your spine? I mean in terms of movement, or do you just change your posture?
Basic yoga moves are fantastic for this.

Sun salutations with downward and upward dog. They also strengthen your core.

There are more moves in the Ashtanga sequence, whenever I do it I get a feeling of my discs being stretched and exercised like a rubber ball.

Stuart McGill recommends periodically standing and stretching your arms over your head a couple times. You can see the motion demonstrated here: https://m.youtube.com/watch?v=bcbuhePZZj0&t=459s

He also recommended doing the cat-cow from yoga, and there's a set of exercises referred to as the McGill big 3.

I've seen some positive references to the McKenzie method book, Treat Your Own Back. I haven't tried it specifically, but had good luck with their equivalent book for neck treatment.

One of the best back stretches that I've found is hanging from a pull-up bar (wall-mounted, removable door frame bar, power rack).

The recent version of Stretching[0] also has computer-specific stretches in it. I was recommended this book by a physical therapist and it's great.

[0]https://www.goodreads.com/en/book/show/561546

Not the original commenter, but I've started doing basic piriformis stretches. Even just the first one on this list has noticeably helped my back/sciatica pain.

https://health.clevelandclinic.org/piriformis-syndrome-stret...

I've added it as a goal in the Finch app, so I get a little dopamine reward when I do it.

Plus owning a dog helps too, getting regular exercise even if it's just walking.

> There are ergonomic items you can buy for a home-lab situation or maybe the office splurged out on Herman Miller chairs

I got a nice condition used Steelcase Leap v1 several months ago for about $120 and that thing has been an absolute godsend. Excellent for the back, adjusting the armrests to relieve pressure from shoulders, seat tilt, I can barely sit in other chairs for prolonged periods now lol

I've started doing this every time I complete a problem and close the browser windows or if I'm stuck.

I find that if I continue to sit after this it's often when the procrastination kicks in because I'm not sure what to do next.

Whereas if I start walking it kicks my brain into deciding what to do next or solving the problem I'm stuck on.

Keen to here whether anyone here uses a exercise/sitting ball at a desk as a way to improve posture?
Yea I’ve always been curious about those. Any time I’ve tried one out, I end up sitting all hunched over, so I’m obviously doing something wrong but wondering as well
Don't forget your hands! You don't think of programmers as "people who work with their hands", but we really are. (So are surgeons, by the way.)

I typed too hard for a few decades because I began on some really stiff keyboards. That has not been good for my fingers. You shouldn't hit keys harder than you need to, because if you multiply that by a few decades the impacts on your joints and tendons add up to damage. If your fingers hurt after a day of coding, pay attention.

Wrist angle matters. Carpal tunnel is no fun. (So far, I have been spared that.) Pay attention to strain on your wrists as you type. If there is some, think about your geometry, and how you can change it.

One of the things I despise about laptops is that their keyboards are too small for my hands. For serious work, I need a full-sized keyboard.

So when you think about ergonomics, don't forget your hands.

(And don't forget your eyes. Look away from the monitor to something at least 20 feet away, for at least 20 seconds, regularly. I forget what the recommendation is - every 20 minutes, or every 2 hours, or something. But regularly.)

I can recommend workrave. It reminds me to take breaks and propose stretching or looking further than the monitor.

https://workrave.org/

This article is pretty clueless, as most people.

Backbone is hugely supported by muscles. Slipped disc basically means there were no muscles to prevent it. Posture, healthy lifestyle etc is hugely irrelevant. Also typical exercise like running, lifting etc does not help.

As a developer, you should train torso muscles to protect your backbone. Pretty complicated regime, you need good personal trainer for that.

Are you saying deadlifts don’t train torso muscles?
No, I am saying it does not help typical developer. My personal opinion is that it is damaging joints (including spine discs). My trainer also does not recommend it. But I am not really qualified on this subject.
> No, I am saying it does not help typical developer.

What's a "typical developer"? If we are talking today then typical developer is just typical white-collar employee. I see many of those in my gym, some of them even use it correctly (that is they get in, do deadlifts, and get out =))

> My personal opinion is that it is damaging joints (including spine discs). My trainer also does not recommend it. But I am not really qualified on this subject.

Well you should get a second opinion. Obviously I don't know your personal history but for most "typical developers" if you get some coaching, use trap bar, don't go to failure or 1rm and don't use straps, it's super safe.

Squats and deadlifts are unequaled in terms of core strength development, and they are also some of the most natural human motions that any toddler naturally picks up as they learn to walk upright. I agree doing them with heavy weights can be risky for a typical sedentary adult, but they need not be feared. Performed correctly, the load goes into your muscles, not joints, but you have to learn how to engage your core muscles and maintain tension through the whole kinetic chain. The best way to do this is to get a knowledgeable coach and build up slowly starting with no weight until you have the basic movement and coordination well established.
I have suffered the same. The pain from the sciatica was unlike anything I had ever experienced. Excruciating doesn’t even begin to describe it.

The McKenzie exercises every morning since have undoubtedly helped my recovery. As has giving up running.

> laptop

The author buried the lede. Using a bare laptop all day will damage your health. To achieve an ergonomic posture [0], you have to be looking straight forward (or close to that) while your elbows are low and bent at an obtuse angle. This is impossible with a laptop, unless you basically turn it into a desktop by connecting it to an external keyboard, mouse, and monitor(s). Theoretically, you could use a laptop stand instead of an external monitor, but I've found that the letters on a laptop screen are small enough that they make me reflexively crane my neck forward.

Time spent using a laptop without external peripherals should be limited just like vibration and noise exposure is. You're always straining either your shoulders, your neck, or both.

It's surprising to me that the author is looking into niche products like sit-stand desks before having addressed the obvious problem that would be pointed out by any ergonomics resource on the Internet. It reminds me of the phrase, "don't major in the minors".

[0] https://www.nytimes.com/wirecutter/blog/7-things-you-need-fo...

I connect my ThinkPad P51 to two external monitors, an external trackpoing keyboard 2, and a logitech trackpad. It works perfect, and if i need to work on the road, I just disconnect it and take it with me.
Trackpads are horrible. Gives me way more strain than using a mouse, even though I have relatively small hands, I find the larger Logitech mice very comfortable in use. Currently using a MX Master 3, after switching from the original MX Master.

Before that I had frequently recurring tendonitis in my right index finger and various pains in my lower right arm. I still occasionally have issues, but nothing like when I used to use a trackpad.

I've never tried using an external trackpad. I suppose it could alleviate some of the issues, but I highly suspect my tendonitis would still come back.

> Has a thinkpad

> Uses an external trackpad

???

Why not just use the thinkpad with the lid half-open?

It's funny to me that you're calling sit stand desks niche and suggesting that it shouldn't be one of the first things to look at when the second item the wirecutter article talks about is a sit/stand desk.

Besides, standard external keyboards are not much more ergonomic than a laptop keyboard. They're typically only a little wider so the wrist placement is often still pretty bad.

An external screen at the right height is going to be far more impactful than the keyboard until you get into ergo keyboards.

While it's possible to use the laptop keyboard while looking at an external monitor, I don't think it's nearly as easy or beneficial as both an external monitor and a separate keyboard. The reason is because you're still going to use that screen, which leads to the original problem, or you won't use it and it gets in the way of the external monitor. Or even worse, you put it off to one side and the external monitor to the other side.

So even if that separate keyboard is no better ergonomically than the laptop keyboard, it's still highly recommended. And let's be honest, it's hard for a non-laptop keyboard to not be better to use at a desk than even some of the best laptop keyboards.

Not defending the other poster. Sit/stand desk shouldn't be the first adjustment you make, but it should be considered soon after the first.

I emphasize the same for my team: get an external monitor, get a separate separate keyboard & mouse, and then either setup the laptop at a good height to be just another monitor or leave it closed while connected to the dock. (We provide this in the office, but we only provide a laptop & dock when they work from home.)

> you won't use it and it gets in the way of the external monitor

Did this with a Thinkpad X1 for some weeks recently. Unexpectedly, no trouble at all: the laptop is small and flexible enough to not get in the way at all. Built-in keyboard was worse than my tried and true KB-06X, better than some of the keyboards I came across in the office — but most of the days I just don't type enough for that to be important. External monitor and mouse are crucial though.

> Unexpectedly, no trouble at all

Thanks for the feedback!

I haven't held an X1, but according to specs online, it looks like the top edge of the screen would be about 9-10" tall when open. Does that match yours?

I measured my desk setup, and the bottom edge of my monitors is 10" from the desktop. My work laptop overlaps the monitors by about 1" when open and placed in front.

I do like ThinkPad keyboards, and I use a trackpoint on my UHK. However, the open laptop screen would block things stored around my keyboard. I also hate the up-the-nose shot on video meetings from such a low webcam.

> I haven't held an X1, but according to specs online, it looks like the top edge of the screen would be about 9-10" tall when open. Does that match yours?

I think yes, more like 9". Don't have that laptop now to measure.

But I don't use a stacked setup, too short for that. Bottom of my monitor is now 4" from the desktop.

I just open the laptop to almost 180˚ (I meant this by "flexible enough") and then a modern wide 14" screen doesn't push the monitor stand too far or the keyboard too near — this part might be worse with a bigger laptop.

I didn't say that sit-stand desks are useless, I just think they aren't low-hanging fruit like external peripherals are. It's a sizeable piece of furniture, so you're looking at more money and more trouble than just buying an external monitor, for benefits that are more uncertain (not everyone is helped by standing while they work). I'm not sure what you're objecting to here.
(comment deleted)
The #1 thing that bothers me is that almost ALL desks are 30" height in the US. Completely unergonomic for anyone not 5'10" or taller.

For example, the Ikea FLISAT desk still fits my teen kids even though it's for smaller kids (TBH I actually find it comfortable to work on occasionally).

For my laptop, I do set my screen resolution much lower (doubled/retina) than my large monitor. Less real estate, but I don't have to squint when not using a monitor.

Isn't the chair + desk combo that matters? That is, can't you compensate the higher desk with adjusting the chair height or getting a taller chair?
Then your legs aren't being supported.
Or you just put a footrest there?
The legs of the desk chair spiral outwards, please let me know how that rest goes for you.
That depends on the chair.

And if the legs "spiral outwards" one can even rest their feet on the legs.

Mind blown?

That's only the case for people who are moderately short. The rest of us who have teen-length leg limbs need to put the chair all the way up to use a regular 30" tall desk, and at that point the legs are now too far away.
After 15 years of trying I have to say that it just doesn't work. Your sitting body is not at rest; you fidget, move around, your legs need to be planted so you can reposition easily...

So raising your chair and then putting a footrest seems logical but just doesn't work out unless you teach yourself how to adapt to it.

One of the best things about sit-stand desks isn't even the standing part, imo, it's being able to set the sitting height exactly where you want it. I have the same issue where most static desks are an inch or two higher than I'd like them to be.
Curious why you say vibration exposure should be avoided?
Vibration White Finger / Hand-Arm Vibration Syndrome. Not really a concern for the occasional DIYer, but it can definitely happen to people who use tools like the hammer drill for hours per day.
My oscillating multi-tool is great for working on the house, but just murders my carpel tunnel.
> To achieve an ergonomic posture [0], you have to be looking straight forward (or close to that) while your elbows are low and bent at an obtuse angle.

Curious: what about reading and writing posture? Traditionally, we look downward when reading and writing at a desk, rather than straight forward. Is that also non-ergonomic? I know that books can be supported up by a stand, but is there something for writing?

I'll be honest, I haven't done any research about the ergonomics of handwriting because I don't do it much anymore. I just know that when you're referencing paper documents while using a computer, a document holder is often recommended.
My experience is 180 degrees the opposite. Had RSI and shoulder/neck issues for years until I threw away the external mouse & keyboard and committed to using a laptop in a standing position with a large monitor on a stand right above and behind it, both screen tops angled back a little so I’m looking down at them. Standing, I can be stepped back a little which means I don’t have to angle my elbows out to the sides too much, and my wrists are straight and relaxed.

When I checked the Wirecutter link, I saw my setup (minus a chair) hits all the points. I can handle 8-12 hour days with frequent breaks.

(comment deleted)
Was your keyboard elevate, at an angle, or thick? With a flat keyboard and an ergonomic mouse I’ve never had pain.
Any regular mouse, ergonomic or not, gives me wrist issues. Switched to a trackball and it all went away. Some things just don’t work for some people.
If you’re sitting at a desk all day with a laptop you’re doing it wrong.

Laptops are made to be moved around. You can lounge on a couch, or lay in a bed, thinking of solutions and occasionally sneaking a nap – working while dreaming. You can carry it to the kitchen, typing some text and reading some words while preparing a sandwich. You can even sit for a while and stand when you’d like. Laptops are made for working in odd places in odd positions, the variety reduces the possibility of strain.

> Using a bare laptop all day will damage your health.

Do you have any references to support this? A NY Times article on posture, littered with affiliate links, is not it.

I am using only a laptop for the majority of my almost 10y career as a web developer, without any discomfort or pain, during or after. I've tried the "ergonomic setup" in many different variations and I always ended up with some pain, most often pain in wrist and lower arm, due to repeated movements between the keyboard and mouse/trackpad. Most important improvements for my setups were a good chair that allows shoulder and arm mobility (HM Embody) and a standing desk frame for precise height adjustment when sitting. And the macbook pro seems to have the perfect position of keyboard and trackpad so that I do not cause any strain on my wrists.

But our bodies are different so there is no single best way, health damage is a bold claim without supporting literature.

I don't understand how people use laptops for extended periods of time. The only comfortable way to use a laptop is with an external monitor, keyboard and mouse. The author talks about ergonomics but still uses a laptop. Laptops are for doing work on a plane or taking to a hotel room when traveling, not for being a daily driver in my book (at least not without peripherals). The keyboard on laptops is too close together, the screen is at the wrong height and angle. Trackpads are disastrous. Using a laptop for 8 hours feels like the day after running a marathon but without any of the good parts.
> Trackpads are disastrous.

Why do you say that? I know quite a few people who use an external trackpad with a desktop setup and they seem to do pretty well with it.

I don't know about an external one. But the standard track pad is in the center of the screen/keyboard layout and quite close to your body. Its non-ergonomic.
I’ve been using trackpad primarily with my thumb for about 6 years now. Obviously I have to use other fingers sometimes to scroll and drag though. I find a mouse slows me down when I have to take my hands off the keyboard to use the mouse. This is coming from a vim enthusiast (worth mentioning in this context since a big benefit of using vim is how much time is saved by not taking hands off the keyboard).
I use an external Apple trackpad and it's been a relief for my right arm, I only use a mouse for gaming anymore as game-specific muscle memory doesn't seem to translate well. It does feel very ergonomic to me, almost on par with a vertical mouse, but those are always too big for my hands.

I get why people wouldn't want to do that with Windows laptop trackpads though, not to speak of Linux, which seems to really struggle with trackpads.

I personally only use my Macbook Air unplugged for 90% of work which includes a lot of typing and reading. This works fine for me because the vast majority of the time I'm not on my desk - sometimes I'm on the couch next to the catering area, sometimes I'm on the bench on the balcony outside, sometimes I'm in a meeting room, sometimes I'm at a cafe outside, etc and I move around all the time. IMHO, moving often and taking stretch breaks trumps any benefits you would get from a fancy ergonomic setup.
Just a little thing but it would help a lot if terminal input lines were at the top of the screen by default.
pressing ctrl-L often helps with that
Quick question I like to ask to remote workers who have worked in office environments before:

Do you find your ergonomics are better or worse since switching to working at home? Or the same?

I've heard it both ways, but for me it's been harder to keep up healthy ergo habits at home. Not sure if it was peer pressure in the office that kept me using my standing desk better or what, but I definitely have slipped and my posture is noticeably worse lately.

At home I can fuck off on a walk whenever I want, or do calls walking, I have a nice standing desk, the food is always healthy, I can take a hot shower when my neck hurts or go on a run when fidgety, the chair is always set up correctly if I want to sit, there's nice window blinds against glare, there's a balcony to inhale fresh air and look in the distance...

Whereas office means trains, so cramped seating and touching a laptop, or driving a car thru obnoxious traffic jams. I think WFH is much healthier for me.

Ah, the commute may be the thing I'm not accounting for. My last office jobs were about a mile walk from my apartment, so I actually got more movement and fresh air as part of my daily routine. Agreed that car and train time seem less than ideal.
Weirdly I don't seem to have the two main problems that coders report: back pain and hand/wrist pain.

I always keep a straight posture. Either I'm standing, or I'm sitting with my back straight. I make sure I don't slouch, because that's what causes pain. Used to feel natural to slouch, but now it feels natural to puff my chest out. Also, walking on a treadmill while reading makes it impossible to slouch.

With my wrists, I'm not sure I get it. Surely people are not actually typing all the time? I spend a lot of time looking at the code by using the touchpad. A lot of slidey-two-fingers to scroll the text. But also I hardly type much when coding. I type in something, let smart complete fill in the line, hit tab. But it's not even that much text to type in. Most of the work is looking at things and thinking. Perhaps it's the height of the table, I have a movey-up-down table that I adjust so I'm not uncomfortable. But basically I never have wrist pain, whether I'm standing or sitting.

Some people are certainly more predisposed to things than others.
I stopped having back pain when I started working out. Hand pain I don’t actually get from typing, but trackpad use is rough. I use a mouse now and it’s much better.
I've found some wrist stretches from yoga practices that have helped after a day of too much trackpad use, but I agree avoiding it as much as possible is better. If you have to use a laptop frequently, getting used to doing everything by keyboard will save your wrists some work.
I've had both.

The back pain was instigated by moving, driving across the country, helping someone out with yard work slinging rock, and then going for a post-thanksgiving run, which broke this camel's back. Lumbar shaping is very, very important for the lower spine. You can do it with muscles, or you can do it with things. I used a 10 dollar IKEA chair + grippy bottom + a rolled towel. You roll the towel until it's the right size to create a slight arch. No rulers or drill sergeants necessary. It's also important to note that the drive to/from work is doing just as much damage as being at work, so using the towel in the driver's seat is a godsend.

The wrist pain was instigated by working on a laptop during a 1+hr train commute. I kind of looked like Groot (Despicable Me) prancing around, minus the prancing. I tried pretty much everything, but what stuck was the Evoluent mouse. It allows you to use the mouse without arm pronation (pronation forces the carpal region into a binding/constricted position). It's ~100 bucks but a single doctors visit costs more than that.

Happy coding.

> I make sure I don't slouch, because that's what causes pain

For you? It doesn't for me.

I am using the Herman Miller Embody and Envelop desk with a foot rest. Being able to pull the desk in/out, switching between reclined / upright, etc.. is great for varying seating positions throughout the day.
I have a very similar issue and likely the same cause. What has helped for me: Cortisone shots (temporarily relief but not a fix), losing weight, core strengthening activities and switching to a standing desk 100% of the time. YMMV. 43yr old male, lifelong developer.
For me the best option is a floor desk. I found sitting on the floor challenging at the beginning. I even had to re-learn how to get down to and up from the floor properly. But with time (and yoga/stretching exercises) my core has gotten stronger and my joints feel great and I can withstand any amount of time sitting on the floor. I'd say the amount of times you get down and up count as mild exercise. I have had no back or any other kind of pain whatsoever, even after longer sessions. A great thing is that you keep changing posture naturally and you have many more ways you can sit or squat on the floor than on a chair. I don't see this mentioned often, but to me it makes a lot of sense. Children prefer sitting on the floor (they haven't experienced any mobility loss yet), hunter-gatherer tribes sit on the floor for most of the day [0], older people in Japan (and other cultures) sit on the floor without much problem, etc., just to mention some examples.

[0] https://www.huffingtonpost.co.uk/entry/sitting-all-day-bad-f...

Do you sit on cushion or mat? Or just on the floor directly. And are you sitting cross legged or some other method?
No mat or cushion for me, I've come to appreciate the grounding feeling of sitting on hard wooden floors. I sit in as many positions as I can come up with and alternate between them almost unconsciously now. In a few months of using the floor desk I went from thinking myself unable to sit in half lotus to actually finding that position very comfortable. Some examples of floor sitting postures:

https://news.ycombinator.com/item?id=32131303

https://www.pinterest.co.uk/pin/813533120161288900/

I use a laptop either directly on the floor or on top of a small table or elevated surface. You can of course also add a monitor, wireless keyboard with touchpad, etc., and that gives you plenty of new posture options.

Alas, too late. Add half our walks after lunch and diner, in addition to the other habits mentioned.