News for hackers. Stuff that matters.
Re:Ask HN: What’s a good laptop for software development at ... by jazzyjackson on Wednesday April 20, 2022 @07:02AM (#31095118)
serious question: what is the practical difference between MacOS and Linux?

Do you have a habit of modifying your wifi drivers and recompiling the source? I am big on open source but have never felt my life was improved chasing dependencies vs just brew install ... I have never had a satisfactory battery + sleep/standby experience on a linux machine, vs a Mac I can leave unplugged for weeks and it wakes back up where I left off, battery still holding charge, so I'm just curious what is worth the tradeoff, especially when your priorities are battery life, computational performance, and hardware longevity (I get a new MacBook every ~5 years)

Re:Ask HN: What’s a good laptop for software development at ... by rpdillon on Wednesday April 20, 2022 @07:39AM (#31095429)
Not OP, but MacOS has very different ergonomics than Linux. My latest frustration on MacOS is switching between desktops/workspaces quickly. In any Linux distro, I can use both alt-tab and desktops to manage windows and switch instantly between programs. On MacOS, even when I disable animations using accessibility settings ("Reduce Motion"), switching workspaces comes with a delay during which the workspace appears switched, but keyboard input is eaten because the application window hasn't been given focus by the WM yet. Linux gives me the freedom to switch WMs, but on MacOS, I'm trying to cobble together something workable using alt-tab (the app) and accessibility settings, and still not succeeding. I've searched for a fix[0], but no luck so far.

I agree about power management, but having freedom to configure things like this is a bigger factor for me personally. As far as package management, my experience with apt has been better than my experience using brew, though both are serviceable.

[0]: https://apple.stackexchange.com/questions/17929/how-can-i-di...

Re:Ask HN: What’s a good laptop for software development at ... by Atreiden on Wednesday April 20, 2022 @08:09AM (#31095705)
Yabai + SKHD will totally change your workflow for the better. Sometimes I forget most people don't have it set up by default so I get confused when I read comments like these.

Tiling is snappy, workspace switching is instant. And I'm on a pre-m1 machine with 16GB RAM.

Re:Ask HN: What’s a good laptop for software development at ... by rpdillon on Wednesday April 20, 2022 @08:55AM (#31096160)
It's this kind of response that motivates me to post on HN about topics like this! I use Rectangle[0] for tiling, and I'm quite happy with it, but have not explored SKHD yet. Will give it a try now, thank you!

[0]: https://rectangleapp.com/

Re:Ask HN: What’s a good laptop for software development at ... by lelanthran on Wednesday April 20, 2022 @08:32AM (#31095918)
> serious question: what is the practical difference between MacOS and Linux?

For a daily driver? Poor UI experience on MacOS. On Linux usually one of Mate, Plasma, WindowMaker, XFCE or Gnome will have the Window behaviour (snapping, tiling, maximising, switching) I want.

All of the Linux options have file-selection dialogs that don't suck. All of the Linux distros I have used for a daily driver have better software than brew.

MacOS kernel certainly has some nice surprises (compressed memory is impressive), it doesn't ever crash and it sleeps and wakes correctly.

OTOH, all the non-kernel software is, frankly, crap. They're unintuitive, hard to use and limited in variety.

Re:Ask HN: What’s a good laptop for software development at ... by geekifier on Wednesday April 20, 2022 @08:57AM (#31096192)
> it doesn't ever crash and it sleeps and wakes correctly.

Maybe I have been unlucky, but I have experienced many panics across several different machines running recent MacOS releases. 2 of those being corporate machines, so I can blame the "security" software that gets deployed. My home Mac mini, does not have any crapware deployed, and it still managed to crash once or twice.

In contrast, my ancient desktop running Windows 10 has not had a single BSOD in the years since I built that Ivy Bridge machine. And this included running much more intensive workloads than the terminal/docker/text editor workloads on my Macs.

Re:Ask HN: What’s a good laptop for software development at ... by gnfargbl on Wednesday April 20, 2022 @08:21AM (#31095809)
Serious answer: My work laptop is a toolbench, and I want the tools to operate exactly as I expect them to. For me, that means that I want a Linux environment, not a BSD-ish environment. I want my standard Unix tools to be the GNU variants, and for them not to be named with an extra "g" prefix. I want the OS to install binaries roughly where I expect them to be. I want the init system to work in a way I understand.

Basically, I want Linux because I am familiar with how Linux and Linux tooling works, and that makes me very efficient on Linux. Using MacOS is acceptable but it feels somewhat like having one hand tied behind my back. A seasoned MacOS user probably has the same feeling but in reverse.

(As an aside: In 2022, I don't recognize the comments about modifying WiFi drivers, compiling from source or having sleep/resume issues. That definitely used to be the case in the distant past, but over the last five years or so Ubuntu have really got their stuff together. I don't think I would have ever recognized the comments on brew, which I always found infuriating and messy compared to apt. Perhaps it all comes down to taste, and that's okay?)

Re:Ask HN: What’s a good laptop for software development at ... by zamalek on Wednesday April 20, 2022 @07:34AM (#31095377)
Containers are a constant headache on MacOS. The likes of Lima have greatly improved the situation, but there are still several issues (network reliability and performance are significant issues).

> Do you have a habit of modifying your wifi drivers and recompiling the source?

Not even once. But thank god for the people who do put in the effort to code support for shitty walled gardens[1]. This age old strawman argument diverts attention away from many of the other virtues of Linux.

My personal coding and gaming machine runs Linux. My work laptop is MacOS. Almost every day (as no exaggeration) there is something new that doesn't work on MacOS, that yet another hostage of the Apple ecosystem has fixed for Apple.

> improved chasing dependencies vs just brew install

This is a very strange comment considering that brew was inspired by Linux package managers. Brew is incredible compared to what is available on MacOS (which, to be clear, is nothing), but it doesn't hold a candle to what's happening in the Linux world - especially with the likes of ostree, guix, and nix.

MacOS is an operating system designed for creators and influencers. It can be modified to the bare minimum of development competency. Even Windows pulls ahead of it with WSL, and that's saying something.

I can't comprehend why developers voluntarily subject themselves to it.

[1]: https://asahilinux.org/

Re:Ask HN: What’s a good laptop for software development at ... by princevegeta89 on Wednesday April 20, 2022 @01:54PM (#31100575)
+1 agree with your points. Although I wasn't sure about things on mac breaking every other day. I agree with your sentiment on Brew - it sucks incredibly hard compared to any other package managers from any Linux distro lol. Currently trying out Windows + WSL to decide between full-on Linux or Windows
Re:Ask HN: What’s a good laptop for software development at ... by jokethrowaway on Wednesday April 20, 2022 @07:17AM (#31095236)
The UI is atrocious on Mac OS X or on Windows.

Out of the box, Linux UI is a bit better - but it's easy to make it excellent and make it fit like a glove. Tiling or partially tiling managers outside of Linux are terrible.

Whether you like a default full fledged desktop experience with Plasma or you go with a super tuned sway, you can really get what you want out of your machine.

The UI is the main reason I try to use Linux as much as I can but there are tons of other advantages. Docker works natively and fast, developing anything (but iOS apps) is a smooth experience. Package managers are 20 years ahead brew or chocolate on Windows.

If you use Arch you get an even better package manager experience compared to other distro: you get bleeding edge packages + AUR, a user contributed repository of scripts to build and install custom packages.

If you use something like NixOS you get to define your system with a configuration file and you can truly bootstrap and switch between different systems with a CLI command.

Re:Ask HN: What’s a good laptop for software development at ... by afarrell on Wednesday April 20, 2022 @07:05AM (#31095145)
The thing I miss most from Linux is strace. This is far outweighed by

1. The much frequency with which stuff just works on OSX.

2. The opportunities to spend $30 on an app instead of $300-$800 worth of time on software that is Free as in Puppy.

Re:Ask HN: What’s a good laptop for software development at ... by usr1106 on Wednesday April 20, 2022 @08:04AM (#31095669)
Are you serious? There is nothing comparable to strace on MacOS? strace can save you so much time if some software (your own or not) just doesn't work like you want. Of course problems 100% in user space are not covered. But I find a fair share of real world problems are.
Re:Ask HN: What’s a good laptop for software development at ... by jlokier on Wednesday April 20, 2022 @08:59AM (#31096213)
> Are you serious? There is nothing comparable to strace on MacOS?

There's dtruss, but the information and options are nowhere near as useful as strace, and for some system calls it prints errors instead. read() and write() print access errors so you can't see what's read and written, same with stat/fstat, you just get an address, no file information.

Perhaps strace could be ported to MacOS but it's not. "brew install strace" says "strace: Linux is required for this software." :-)

Re:Ask HN: What’s a good laptop for software development at ... by JabavuAdams on Wednesday April 20, 2022 @08:56AM (#31096175)
My 2017 MacBookPro laptop swings from 12GB free to 600MB free back to 12GB for no apparent reason, while giving me warning notifications of low disk space that I can't turn off. The only reason I have 12 GB free instead of 3-4 is that I uninstalled a whole bunch of stuff so that I could actually do a Time Machine backup. Yes, I had to uninstall stuff in order to do a backup. Seems backwards.

These annoyances from the company that supposedly is obsessive about user experience make one feel helpless and frustrated.

Overall, Mac feels less janky from a GUI/visual point of view than Linux, but frankly I'm spending more and more time on Linux because it's just more predictable. Also lots of Raspberry Pi tinkering.

A rogue Windows update bricked my machine the day before an important deadline. This is just so unbelievably unacceptable that I can't believe we collectively put up with this nonsense.

Yes, default macOS is more aesthetically pleasing than default Linux, but the helplessness when something goes wrong ...

Re:Ask HN: What’s a good laptop for software development at ... by jazzyjackson on Wednesday April 20, 2022 @03:34PM (#31101801)
predictability is my favorite answer so far, thanks, I just had the issue of "why is safari closing tabs on its own" and the answer was "because icloud is trying to sync my tabs" ... the less remote management being done on my machine from the cloud the better
Re:Ask HN: What’s a good laptop for software development at ... by kuschku on Wednesday April 20, 2022 @07:16AM (#31095224)
I like being able to replace individual parts of my laptop with newer, better hardware without having to throw out the whole device. I like that this new hardware just works, instead of the OS vendor only supporting a handful of approved internal Wi-Fi modules.

It’s awesome that I can build custom PAM modules and disk encryption unlocking solutions to enforce that both a password and a YubiKey need to be present to unlock the disk. I love being able to configure my display manager to discard the decryption keys for my user pool when I log out to get the same kind of security that I’d have on a phone.

Being able to modify soft- and hardware allows you to add features that other OS vendors don’t yet support, or retrofit new features and functionality onto old hardware to make it usable far beyond its planned EOL.

Re:Ask HN: What’s a good laptop for software development at ... by Aaargh20318 on Wednesday April 20, 2022 @07:37AM (#31095395)
> I like being able to replace individual parts of my laptop with newer, better hardware without having to throw out the whole device.

Do you actually do that, or do you just like the idea of being able to do it ? Even on a desktop PC, where upgrading is much easier and more common, I've never seen the point.

Either you upgrade fairly often, in which case you pay a relatively large amount for marginal improvements, or you upgrade every few years, in which case you need to replace so many parts you might as well replace the entire machine.

Say you upgrade the CPU to a newer model after a year, that's a fairly costly upgrade and how much additional performance will you get in return ?

If you wait a few years to upgrade your CPU, you'll find that the new CPU also requires a new motherboard, and the new motherboard requires a new type of RAM. They you find out that your old GPU is now a bottleneck, and when replacing that you realise your new GPU requires an new power supply as well. By the time you're finished all you've done is recycled the case.

Re:Ask HN: What’s a good laptop for software development at ... by kuschku on Wednesday April 20, 2022 @08:18AM (#31095783)
See https://news.ycombinator.com/item?id=31095339 for the replacements I did on my current device. I’ve replaced pretty much everything over the years. I only need to replace parts that actually become a bottleneck.

e.g., if just the RAM is an issue, I don’t have to buy an entirely new device and pay extra for everything else.

Re:Ask HN: What’s a good laptop for software development at ... by goosedragons on Wednesday April 20, 2022 @07:21AM (#31095282)
Choice? Good package manager and tool setup out of the box? Not having to buy a bunch of $10 utilities every 3 years to fix basic OS pain points that end up broken by an OS update or Apple killing some thing? macOS wants you do things the Apple way and going against that is a lot of pain in my experience for little gain.

My 2018 MBP would lose battery on sleep too. I don't even know what shutdown does because the force trackpad still keeps clicking while "off".

Re:Ask HN: What’s a good laptop for software development at ... by pm215 on Wednesday April 20, 2022 @07:22AM (#31095287)
The really big thing that gets me on macos is not having focus-follows-mouse and works-everywhere select-to-copy middle-click-to-paste. Yes, this is "just" a UI thing, and yes, I can more or less get used to the macos choices (I used a macbook air as my "take to conferences" laptop for some years and still use it as my "video-calls machine" -- when I bought it no PC was close for hardware quality and weight at the price). But I've been using a Linux window manager with those behaviours for 25 years now, and I'm just more comfortable and familiar with them. macos makes a lot of choices for you, which is great when they're about stuff that you don't care about or isn't a deal-breaker. But if you're unlucky and one of those choices is a personal deal-breaker, then sometimes you can end up just having to rule out a macos machine.
Re:Ask HN: What’s a good laptop for software development at ... by funklute on Wednesday April 20, 2022 @07:06AM (#31095154)
For a start, the hardware. I hate working on glossy screens, and it's not possible these days to get macs with matte screens (I know I can install a diffuser, but for the price point apple operates at, I shouldn't need to spend extra money on adapting the hardware).

Also, bugs in the OS where you're completely at the mercy of Apple. I like to do custom re-mappings on my keyboard, and the last time I tried a mac (around 2016), the keyboard reverted to the default layout every time I viewed a pdf. At the time, there was no way of fixing this issue. Along with the glossy screen, this issue convinced me that MacOS was not at the time a viable platform for me.

Re:Ask HN: What’s a good laptop for software development at ... by StillBored on Wednesday April 20, 2022 @12:30PM (#31099420)
sleep/standby on linux has really gone downhill in the last couple years, mostly because of microsoft's modern standby, which has become a price discrimination option for HP/dell/lenovo which only provide the better supported S3/etc ACPI methods on their "linux compatible" laptops.

So, what happens is that Linux tends to "work" on lots of lower end laptops/etc that ship with windows, but suspend will consume considerably more power vs just turning everything but the DRAM refresh off (what happens with S3). If you find a laptop with S3/etc support, the battery will last for days in linux as well. I have an older cheap dell inspiron from ~2016 and it can stay in S3 for more than a week from a full charge, and with a bit of powertoy/etc tweaking idles at about 3W which gives it about a 14 hour battery just sitting there with the screen/emacs running.

So, its definitely worth getting a "linux compatible" laptop if your not a kernel hacker who is willing to fix bugs in various drivers. Even then if your picky and you get a bleeding edge machine its quite likely there will be quality of life issues for the first couple years until all the fixes work their way through to all the distro's/etc everyone runs.

Its actually a good reason for avoiding the tier 1 OEM's, because acer/asus/msi/etc tend to ship with a full suite of BIOS options which allow better linux tuning. HP has gotten quite aggressive about changing/etc the password/hidden key sequences to unlock the hidden bios options.

Re:Ask HN: What’s a good laptop for software development at ... by teva on Wednesday April 20, 2022 @07:17AM (#31095233)
Docker is very slow on MacOS
Re:Ask HN: What’s a good laptop for software development at ... by idontwantthis on Wednesday April 20, 2022 @08:08AM (#31095695)
How slow? Using it every day here on MacOS with no difficulties. Using Rancher Desktop as well.
Re:Ask HN: What’s a good laptop for software development at ... by smoldesu on Wednesday April 20, 2022 @09:13AM (#31096394)
Go boot up a Linux machine and see for yourself. APFS has been a Docker bottleneck for years, and thats before we even get to the kernel issues...