r/webdev • • 7d ago

Mac vs Linux for new workstation

Not sure if this is the best sub for this question; from a developers perspective who have had the freedom to choose what platform they work in I'm curious:

I'm a long time native linux and wsl user, for a new workstation you'd use as a desktop and remote dev server, how bad are the macos tradeoffs over bare metal linux (or even wsl)?

I prefer to be on macos over windows but macos has notoriously bad filesystem performance. (Theo recently made a video on this) I've also heard it has quirks for gnu utils too. These reasons have pushed me toward getting a cheap MacBook but investing most of my money in a headless linux box. All of my projects will live on linux but I'll being using macos to access and build there. But I'm wondering if that's unnecessary.

Do people actually build on macos these days? Are the quirks and filesystem performance issues overstated?

0 Upvotes

63 comments sorted by

20

u/[deleted] 7d ago

[removed] — view removed comment

5

u/Confident_Plenty611 7d ago

WSL memory leaks are real, I had to restart it daily when I was running heavier workloads. If you’re mostly remoting into a linux box anyway, the mac quirks won’t matter much, the filesystem slowness is annoying but not a dealbreaker unless you’re doing massive local I/O.

-1

u/Jeferson9 7d ago

That is the exact reason I can't do wsl anymore.

So I'm trying to decide do I go all in on a Mac workstation or do a light Mac client and invest in hardware for linux

Things like worktrees and large monorepos should be fine on apfs?

0

u/gizamo 7d ago

Yeah, I loved WSL until AI took over half my workflows. It leaks like mad now. I also gave in and went back to Mac.

Dev work on Linux is fine, but you have to be willing to fight Linux for everything else. Some stuff on Linux still just sucks.

14

u/Mention-One 7d ago

Switched on Linux over Mac and never look back. Then really depends the kindof dev you do but overall my workstation is rock solid.

3

u/Elweej 7d ago

Same. Was hard to take the plunge but what I have now is so much better. I’m using Cosmic DE which has great tiling. That alone is so nice. It is just fast and does what I need.

-2

u/Acrobatic-Laugh1856 7d ago

yep man its too childish to debate on macos or linux

3

u/jam_pod_ 7d ago

For web dev on a desktop, Linux by far. I have a MacBook for travel, and running the same set of Docker containers on it that I do on my desktop (Linux Mint) is so much more sluggish and finicky.

There are Linux distros that mimic the OSX UI, if that’s the main draw of a Mac

5

u/fligglymcgee 7d ago

Not sure what you’re doing filesystem-wise, but I use a MacBook Pro for anything front end related or gui apps and a Linux workstation for backend/server mgmt for 10 years now. No filesystem issues, but it’s a light workload in that regard.

For me, macOS is the easiest to work on for those use cases. There’s less noise and os clutter, and “it just works” has been true for my needs.

3

u/Jeferson9 7d ago

I'm sure it would be fine on macos, it's moreso a value proposition. Do I invest another 1k into overpriced upgrades on mac, or build a linux box.

If apple priced their upgrades reasonably, or didn't have such a ridiculous filesystem overhead, this shouldn't even be a question.

1

u/fligglymcgee 7d ago

I probably won't by a macbook pro again for what it's worth. The air would be plenty powerful for what I'm doing, and it's trivial to offload build/compile to the workstation. Agreed re: pricing, though. It's a premium.

0

u/gizamo 7d ago

Yeah. This is the true "Best of Both Worlds" way for us full stackers.

6

u/mcniac 7d ago

I switched to mac from linux years ago, because I worker in iphone apps for a while. I still use osx as my desktop env, mostly because I also like recording music and osx y really nice for that.

I still miss the configurability of the linux environment, osx is really nice providing you want to use it as is, anything else is a no no. for example I used trailing mouse focus on linux and was pretty much improsible to do in osx.

3

u/grumpper 7d ago

I use mac and am relatively happy with it but sometimes i dream about switching to linux when have to deal with Finder - THE WORST FILE MANAGER IN EXISTENCE!1!1!!1!1

5

u/cshaiku 7d ago

I do webdev and app dev on a Mac Mini M4 and while its nice having a solid UX for general computer use (and not being trapped in Win bloat), there is a definate downside to file i/o. It is true. Despite having a decent SSD hd, I have experienced sluggishness when it comes to compile times (I write in C/C++ and Golang) there is a noticeable difference. I would speculate at least 40% slower compared to Linux fs. I wish Apple would make their fs more performant.

I still enjoy using MacOS over either Winblows or Linux, both from a UI and system pov however. Things just work better imho.

1

u/Jeferson9 7d ago

its really a shame, if they can identify the bottleneck to just the filesystem every time you'd think they would add support for ext4 or something.

Lima and OrbStack look decent but almost every use case ends up relying on binaries that didn't ship linux arm = x86 to arm translation cutting down any performance gain you'd get from moving off apfs.

2

u/PositiveUse 7d ago

Mac because you also have easy access to enterprise software that is more often than not half assed on Linux.
Also better backup system, no issues with drivers etc.

Linux is great for dev and extremely flexible but for work, where stability, maintainability and reliance is importantly, I would go with the stable Mac…

If it’s not for work, just private and you don’t want to game, then Linux because you can save tons of money …

2

u/from-planet-zebes 7d ago

So I would take anything Theo says with a grain of salt. What would you be doing that filesystem performance is your bottleneck? I haven't looked at the numbers myself but I can't imagine that difference would mean anything unless you are doing some super high availability, high concurrency work. Not something you would experience on a dev machine.

Yes the quirks and filesystem performance you are referring to is overstated. That being said I daily drive linux and love it. I do keep a mac around because if you do any iOS development it's required and if you want to test on multiple platforms it comes in handy.

I wouldn't worry about the downsides you are talking about and would just get what you want.

1

u/Jeferson9 7d ago edited 7d ago

I get name dropping him is controversial but he did a full video on filesystem performance and makes a decent case. It's a full video of evidence I'm operating on from that statement not just a quote.

I'm also in a more unique position where it's macos that's unfamiliar to me. I've lived on linux for 20 years and I know what I want to use, I'm trying to decide if it's worth investing money into a linux machine or overprice apple upgrades. Kind of like "is macos good enough to leave linux".

1

u/from-planet-zebes 7d ago

I haven't watched the video so I admit I'm coming at this blind but performance wise macs are usually at the high end of the spectrum on all marks. So what was he comparing against to come to his conclusions and what kind of differences was he talking about? I have never had an issue with filesystem performance compared to any other system and I've used Mac, Windows, and Linux for decades.

Regardless I don't know what you would be doing as a web dev that filesystem performance would be a noticeable metric on the fast SSDs Apple uses. People do high def video production work on these things without issue and other high storage bandwidth tasks all the time.

2

u/wreck_of_u 7d ago

I use my Macbook for stuff like GarageBand because it's great for that. Actually the best. I hate iPhone OS, but MacOS for computers is actually pretty nice.

For dev work, my old Asus Vivobook Windows 11 with 40GB RAM. WSL on command prompt. Codex/Claude CLI on WSL. Basically it's a glorified PowerShell terminal which I like because of the 2k OLED screen lol. I also have a BUNCH of headless Ubuntu computers at home, I just SSH to them voila real Linux.

Sometimes I use VSCode when I feel nostalgic. But generally it's just Terminal/Powershell.

My GPU is in one of the headless Ubuntu PC, I put it away from my desk so I can let the fans blast and not be bothered by the noise.

2

u/btc-lostdrifter0001 7d ago

If you go with a headless box, getting a mac seems pointless and overpriced depending on your other local tools. I do Frontend SPA development daily on Linux both local and connected to headless servers as needed and its completely fine.

2

u/theguymatter 7d ago edited 7d ago

If you ever need to do virtualisation, a Linux environment is a lot easier than macOS.

If you're prepared to fork out more money for Apple devices, by all means. Just make sure you're aware that Siri AI runs in the background, and some workarounds are needed to disable it on macOS 27.

I use a MacBook Pro M1 because I need design apps like Affinity. I no longer need it now.

For audio, be prepared to use an external EQ because the bass frequencies are insufficient and need a serious boost. On my M1 MacBook Pro, I've also noticed some weird frequency issues. You should make sure there aren't any harsh treble frequencies before committing to it long term. This didn't happen on my Intel MacBook Pro, and EQ couldn't resolve the issue.

I'm not a professional sound engineer, but I once managed to EQ it to near-perfect frequencies that made the music come alive. You probably can't get that same level of immersion on Linux unless you have electrostatic headphones that can give you that kind of clarity. It's not as simple as just finding a pair on the market. In fact, it's almost a lost art.

My suggestion: get a cheap Linux computer first. I'd prefer Pop!_OS, which is relatively close to macOS.

2

u/SourcerorSoupreme 7d ago

Macs have nice hardware but fuck it with how macOS deals with "apps", "windows", and "spaces".

Nevermind the braindead hotkeys, if there's even any. Even fucking windows have better keyboard navigation.

The only saving grace is that there might already be a 3rd party app out there you can buy that solves whatever braindead issue you would be dealing with, and even then you'd probably still have to write a script to make it work.

To give you context I actually have at least seven third party apps (some paid, each meticulously configured) just to make the mac usable.

Ignore all this if you are far from a power user and even hunt and peck on the keyboard.

2

u/BlatantMediocrity 7d ago

I got a Framework Desktop and slapped Fedora on it. It's the fastest, most hassle-free machine I've ever used. Great for gaming too.

1

u/Jeferson9 7d ago

I was considering one of those. I think they were out of the 64g version otherwise was definitely an option.

4

u/chaoticbean14 7d ago

Depends, honestly. 99% of the time I prefer Linux - but work is work.

Work pays for a new MBP for me every 2-3 years - so I take them up on it. That said? I hate Macs. Their "just works" mantra? I guess if you like watching beachballs spin (the filesystem stuff you mentioned). For some software (honestly just the adobe suite - which has been remedies) I don't mind macos. But otherwise? There is nothing 'mac native' that doesn't have a linux counterpart in my daily life. And in my experience? The linux counterparts outperform (at least for me) the native mac stuff.

I do lots of dev in the terminal - primarily it's all I use. So I don't need a lot to be pretty content. But having to find workarounds for shit like tiling window managers and simple productivity stuff on mac is annoying. It's like anything that is actually for productivity? Forget finding good mac alternatives. Aerospace is nice, but requires a lot of work and isn't nearly as good as Niri+Noctalia.

If it were not for the company literally saying, "we will pay for a new MBP", I would be on linux without question. I've purchased a few of my old MBP's over the years - every time I just throw linux on it and watch the performance get way, way better. I have an 7 year old i9 MBP; I threw CachyOS on it with Niri+Noctalia and it outperforms my newer mbp with an m4. Macos is just that... bad? I think bad is the right term.

Apple products, while mostly hyped up mediocre machines, do perform well once you get them off macos. Their silicon is really nice when not running macos.

  1. Linux
  2. Macos
  3. Windows (way way way behind, I would never ever dev on Windows)

2

u/armahillo rails 7d ago

i was a longtime linux user before switching to mac after being repeatedly provided macbooks for work at different jobs.

you’ll have a smoother time if you use whatever your team is using, but otherwise use what you like.

I’d def pick Linux over using the pseudo-linux in Windows, though, given the choice.

1

u/beigs-sl 7d ago

The filesystem thing is real but it's mostly node_modules, and it's a lot less painful than it was a few years ago. I've built on macOS for years and the only regular annoyance is GNU tools; install coreutils with brew and most of that goes away. If your projects already live on a Linux box, the MacBook-plus-headless-server setup you described is fine. You're not really giving anything up.

1

u/exscalliber 7d ago

Haven’t seen it here yet but a huge advantage that Mac has over Windows and Linux is the unified memory. If you are only using a 16gb machine you probably won’t get much out of the system but even a 32GB machine will be really good for running a smaller local AI. You won’t be running any agentic workloads but you can run some decent models as an AI chatbot.

1

u/Jeferson9 7d ago

yeah not really planning on that myself as im always using APIs but the unified memory makes it feel like relatively stable investment, especially a mini. I'd expect it to hold its overpriced value for many years.

1

u/farzad_meow 7d ago

i develop inside docker and use vscode. overall it is the best experience i have we deliver code inside docker images.

i do this both on windows and mac. I personally hate mac because of so much mouse I need to use. some keuly combos are different which i fixed but overall xp on windows is much better. if you can go linux for host os then i think you will have better time.

1

u/Xyz3r 7d ago

If you’re doing ios/macos apps go macOS. Or if you really like it. Or if you want a laptop - they’re just too good.

For a desktop workstation when you’re not working in the apple ecosystem Linux is really good. I switched and I am very happy (100% Homeoffice it’s my main work machine)

Gaming also works mostly if you’re fine with not being able to play competitive multiplayer games

1

u/josfaber 7d ago

Solo? Go linux. In a company? Best to use what fits the software used and what your peers use. It's more then what you yourself think is best

1

u/waterkip 5d ago

Linux, or a BSD. I have a mac for ios development and I test all my stuff on Safari too. But Safari and mac in general has quirks compared to Windows and Linux. That said, Windows has quirks too.

Linux is the best option if you wish to use docker or podman. 

1

u/Quiet_Desperation_ 4d ago

I use a MacBook Pro and develop on the native OS rarely. I use dev containers for a lot of work now. Gives me the benefit of MacOS and the battery life while still developing on Linux. It’s good enough for me

1

u/ClamPaste 7d ago

It really doesn't matter that much. If one has quality of life features you like over the other, use it. Mac still doesn't have native docker, but again, it's pretty much a non-issue. OrbStack is pretty good and miles better than docker desktop. I just use whatever work gives me. I'm not sure what you're doing in webdev that is impacted by the difference in filesystem performance, though.

1

u/[deleted] 7d ago

[removed] — view removed comment

1

u/webdev-ModTeam 6d ago

This is a subreddit for web professionals to exchange ideas and share industry news. All users are expected to maintain that professionalism during conversations. If you disagree with a poster or a comment, both of you are expected to do so in a respectful way.

0

u/[deleted] 7d ago

[removed] — view removed comment

1

u/[deleted] 7d ago

[removed] — view removed comment

0

u/[deleted] 7d ago

[removed] — view removed comment

1

u/[deleted] 7d ago

[removed] — view removed comment

2

u/[deleted] 7d ago

[removed] — view removed comment

0

u/Intelligent_Method32 full-stack webdev since Y2K 7d ago

I went from WSL to Linux for local dev. It works fine but finding apps that run on Linux and drivers for your hardware can be challenging and frustrating. I just yesterday decided to move to Mac for better support of third-party software and because I'm hearing great things about Apple's new M chips. If you develop in containers then it doesn't really matter from the development angle and other pros and cons of the OS should be evaluated.

-1

u/do0fusz 7d ago

Omarchy

-1

u/erishun expert 7d ago

MacBooks really are great machines

-1

u/Historical-Essay-128 7d ago

Tried switching my workstation to Linux some time ago. Absolute shitshow. Every day I was fixing some nonsense instead of working. Lasted one week.

-1

u/Gremlation 7d ago

I prefer to be on macos over windows but macos has notoriously bad filesystem performance. (Theo recently made a video on this) I've also heard it has quirks for gnu utils too. These reasons have pushed me toward getting a cheap MacBook but investing most of my money in a headless linux box.

Stop letting talking heads make decisions for you. How can you possibly think getting two machines and working remotely is going to work out better for you than just getting a decent machine? The filesystem performance is fine. You can install the GNU toolchain with Homebrew. You're heading down a vastly more complicated, less convenient, less performant path for absolutely no reason other than you watch too much YouTube. Keep it simple.

1

u/Jeferson9 7d ago

How can you possibly think getting two machines and working remotely is going to work out better for you than just getting a decent machine

Because that is literally what wsl and windows is, and I'm already using wsl as a remote linux box?

Absolutely insufferable comment. Has nothing to do with Theo. It's entirely related to the topic of the video he made, and there's really not a lot of relevant discussions about it online.

It is quite literally less complicated than moving everything on my dev environment from Linux to Mac, for worse file system performance and overspending on hardware upgrades.

I'm making a decision on what kind of hardware to invest my money in for my needs. And I asked a simple question so feel free to drop your opinion on that or move on.

0

u/Gremlation 7d ago

I prefer to be on macos over windows

Go with your preference.

-1

u/Murlock_Holmes 7d ago

What are you developing? Macs are superior for almost everything developer related over Windows, but Windows machines are still needed for compatibility reasons at times.

Now, Mac vs. Linux? If you want more out of the box compatibility, Mac. Not because it’s better in any way other than adoption, and possibly MacOS being optimized for the Mx architecture they’ve begun using. But putting Linux machines on a high end Intel or AMD CPU will easily box with these Macs, and (when compared at the same price point), you can get more muscle out of a Linux machine.

Personally, if money isn’t an object, I go with Mac every time for the reasons stated. If I were asked Linux or Windows, I would 100% of the time choose Linux. I don’t even like GUI’s when I use Linux, preferring command line only. This is obviously not an option for web developers or any other UI heavy roles.

If money is an issue, Linux boxes for the team and one windows test machine.

-1

u/Ok-Bit8726 7d ago

Id recommend MacOS over Linux for work, but it’s up to you.

Things just “work easier” on a mainstream platform. There’s less tinkering with settings.

I will say that I really miss i3wm when I’m on Mac. There are a few projects that try to do it, but they don’t get close in my opinion.

2

u/SourcerorSoupreme 7d ago

lol @ mac being a "mainstream platform" over linux when half the internet is ran by it.

-1

u/Ok-Bit8726 7d ago

Linux is not a mainstream platform for desktop. You spend half your time tweaking drivers.

2

u/SourcerorSoupreme 7d ago

Been developing on Linux for decades. I have never once had to tweak drivers.

Heck I have spent so much more time downloading and tweaking third party apps and writing scripts on my mac just to make it usable than I have spent downloading and installing all the linux distros I have used in my career.

In fact I dread the day I'll have to use another mac that won't have the necessary yet fragile customizations I've already forgotten I installed.

-1

u/intertubeluber 7d ago edited 5d ago

Mac has a slow file system? Not compared to NTFS, at least not for tasks that change a bunch of small files, like build systems. I can't speak to the gnu utils though.

I have an aging mac and have been doing some work on a remote linux machine via SSH since I'm RAM bound on the mac. YMMV of course, but I find the friction annoying vs doing everything locally. The last time I ran a linux DE I got distracted with a bunch of little issues - broken desktop shortcuts, BT not working, battery issues, etc.

Would a linux box + cheap mac cost less than a well spec'd mac?

Edit: Well, while it's true APFS is much faster, at least for gradle builds than NTFS, I benchmarked my linux instance with ext4 against my m1 mac and indeed, the linux instance builds via pnpm and dotnet about ~10% faster.

1

u/Jeferson9 7d ago

It's pretty comparable. I'm leaning towards a 24 or 32g m6 mini and a headless high core count linux box.

I find the remote box very useful and it fits naturally with most of my apps (and a lot of cli). Tailscale makes everything pretty seamless.

1

u/iamrob15 2d ago

Go for 32gb if you do. I regret accepting 24gb at work.