Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

It a jab at Linux/PC.

Apple's completely vertical stack means that their machines never have issues sleeping. The huge variety of machines that Linux (and Windows) is expected to run on can cause problems entering S-states reliably. This issue is pretty uncommon (excluding the Windows modern sleep disaster), but that doesn't prevent comments like the GP throwaway.



AMD Cezanne chips were released in early 2021. Patches are still landing to fix suspend resume bugs in the Linux kernel: https://www.phoronix.com/news/Ryzen-5000-Laptop-Linux-6.1

This is a real issue with Linux. If you want the latest hardware, expect basic features like suspend resume not to work.


That's not a bug in the Linux kernel, it's a bug in the AMD hardware.

You can generally spot this immediately, even without reading the code, by the way it's described as a "workaround".


Does it matter if I want my laptop to sleep properly? Somehow it works properly on Windows.


Apple laptops definitely have issues sleeping. https://forums.macrumors.com/threads/macbook-air-m1-doesnt-s...

There's a litany of bugs in Apple's software. This often gets hidden because developers use workarounds of various sorts, but if you know, you know. It's honestly embarrassing how buggy Apple software is given the vertical integration you describe.

The worst part is that almost all of it is closed source so it's harder to debug, and the bits that are open source (and have bugs in plain sight) you can't just submit a patch to. You have to file an rdar and hope it gets prioritized, which for one of the bugs I'm aware of hasn't been in many years. And so the workarounds keep getting written.


> There's a litany of bugs in Apple's software.

Personally, the only problems I've only ever had getting macos to sleep properly has been when I've been running VMs. (Hello docker!)

When doing purely OS-local development (which is all I ever do these days, because I value my sanity) macos works great. (So long as you have a recent mac. New macos + old laptop is awful.)

But as nice as macos is, XCode is an absolute mess. Earlier today I was trying to import a swift package into xcode. The package looked fine, but XCode for some reason was only importing it as a "Folder Reference". Stackoverflow suggested quitting xcode and running "xcodebuild -resolvePackageDependencies", then relaunching xcode. And that fixed it! Why was that necessary? Why couldn't xcode figure that out on its own? What did that even do?? I have no idea. And I hate it.

These days developing in apple's ecosystem feels less like developing in a walled garden and more like developing in a swamp. They're truly lovely developer machines - just so long as you can stay away from xcode.


Again, the reason it seems great to you is because developers have papered over so many bugs and other deficiencies. Linux has its own issues but it overall is at a completely different quality level from macOS.


Linux's bugs are just in a different place. Macos's bugs are all deep technical problems that Apple doesn't have enough senior engineers to bother fixing. (Eg the FS watch APIs). Or weird bloaty preinstalled processes that eat up all your CPU when nothing is happening on your computer. Or... anything that the light of XCode touches.

Linux's bugs are things like the fact that every program has a slightly different set of keyboard shortcuts. Is copy Ctrl+C? Or Shift+Ctrl+C? Can I make it Meta+C (like on macos)? Not everywhere! Only some linux applications let you treat the meta- key as a modifier. (Eg intellij doesn't let you do that.)

Smooth scrolling (if you have hardware to support it) works in all native GTK applications. But not Firefox or IntelliJ. Normal mouse scrolling works everywhere, but scroll distance is wildly inconsistent between applications.

On macos I have homebrew. On linux I have apt. And snaps. And flatpak. But I think we're at war with snaps? I'm lost.

My bluetooth keyboard and mouse are both broken on linux. I'm not sure if the problem is my bluetooth chipset driver, or if the devices both have terrible implementations of bluetooth and they didn't bother testing on linux. Either way, I bet they both work fine on macos.

> Linux has its own issues but it overall is at a completely different quality level from macOS.

Its different alright. But its certainly not uniformly better.


Meh. Apple's software has silly UX deficiencies on top of the deep technical bugs. You can't even have opposite scrolling directions for mice and touchpads unless you install a third-party app. Some animations are extremely long, and on top of that can't be cancelled, resulting in atrocious UX for power user use cases. Apple no longer does subpixel antialiasing, making text look quite a bit worse than Linux on many screens. Etc.


Thanks for the tip. Hello docker!


> The worst part is that […]

The actual worst part is that it is impossible to draw a meaningful conclusion from a problem report like this one:

> Mine also shines from the holes when closed. M1 Air. Noticed happens when browser is open and i closed the lid.

Yeah, it shines from the holes. Also develops a halo. Sometimes two. Maybe three, dunno. Sometimes the laptop can see stars.

Yes, it can be indeed an OS related problem as it is not bug free. Or, it could be a faulty laptop specimen, or – most likely – the user has installed something on their laptop that meddles with the sleep routine activation. For instance, OS X has a power nap feature that allows the OS to wake up briefly from the slumber, quickly do something (e.g. check mail, syncronise messages etc) and go back into slumbering again. Any application can register with the operating system to be awaken during a power nap.

And this is where the problem occurs. Users install tons of jackshite on their laptops, and that stuff tends to run a myriad of pre- and postinstallation scripts that crap all over the file system, the launch service database, and install user and system wide agents and all sorts of other unthinkable things. Including adding themselves into the power nap wakeup list without having a real need for it. At best, the app can drain the battery, and it usually does. At worst, the app bundles an system level extension that is buggy and crashes the system when invoked. But oftentimes, such nonsense does not yield its slot in the power nap run queue easily, which meddles with the laptop going back into the sleep and results in all sorts of bizarre problems.

Enterprise software is the worst offender. Nearly every. single. one. enterprise app installs (or runs) untold amounts of crap all over the file system, and nearly each app comes nowadays with its own software update daemon that is forcibly installed into the launchd database and runs 24x7, including at the power nap time. Is there a need to run a update daemon 24x7 to check for updates multiple times a day instead adding a crontab entry to wake it up once a day? No. Is there a need to install a «helper» daemon that does nothing but phones home non-stop sending undisclosed, non-consentual telemetry (likely PII too and more)? Absolutely no.

Microsoft Office is a prime example of such an invasive pest with Citrix Workspace being one of the worst offenders I have encountered in a while. Pick apart installation bundles for either and take a look at their respective pre- and postinstall scripts. Faeces that both slap onto a working OS install have to be thoroughly scrubbed off after, and they can only be scrubbed off with a hardened spatula. I really wish all downloadable app installs could be sandboxed by default and contained to their sandboxes without being able to ever break out of them. APFS supports COW snapshots, so perhaps the installer could create a sandbox and give each a private copy of system configuration files and databases that only the app could crap into into an oblivion without having an effect on a wider system installation.*


Many of the bugs I'm talking about can be reproduced on a completely vanilla system.


You have to be a little bit more specific than that and quantify and itemise the «many» part. Otherwise it is pure speculations, generalisations, arm chair theories and hand waving.

What is a «vanilla system»? A brand new laptop? Then the hardware is likely faulty, and Apple will replace the faulty computing contraption or refund the purchase. A brand new install on an existing laptop? Likely a hardware fault, a compatibility problem (less likely) or, indeed, a specific or unspecified defect in the software.

I reboot my laptop approximately once a quarter – when a new update or upgrade is released. The average uptime is 3 months. I run a uninterrupted succession of OS X updates and upgrades dating back into 2009 – when I begrudgingly switched away from my Sony Vaio Z17 business laptop running Linux due to the X server randomly crashing on and bricking Vaio Z series laptops in-flight or upon an awake with no available recourse. I have not had to reinstall OS X from scratch even once and still occasionally come across non-OS files on the file system being intact since the original 2009 install. Different kernel versions in between 2009 and now have crashed on me less than ten times. The laptop goes to sleep and then wakes up daily. Zero maintenance. I used to have to reboot it once a year to disable the CSR mode, but not anymore – the stuff just works (except when I need to run dtrace / dtruss which is a less once in two years activity now). Clearly your vague definition «many bugs» does not apply to me.

I can't say the same about the said Vaio laptop that I still happen to have around, and that is in a perfect working condition (sans the obsolete 32-bit CPU and maxed out 4Gb of RAM). It runs a version of Ubuntu but every upgrade is still a gamble. A upgrade to Ubuntu 20 has bricked the laptop in the umpteenth time, and it now requires an autopsy and a full reinstall via booting it from an external eSATA drive via a PCI Express card attached to it.


This isn't handwaving. I'm talking about bugs in the software (not hardware) with rdars attached. For some of them the bug dates back to like 10.5 or so, and the fix is straightforward, but it just hasn't been done. For others the problem is harder (but still possible) to reproduce, but the buggy component is managed by what has been described to me as "one of the somewhat less competent teams" at Apple, with a track record of "extremely stupid design decisions".

Describing them in more detail will deanonymize me so I'm not going to do that.


I mean its the same reason most corporate Windows laptops suck also - not sure why Apple gets a free pass but Windows cops it when similar issues only happen on corporate devices loaded with junk.


It’s uncommon? It still happens to me every time I’ve used a different windows laptop, and I haven’t even been on a MacBook for more than 6 months, so not legacy hardware.

That being said, it happened on my m1 MacBook a few weeks ago - so seems like Apple is no better ;)




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: