Finally bailed Windows this year after a lifetime of MSVC, couldn't be happier with the decision. I'm actually kind of grateful for Windows 11 being so impossibly shit and forcing so many people to finally make the switch! Now I use Arch, btw.
I recently moved from many many years on Windows to full time on Linux for my bare metal embedded development, largely because of ST Micro's good Linux support with their tools.
Somewhat reluctantly, VS Code; but I'm checking out CLion as well and not hating it as much as I did last time.
I find CMake intensely offensive, just the whole worldview of every tool demanding you learn some DSL to do basic things when I have a 4K monitor and just want to select a bunch of cpp and h files to build, but I've since been forced to swallow this bitter pill for work reasons, and I guess it's time to give tools based on it another go.
I never found anything better than the latest macOS machines. I ran ubuntu for years and then switched back to mac just because I don't have the time to tinker and fiddle with stuff in Linux that just randomly makes the computer run hot, or a monitor to not work, or fonts looking awful.
MacOS is just the sweet spot of great desktop + great unix-style devbox.
I agree with this in general, but the major downside of macOS is it obsoletes itself quickly unless you are willing to keep spending money and staying on Apple's hardware/OS/Xcode treadmill.
On my Debian or Ubuntu dev systems, even with 10+ year old hardware, I'm always one apt dist-upgrade away from having one of the best development environments in the world. On macOS, once my hardware gets "old enough" (as defined by Apple), I'm left in the dust. No more OS updates, no more Xcode versions, no more SDKs. I can shore up some development capabilities using Homebrew, but Homebrew itself perpetuates[1] the treadmill.
I ran MacOS for decades and then switched to Linux, because I no longer have the patience to deal with an OS which cannot be tinkered and fiddled into the shape I prefer it in, its makers believing that they know better than I do what I ought to be doing with my own hardware. I cannot stand the paternalism. Linux has its quirks, but at least I can be sure that in the end, it can always be made to do what I want.
Every time I'm forced to use MacOS again, its worse than the last time. Everything feels like a bolted on afterthought in an OS that forces Apple's opinions on everything. My productivtiy is ruined trying to do things the Apple way, instead of the way that works best for me.
No thanks, I'll stick with Linux, where I can tinker to have the OS work the way that is best for me, instead of what Apple thinks is best for me.
This is a valid concern. Perhaps, if you are still interested in giving Linux a chance, you should consider immutable distributions like Fedora Silverblue or even going one step further with NixOS.
NixOS has a declarative configuration that is simply key=value for most use cases. Whatever you configure stays configured, and you can also rollback when doing dramatic changes e.g, migrating from Xorg to Wayland takes 2 min and changing 1 LOC in your configuration.
On top of that I've been locked out of my machine and Apple ID and they just kept sending me emails that in some weeks they were going to reset my password, and they sent me those emails for 2 months before I got access to my apple id and machine again, proof[1].
They just kept not obliging the "2 weeks" (which is already mad when I've given you my secret password and I've verified my email and phone already).
And they did not respect the two weeks 3 times in a row!
That is beyond disgusting and Apple has never got a single $ from me since, I only own a MBP I use on the move because a client has sent me an M3 Max with 48 GBs so it made no sense to at least not use it.
I'd love to use macOS, but macOS's font rendering on low DPI monitors (2560x1440) looks awful compared to Windows's font rendering. It's to the point that it's unusable for coding, so I just use Windows with WSL.
My current project uses a cross-platform SDK. My most comfortable development platform is macOS, and that's what I use 90% of the time on this project. Occasionally I work on embedded android systems. For that I use Linux. If I'm on a consulting job and the client has everyone using Windows, I go with the flow, but my impression is that Windows has become end-user hostile, and it's getting worse. Maybe that's just because my permissions and network access are never set right on the first try when a client needs a machine set up for an outside consultant. Subjectively, Windows is the itchy sweater of development platforms.
Not sure this covers popular mixes, eg WSL or considers AI clients.
My IDE is Windows (VSCode or Cursor); but I'm also using ChatGPT in the browser and various Linux command line tools (connecting through Windows Terminal to WSL Redhat).
There should probably be a fully hybrid option in the poll.
I wouldn't consider Chrome the "operating system" that I am primarily developing on, even though it is really the VM under the hood. Windows is really the one facilitating running the Chrome application, or the Linux WSL application.
To be way too pedantic, if WSL2 (and therefore Hyper-V) is enabled then Windows actually boots into bare-metal Hyper-V first, which then launches the Windows kernel as a VM under itself, side-by-side with the WSL2 VMs if any are installed, so if the lowest level facilitator is what counts then you're really developing "on Hyper-V". I don't think that's a very useful distinction though.
I mean, that's a debatable definition, one could agree or not.
I program on Windows + WSL 2 e.g. and I have no idea how to develop on windows and barely used powershell in my life, but I know the ins and outs of Linux.
I'm not saying you're wrong and I'm right, I'm merely stating that we have different definitions and AFAICT there's no ISO standard saying what qualifies as developing on Linux and what not.
The question is not about booting, it's about which OS is running the environment where development happens (writing code, compiling code, testing code, etc).
> Clarification: the operating system where e.g. your IDE runs on
If you're developing on a Linux VM that you connect to via a browser tab opened from your Windows laptop, you're developing on Linux for all intents and purposes.
That is, Windows was not doing enough for you so you switched to Linux for dev tasks.
By the same token, if your IDE is running in WSL, for all intents and purposes you're developing on Linux. A virtual machine, sure, but the virtualized OS is a Linux variant. Because installing the IDE on Windows itself was not doing enough for you.
I guess it depends on what you do. I do python, rust, and web frontend in Windows. I have a personal bias against Docker, which'd otherwise be the primary WSL draw for me since if I want/need Linux, I can SSH into the majority of the machines in my house.
I'll throw out my unpopular opinion/experience here, too: I haven't liked any "desktop experience" I've seen or used for a Linux distro, and they all look and feel very similar to me: foreign, basic, and difficult for me to tweak and produce with. I greatly dislike the React stuff both on the web and in Windows, and use Classic Shell, which I'm satisfied with. Windows is easy to customize and almost everything can be tailored without even needing a reboot, many even with registry options already made and just waiting for a bit to be flipped.
It helps my puny, smooth brain, too, to just think of Windows being graphical and Linux being text-based; helps me remember what I'm doing.
Cloud based development and browser hosted environments would certainly be worth measuring. I imagine the numbers are tiny compared to other platforms.
Arduino IDE probably counts as something with decent numbers. Wokwi also makes for an interesting candidate in that area.
Linux for many years. Windows and Mac feels the same to me: they are not configurable enough. You just use almost default setup or you are out of luck.
Used to be Windows, but Linux being able to run Docker containers without emulation is a killer feature for me (I am primarily developing backends that also run on Linux). Even if the driver issues are still really annoying.
My development is on Linux. Some of my work has to run on Windows as well; VirtualBox has several Windows VMs, a ReactOS VM, and Wine for testing.
I've never had to deal with the BSDs or Macs. If a customer was willing to pay for me to come up to speed on either of them I would consider it, but I have no interest otherwise.
I am slowly coming up to speed on Haiku, and now that most of my application and development software runs on Haiku and its hardware compatibility is much better, I'm looking to eventually move from Linux to Haiku for my primary workstation.
22 years in the same Corp, targeting Linux systems since day one, and only in the first two years, and this year, have I been permitted a Linux desktop.
+2 years slugging in a vm.
Developing with out bash is just unnecessary work.
My productivity has more than doubled. easily. I manually type passwords half as much and when I do that is to access Microsoft services.
LXC containers on top of Debian in a specific work station just for this. I have one generic container to start everything, and then create specific ones if projects get bigger.
This is by far the best option to isolate and easily create development environments that I found.
I connect to the containers from VS Code running on Mac OS.
Old enough to remember when work place mandated Windows machines were common place - now it feels like things have flipped in software dev, and macOS has become the "workOS". While no fan of Windows, I now find in my older age I am much less inclined to run Macs for personal/home use than I was 20 years ago - it feels too much like being at work now!
While I of course agree modern Mac laptops are great and Apple's silicon efforts have been superb, just seeing one makes me think of work and not pleasure now, somewhat ironically how I also felt about beige IBM boxes in the early 90s...
I'm surprised at the small number of Windows users. At my workplace every computer has Windows installed and we didn't really have a choice about it, although I never asked. Also, as a fullstack web developer, I don't really see why I would prefer one over the other, since they all support VSCode and I can write code on any one of them. But then again, I exist inside of an echochamber of Windows users so I'm pretty clueless on how development is different on other OSs.
I was surprised in the opposite direction - I thought Windows would be <5% for dev. Big, cheap contracting agencies skew the Windows number up globally, and even just in the US, but this is just HN users so I expected a much smaller representation.
Pleasantly happy and surprised by Linux after many years. I'm not happy with the insidious lock-in that Apple and Microsoft engage in. When I'm developing I need the machine to be by own, and only a few distros provide that. I do wish to try kde though because it receives a lot of praise but just can't figure out which distro is the sweet spot, allowing for games, but good package management too.
I think laptop of your choice as a thin client to Linux box in a data center is super common.
Most people seem to pick a Mac as their thin client, since ssh works well natively on it, it runs MS office, and the Windows laptop options are never the “nice” Windows options for some reason, but various flavors of plastic hate boxes that get 1/2 the battery life of the Macs IT offers.
I'm happy to do this as all I need is a vi-like, but I don't really see this happening from people in the IDE camp. I understand that VS Code does support development in a target linux host or container, but I just don't really see people doing it.
Firmware build times can be comically bad. Most firmware builds are heavily optimized and you often build the same codebase dozens of times with each build optimized for one particular hardware configuration of many. You then get to deploy to a legion of test devices (also managed by machines you remoting into) and see which special snowflake you managed to break this time (it somehow is never the one you sanity checked your changes on during development :-D).
It's common to throw (a lot) of compute at the problem, and at some point it's way nicer if the 100+ cores you're cranking to 100% CPU for a few min are somewhere you're not sitting next to. It's also nice that those resources can be shared among many devs so they don't sit idle most of the time.
So, you end up with the thin client pattern. It's usually practical to build locally as well for a few particular targets, which might be a random dev board at your desk. But if I have a remote build system with a few hundred cores cores and a few dozen TB of ram, why would I not just use it instead of using my laptop?
Athough firmware and hardware is such a huge, varied field many people likely have different experiences. Brining up a big custom SoC is way different than bringing up a board with an FPGA and all off-the-shelf stuff.
What's "far more than ssh to some remote server" mean to you? It's always fascinating how different everyone's experiences are.
I have to develop on Windows for work and then code on a Mac for my own projects at home. Going from a project on my Mac Studio at home to my Windows PC at work makes me want to tear my eyes out.
There are so many things that are just plain worse on Windows when it comes to coding: messing with WSL, constant driver updates, every Windows link opening in Edge etc.
Haven't tried Linux for a while but maybe it's time.
Firefox on Linux, though, is not working very well. It keeps hanging during long typing inputs. No CPU or disk usage, just stuck. And it uses so much memory that the OOM killer sometimes kills it.
I was never a Linux fanatic. It's just that I considered an operating system with ads unacceptable. I rather liked Windows 7.
I went from Windows to a VM running Ubuntu, to WSL, to a Mac. Each switch felt like a massive upgrade and I haven't looked back. I'm new to macs and I hear veterans complaining about the quality of the OS but compared to Windows which was adding ads in their search bars at the time I left... I guess I've just been conditioned to have a low bar
I'd prefer to run Linux, but one of my two primary dev targets requires a proprietary Windows IDE (Automation Studio by B&R). So running that on Windows then using WSL to develop for my Linux servers is the easy path.
Asahi Linux with Kate (editor) & Fossil (scm). - No idea why I wasted so much time switching away from macos. It feels like my computer belongs to me again. 'It just works better'
I think it's possible we see some people now use other OSes, there should at least be an "Other" option. The *BSD's, Nix and some more bespoke options.
have been using linux ever since i got my first personal computer.
our customers all run linux in production too, so it's very easy and natural to develop and test the software in its usual environment (although i wish my laptop had eight times the ram to match).
Mac Mini M4 or Macbook Air M4 is not expensive. Just bought the latter (extensive rebates at the moment) to replace my Intel-based 2019 MPB. Wow! It's pretty much the perfect laptop, at that price.
My primary complaint so far: The green color LED on the magsafe connector is not the same green as the LED on the caps lock key. This wouldn't have passed the Steve Jobs approval.
I need to give Omarchy and Hyprland a real try at some point. I love the idea of a tiling window manager. I just haven't used one in 10 years and it's a big adjustment to classic window management.
macOS, but mostly for the hardware. The operating system matters less to me than having a good screen and a machine that isn’t made of crappy plastic. After nearly 20 years years on a MacBook Pro, it’s hard to go back to anything that feels cheap. =P
If your editor is full screen, and you have a terminal emulator to build, test, and run, does an OS actually matter these days?
VS Code is good enough for 90% of grunt work, and Emacs will give you 110% more, but at the end of the day, you live in your editor not your OS (or maybe it’s just me).
Finally bailed Windows this year after a lifetime of MSVC, couldn't be happier with the decision. I'm actually kind of grateful for Windows 11 being so impossibly shit and forcing so many people to finally make the switch! Now I use Arch, btw.
I recently moved from many many years on Windows to full time on Linux for my bare metal embedded development, largely because of ST Micro's good Linux support with their tools.
Mind me asking what do you use instead of MSVC?
Somewhat reluctantly, VS Code; but I'm checking out CLion as well and not hating it as much as I did last time.
I find CMake intensely offensive, just the whole worldview of every tool demanding you learn some DSL to do basic things when I have a 4K monitor and just want to select a bunch of cpp and h files to build, but I've since been forced to swallow this bitter pill for work reasons, and I guess it's time to give tools based on it another go.
I never found anything better than the latest macOS machines. I ran ubuntu for years and then switched back to mac just because I don't have the time to tinker and fiddle with stuff in Linux that just randomly makes the computer run hot, or a monitor to not work, or fonts looking awful.
MacOS is just the sweet spot of great desktop + great unix-style devbox.
I agree with this in general, but the major downside of macOS is it obsoletes itself quickly unless you are willing to keep spending money and staying on Apple's hardware/OS/Xcode treadmill.
On my Debian or Ubuntu dev systems, even with 10+ year old hardware, I'm always one apt dist-upgrade away from having one of the best development environments in the world. On macOS, once my hardware gets "old enough" (as defined by Apple), I'm left in the dust. No more OS updates, no more Xcode versions, no more SDKs. I can shore up some development capabilities using Homebrew, but Homebrew itself perpetuates[1] the treadmill.
1: https://docs.brew.sh/Support-Tiers
I ran MacOS for decades and then switched to Linux, because I no longer have the patience to deal with an OS which cannot be tinkered and fiddled into the shape I prefer it in, its makers believing that they know better than I do what I ought to be doing with my own hardware. I cannot stand the paternalism. Linux has its quirks, but at least I can be sure that in the end, it can always be made to do what I want.
except sleep then hibernate on lid close of most laptops, it seems.
Every time I'm forced to use MacOS again, its worse than the last time. Everything feels like a bolted on afterthought in an OS that forces Apple's opinions on everything. My productivtiy is ruined trying to do things the Apple way, instead of the way that works best for me.
No thanks, I'll stick with Linux, where I can tinker to have the OS work the way that is best for me, instead of what Apple thinks is best for me.
This is a valid concern. Perhaps, if you are still interested in giving Linux a chance, you should consider immutable distributions like Fedora Silverblue or even going one step further with NixOS.
NixOS has a declarative configuration that is simply key=value for most use cases. Whatever you configure stays configured, and you can also rollback when doing dramatic changes e.g, migrating from Xorg to Wayland takes 2 min and changing 1 LOC in your configuration.
>I never found anything better than the latest macOS machines.
Me too, but Tahoe is hideous. I hope they revert back to something sensible, or I'm going to move to Linux full time.
Yeah, I run macos for the same reason.
However, I went back to linux on my personal laptop (nixos on my case) and I am pleasantly surprised how many things now just work.
The only thing that still annoys me is the laptop not sleeping properly and therefore using too much battery power when idle.
It has made great strides on the last two or so years.
UX' been degrading on MacOS for ages.
On top of that I've been locked out of my machine and Apple ID and they just kept sending me emails that in some weeks they were going to reset my password, and they sent me those emails for 2 months before I got access to my apple id and machine again, proof[1].
They just kept not obliging the "2 weeks" (which is already mad when I've given you my secret password and I've verified my email and phone already).
And they did not respect the two weeks 3 times in a row!
That is beyond disgusting and Apple has never got a single $ from me since, I only own a MBP I use on the move because a client has sent me an M3 Max with 48 GBs so it made no sense to at least not use it.
[1] https://i.imgur.com/9OYvKu5.png
On my work Mac, I'm not even logged into iCloud so there's no Apple ID there.
You still need it if you need to format and restart your machine if it was registered with that id.
I have never had an Apple ID on this Mac either, having restarted it successfully many times.
And if I need to format it, it's not even my problem.
[dead]
I'd love to use macOS, but macOS's font rendering on low DPI monitors (2560x1440) looks awful compared to Windows's font rendering. It's to the point that it's unusable for coding, so I just use Windows with WSL.
My 30-inch 2560x1440 external monitor looked fuzzy/blurry on MacOS until I forced HiDPI. (Mac mini)
MacOS only offers HiDPI for certain resolutions. There is a free OSS program that unlocks HiDPI for other resolutions: https://github.com/waydabber/BetterDisplay
I just tried disabling HiDPI at 2560x1440, and it looks quite bad! With HiDPI, I'd say it looks similar (if not better) than Windows.
My current project uses a cross-platform SDK. My most comfortable development platform is macOS, and that's what I use 90% of the time on this project. Occasionally I work on embedded android systems. For that I use Linux. If I'm on a consulting job and the client has everyone using Windows, I go with the flow, but my impression is that Windows has become end-user hostile, and it's getting worse. Maybe that's just because my permissions and network access are never set right on the first try when a client needs a machine set up for an outside consultant. Subjectively, Windows is the itchy sweater of development platforms.
Not sure this covers popular mixes, eg WSL or considers AI clients.
My IDE is Windows (VSCode or Cursor); but I'm also using ChatGPT in the browser and various Linux command line tools (connecting through Windows Terminal to WSL Redhat).
There should probably be a fully hybrid option in the poll.
It does, if you use WSL you're OS is Windows.
But he's de facto developing on a Linux machine.
It's not a linux machine. The computer is booted and managed by Windows. Linux is an application running on the Windows machine.
WSL2 is a full blown Linux VM under the hood, running a real Linux distro and real Linux kernel. It's Linux in every way that matters.
Yes, but the poll is specifically about the system your IDE runs on. Most WSL users are running their IDE in Windows.
I wouldn't consider Chrome the "operating system" that I am primarily developing on, even though it is really the VM under the hood. Windows is really the one facilitating running the Chrome application, or the Linux WSL application.
To be way too pedantic, if WSL2 (and therefore Hyper-V) is enabled then Windows actually boots into bare-metal Hyper-V first, which then launches the Windows kernel as a VM under itself, side-by-side with the WSL2 VMs if any are installed, so if the lowest level facilitator is what counts then you're really developing "on Hyper-V". I don't think that's a very useful distinction though.
Hyper-V is windows, just stripped down to be a supervisor OS, but same kernel bits. So, still Windows.
Well I'm extremely pedantic, so I'm going to say that UEFI is the real operating system!
it is a Linux environment (Windows is just a host – could be anything, really)
I mean, that's a debatable definition, one could agree or not.
I program on Windows + WSL 2 e.g. and I have no idea how to develop on windows and barely used powershell in my life, but I know the ins and outs of Linux.
I'm not saying you're wrong and I'm right, I'm merely stating that we have different definitions and AFAICT there's no ISO standard saying what qualifies as developing on Linux and what not.
The question is not about booting, it's about which OS is running the environment where development happens (writing code, compiling code, testing code, etc).
> Clarification: the operating system where e.g. your IDE runs on
If you're developing on a Linux VM that you connect to via a browser tab opened from your Windows laptop, you're developing on Linux for all intents and purposes.
That is, Windows was not doing enough for you so you switched to Linux for dev tasks.
By the same token, if your IDE is running in WSL, for all intents and purposes you're developing on Linux. A virtual machine, sure, but the virtualized OS is a Linux variant. Because installing the IDE on Windows itself was not doing enough for you.
I can't even imagine doing development in Windows without WSL anymore. I think Microsoft even requires it for some of their stuff.
I guess it depends on what you do. I do python, rust, and web frontend in Windows. I have a personal bias against Docker, which'd otherwise be the primary WSL draw for me since if I want/need Linux, I can SSH into the majority of the machines in my house.
I'll throw out my unpopular opinion/experience here, too: I haven't liked any "desktop experience" I've seen or used for a Linux distro, and they all look and feel very similar to me: foreign, basic, and difficult for me to tweak and produce with. I greatly dislike the React stuff both on the web and in Windows, and use Classic Shell, which I'm satisfied with. Windows is easy to customize and almost everything can be tailored without even needing a reboot, many even with registry options already made and just waiting for a bit to be flipped.
It helps my puny, smooth brain, too, to just think of Windows being graphical and Linux being text-based; helps me remember what I'm doing.
I think I'd count WSL as Linux.
Cloud based development and browser hosted environments would certainly be worth measuring. I imagine the numbers are tiny compared to other platforms.
Arduino IDE probably counts as something with decent numbers. Wokwi also makes for an interesting candidate in that area.
Surprised this is apparently the less popular stack. IDE (VS Code) on windows working out of WSL has been so good for a long time now.
Linux for many years. Windows and Mac feels the same to me: they are not configurable enough. You just use almost default setup or you are out of luck.
Debian: The Universal Operating System, same as the past 25 years.
Used to be Windows, but Linux being able to run Docker containers without emulation is a killer feature for me (I am primarily developing backends that also run on Linux). Even if the driver issues are still really annoying.
My development is on Linux. Some of my work has to run on Windows as well; VirtualBox has several Windows VMs, a ReactOS VM, and Wine for testing.
I've never had to deal with the BSDs or Macs. If a customer was willing to pay for me to come up to speed on either of them I would consider it, but I have no interest otherwise.
I am slowly coming up to speed on Haiku, and now that most of my application and development software runs on Haiku and its hardware compatibility is much better, I'm looking to eventually move from Linux to Haiku for my primary workstation.
Depends: for hobby purposes, or what my daytime job forces on me?
22 years in the same Corp, targeting Linux systems since day one, and only in the first two years, and this year, have I been permitted a Linux desktop.
+2 years slugging in a vm.
Developing with out bash is just unnecessary work.
My productivity has more than doubled. easily. I manually type passwords half as much and when I do that is to access Microsoft services.
2fa wastes a huge amount of time.
Because nothing that needs 2fa is scriptable.
LXC containers on top of Debian in a specific work station just for this. I have one generic container to start everything, and then create specific ones if projects get bigger.
This is by far the best option to isolate and easily create development environments that I found.
I connect to the containers from VS Code running on Mac OS.
Incus is a great way to manage LXC containers, after LXD came under the Canonical umbrella.
Old enough to remember when work place mandated Windows machines were common place - now it feels like things have flipped in software dev, and macOS has become the "workOS". While no fan of Windows, I now find in my older age I am much less inclined to run Macs for personal/home use than I was 20 years ago - it feels too much like being at work now!
While I of course agree modern Mac laptops are great and Apple's silicon efforts have been superb, just seeing one makes me think of work and not pleasure now, somewhat ironically how I also felt about beige IBM boxes in the early 90s...
Job’s aversion to making a ‘gaming machine’ has paid off these decades later…
I'm surprised at the small number of Windows users. At my workplace every computer has Windows installed and we didn't really have a choice about it, although I never asked. Also, as a fullstack web developer, I don't really see why I would prefer one over the other, since they all support VSCode and I can write code on any one of them. But then again, I exist inside of an echochamber of Windows users so I'm pretty clueless on how development is different on other OSs.
Hacker News isn’t really representative of the larger dev world.
I was surprised in the opposite direction - I thought Windows would be <5% for dev. Big, cheap contracting agencies skew the Windows number up globally, and even just in the US, but this is just HN users so I expected a much smaller representation.
Pleasantly happy and surprised by Linux after many years. I'm not happy with the insidious lock-in that Apple and Microsoft engage in. When I'm developing I need the machine to be by own, and only a few distros provide that. I do wish to try kde though because it receives a lot of praise but just can't figure out which distro is the sweet spot, allowing for games, but good package management too.
kubuntu is pretty cool. i would recommend trying that.
Win11, editor runs on Win11, all development happens inside WSL2 (Ubuntu)
Basically all the bonuses of Windows re: gaming, with a great developer experience (like Linux/OSX).
The prime annoyances are:
- exposing a port to the entire LAN (for local phone debug) is non-trivial
- I imagine Android or phone dev might be a bit harder re: simulator, luckily I don't do this
- dev that spawns native windows would by default spawn through some WM layer with X11 or something (and they are laggy)
I think laptop of your choice as a thin client to Linux box in a data center is super common.
Most people seem to pick a Mac as their thin client, since ssh works well natively on it, it runs MS office, and the Windows laptop options are never the “nice” Windows options for some reason, but various flavors of plastic hate boxes that get 1/2 the battery life of the Macs IT offers.
I'm happy to do this as all I need is a vi-like, but I don't really see this happening from people in the IDE camp. I understand that VS Code does support development in a target linux host or container, but I just don't really see people doing it.
Curious what industry you work in where thin clients are still a thing. Most people are doing far more than ssh to some remote server.
I work in firmware.
Firmware build times can be comically bad. Most firmware builds are heavily optimized and you often build the same codebase dozens of times with each build optimized for one particular hardware configuration of many. You then get to deploy to a legion of test devices (also managed by machines you remoting into) and see which special snowflake you managed to break this time (it somehow is never the one you sanity checked your changes on during development :-D).
It's common to throw (a lot) of compute at the problem, and at some point it's way nicer if the 100+ cores you're cranking to 100% CPU for a few min are somewhere you're not sitting next to. It's also nice that those resources can be shared among many devs so they don't sit idle most of the time.
So, you end up with the thin client pattern. It's usually practical to build locally as well for a few particular targets, which might be a random dev board at your desk. But if I have a remote build system with a few hundred cores cores and a few dozen TB of ram, why would I not just use it instead of using my laptop?
Athough firmware and hardware is such a huge, varied field many people likely have different experiences. Brining up a big custom SoC is way different than bringing up a board with an FPGA and all off-the-shelf stuff.
What's "far more than ssh to some remote server" mean to you? It's always fascinating how different everyone's experiences are.
I have to develop on Windows for work and then code on a Mac for my own projects at home. Going from a project on my Mac Studio at home to my Windows PC at work makes me want to tear my eyes out.
There are so many things that are just plain worse on Windows when it comes to coding: messing with WSL, constant driver updates, every Windows link opening in Edge etc.
Haven't tried Linux for a while but maybe it's time.
Linux.
I retired the last Windows machine last year.
Firefox on Linux, though, is not working very well. It keeps hanging during long typing inputs. No CPU or disk usage, just stuck. And it uses so much memory that the OOM killer sometimes kills it.
I was never a Linux fanatic. It's just that I considered an operating system with ads unacceptable. I rather liked Windows 7.
which linux distro do you use? i distro hop and haven't experienced that with firefox for years.
Most likely is hardware specific (some driver bug).
I went from Windows to a VM running Ubuntu, to WSL, to a Mac. Each switch felt like a massive upgrade and I haven't looked back. I'm new to macs and I hear veterans complaining about the quality of the OS but compared to Windows which was adding ads in their search bars at the time I left... I guess I've just been conditioned to have a low bar
Linux. I do almost entirely backend stuff that gets deployed to Linux servers so there is little reason to consider anything else.
Technically I use all 3.
I mostly work on my desktop which is Windows + WSL 2 with Ubuntu and use a MBP on the move.
MacOS for work - Linux for personal
I'd prefer to run Linux, but one of my two primary dev targets requires a proprietary Windows IDE (Automation Studio by B&R). So running that on Windows then using WSL to develop for my Linux servers is the easy path.
I ssh into my Linux PC from a macbook. Live in tmux.
I use VSCode on a Mac, using remote SSH to edit code on a remote Linux machine. So I voted twice
I’ve never been able to get used to default Linux key bindings, and never been able to customize them to feel quite right.
Asahi Linux with Kate (editor) & Fossil (scm). - No idea why I wasted so much time switching away from macos. It feels like my computer belongs to me again. 'It just works better'
First time seeing a poll here, didn't know that was even possible.
I think it's possible we see some people now use other OSes, there should at least be an "Other" option. The *BSD's, Nix and some more bespoke options.
have been using linux ever since i got my first personal computer.
our customers all run linux in production too, so it's very easy and natural to develop and test the software in its usual environment (although i wish my laptop had eight times the ram to match).
my ide is linux: https://plan9.io/cm/cs/upe/
FreeBSD
Regardless of which OS is running on the bare metal, I do my development inside of Linux devcontainers.
Linux personally, and professionally last time I wasn't self-employed.
Mac is too expensive, Windows 11 is cruel and unusual.
Mac Mini M4 or Macbook Air M4 is not expensive. Just bought the latter (extensive rebates at the moment) to replace my Intel-based 2019 MPB. Wow! It's pretty much the perfect laptop, at that price.
My primary complaint so far: The green color LED on the magsafe connector is not the same green as the LED on the caps lock key. This wouldn't have passed the Steve Jobs approval.
Honestly I'm not much of a laptop stan. They're IMO overpriced or crap, or the case of HP, overpriced and crap.
Wintel laptops certainly are.
I bet you would love the Mac Mini M4 though. (I've spent some time perusing your site during the numerous times it's been posted here.)
Use MacOS Sequoia (15.x) for at least the next year though.
Omarchy has been a blast to use
I need to give Omarchy and Hyprland a real try at some point. I love the idea of a tiling window manager. I just haven't used one in 10 years and it's a big adjustment to classic window management.
You can just use apps on fullscreen with no tiling, that's how I use Omarchy most of the time.
Use Linux 99% of the time. Still have dual boot for Windows only for Paint.NET.
>only for Paint.NET
Have you ever tried Krita or Pinta?
mac, because 1) posix compliant and 2) there is no viable consumer alternative to apples silicon. maybe once AMD catches up i can swap to a framework
Windows options should be Windows (no WSL) or Windows (+WSL)
Why? The computer is booted to windows, then you choose windows.
Because you realistically barely interact with windows for development purposes.
We mostly develop on Linux, but target all three OSs.
macos, unfortunately. getting more hostile each year.
Dies WSL count as Linux?
IntelliJ + WSL in Terminal + Docker.
To save a click, in 2022, the distribution was: Linux - 46.25%, MacOS - 32.21%, Windows - 21.54%
I use Arch, btw
Linux and BSD (Free and Open mostly)
Linux but its WSL via Windows.
Where's OpenBSD or Plan9?
Dead? ;)
There are dozens of us! Dozens!
Linux at home, MacOS at work.
What about cloud based IDEs?
You probably run your browser on some OS, don't you?
I do, some may will the bits into existence, but then again, they're probably not using a cloud based IDE :)
Per the parent poster:
> Clarification: the operating system where e.g. your IDE runs on.
Click Linux
Linux subsystem (debian) on an arm Chromebook. It Just Works.
nixos or arch for me.
90% MAC, 10% Debian
FreeBSD.
macOS, but mostly for the hardware. The operating system matters less to me than having a good screen and a machine that isn’t made of crappy plastic. After nearly 20 years years on a MacBook Pro, it’s hard to go back to anything that feels cheap. =P
MacOS
Completely unrelated, but how does one create a poll on HN?
http://news.ycombinator.com/newpoll
It's in the FAQ.
If your editor is full screen, and you have a terminal emulator to build, test, and run, does an OS actually matter these days?
VS Code is good enough for 90% of grunt work, and Emacs will give you 110% more, but at the end of the day, you live in your editor not your OS (or maybe it’s just me).
Aaand this confirms once again that this website is in a bubble. Everybody else in the world uses Windows.
You might find the StackOverflow surveys more representative: they crown Windows as the most used OS, with a solid margin.
https://survey.stackoverflow.co/2025/technology/#1-computer-...
And? Why should I care what the clueless use?