status: not fine

macOS Is Not Fine

A technical postmortem on the decline of Apple's desktop operating system - and why the community that built its reputation is finally speaking up.

macOS 14.xApple Siliconpublished 2025
01

The 8GB RAM Cope

Apple finally killed the 8GB floor in late 2024, standardizing 16GB across the Pro lineup. Good. But do not mistake a belated correction for absolution. For years the company insisted that "8GB on Apple Silicon is comparable to 16GB on other systems" - a claim so technically bankrupt it became a permanent scar on the brand's engineering credibility.

A $1,799 MacBook Pro shipped with 8GB in 2023. A $6,999 Mac Pro used DIMMs Apple could not solder down - the only reason it escaped the same degradation. Meanwhile, a Chromium browser consumed 2-3GB, a Docker daemon ate another 1-2GB, and every meaningful development toolchain pushed available memory past its limit. The copeslop marketing required to defend the indefensible: invoking memory controller bandwidth as if throughput and capacity were interchangeable, comparing swap speeds on a 7GB/s SSD as if paging were free, and pretending the $200 16GB upgrade (chips Apple bought for ~$25) was justified by "architectural efficiency." It was not architecture. It was margin protection dressed up as innovation. They fixed the outcome, not the thinking - and the thinking is what we will remember.

sysctl hw.memsize  # 17179869184. Finally.
02

Filesystem Restrictions

System Integrity Protection was introduced in OS X El Capitan as a measured security boundary. A decade later it has metastasized into a comprehensive lockdown that treats the owner as a threat actor. The Signed System Volume renders /System immutable - not just protected, but on a cryptographically sealed APFS snapshot that reboots to a pristine state after every update.

You cannot touch /usr/bin, /System/Library, or any system directory without disabling SIP entirely - and even then, SSV reverts every change on the next update. /etc is a symlink to a private directory. TCC (Transparency, Consent, and Control) has turned the OS into a permission-nag factory that requires explicit approval for every file access, screen recording, and input monitoring event - approvals that expire silently with each OS update. The machine you paid thousands for is increasingly a platform you rent from Apple, not one you own.

csrutil enable --without fs  # Your warranty is now void
03

Filesystem Hostility: The Apple Silo

MacOS has never shipped native write support for NTFS. Not in 2001, not in 2026 - a deliberate omission spanning a quarter century of interoperability with the dominant desktop filesystem on earth. The support that does exist is a hidden, undocumented, and unstable sysctl toggle that corrupts data under load. The message is unmistakable: they do not want you connecting non-Apple drives.

Ext4, btrfs, and ZFS are not supported either. The only first-class filesystem on macOS is APFS - a proprietary volume manager built for flash storage and nothing else. To read a drive from any other operating system, the user must install a third-party kernel extension (macFUSE, ext4fuse, NTFS-3G) that may or may not survive the next OS update, may or may not be signed for the latest SIP policy, and may or may not crash the kernel on unload. These FUSE drivers are a taxonomic nightmare: they introduce double-caching, lack proper ACL support, break on symlink-heavy directories, and never handle the case where the same drive is hotplugged between Windows and macOS repeatedly. The user is expected to debug kernel panic logs just to copy a file off a USB drive formatted on literally any other computer in the world. This is not an oversight. It is a deliberate moat: make every non-Apple drive fragile enough that users eventually give up and stay inside APFS. For anyone working in a multi-OS environment - and that describes every developer, every researcher, every sysadmin - this is not a limitation. It is a declaration of hostility toward the very workflows that make a general-purpose computer worth owning.

brew install --cask macfuse && brew install ntfs-3g  # Welcome to the driver lottery
04

Software Lobotomy

System Preferences was replaced by System Settings - a bizarre port of the iPad Settings app featuring nested panels that hide configuration options, a search that returns fewer results than the feature it replaced, and a layout clearly designed for a touch screen you do not have. This is not an evolution. It is a lobotomy administered for design consistency at the expense of utility.

iTunes was murdered and replaced by three distinct apps (Music, TV, Podcasts), none of which match its feature set. The Finder has accumulated twenty-five years of architectural debt - still copying files with a modal progress dialog, still inconsistent about merging folders, still hiding library paths by default. Notification Center shows widgets nobody asked for. Stage Manager was shipped, ignored, and kept. Every release removes advanced options (right-click Quick Actions, expanded save dialogs, Library folder visibility) while adding features for users of an operating system that does not run on Macs. The trajectory is clear: macOS is being iOS-ified one release at a time. The destination is an appliance OS that does not need a terminal because it will not let you have one.

defaults write com.apple.Finder AppleShowAllFiles true
05

WindowServer Bloat

The WindowServer process exists to do one thing: composite window contents onto the display. It is a presentation layer - a thin veneer between applications and the GPU. In practice it consumes 500MB to 2GB of resident memory and regularly pegs a CPU core rendering transparency effects, shadow passes, and offscreen buffers that should have been GPU-constant-time operations.

Quartz Extreme promised hardware-accelerated compositing that would offload all this to the GPU at negligible cost. Somewhere that promise was replaced by a render server that allocates a fresh IOSurface for every layer, every blur, every backdrop material, and every SwiftUI shadow. The mission-control animation re-renders the entire desktop. The menu bar blur triggers a full backing-store redraw. Each window resize in a non-optimized app retriggers the compositing pipeline from scratch. What should be a few megabytes of framebuffer state becomes a hierarchy of IOSurfaces that the kernel needs to chase across the graphics stack. It is a compositor designed for an era of unlimited VRAM - running on machines that share memory with the CPU. The worst part: it has been getting heavier, not lighter, for a decade. A process with one job should not be the second-largest memory consumer on a developer's machine.

sudo memory_pressure -l critical  # WindowServer does not care
06

Irresponsible CPU Scheduling

macOS schedules threads as though every core has the thermal headroom of a Mac Pro blade. On fanless chassis - the MacBook Air, the 13-inch Pro before the fan was its only differentiator - this results in a predictable pattern: burst, heat spike, throttle, stutter, repeat. The kernel's power-management framework treats thermal capacity as an afterthought to be handled by the hardware, rather than a scheduling constraint to be planned for.

The consequence: indexing kicks in and pegs a core at max frequency for thirty seconds. The fanless chassis heats up. The skin temperature climbs. The scheduler, rather than migrating the work to a cooler core or deprioritizing the indexing task, keeps the hot core pinned. Eventually the thermal throttle kicks in - not at the OS level but at the hardware level, dropping frequency by 30-40% in a single step. The user wonders why their cursor stutters during a Spotlight reindex. On Intel this was bad. On Apple Silicon it is more transparent - the hardware throttling is smoother - but the scheduler's fundamental disregard for thermal budget remains unchanged. iOS, running on the same cores, manages this far better because the scheduler there was written for a world where thermal limits are the ceiling, not an edge case. macOS does not have that scheduler. It does not appear to want one.

pmset -g therm  # You do not want to see this after a Spotlight reindex
07

Broken Head-Tracked Spatial Audio

On iOS and iPadOS, head-tracked spatial audio is genuinely impressive. The system references the device's integrated IMU - accelerometer and gyroscope data sampled at hundreds of Hz - to anchor the soundstage to the real world. Turn your head, the soundstage stays fixed. Rotate the device itself, the soundstage rotates with it. The result feels physically present.

On macOS this entire pipeline is second-class. MacBooks have the sensors - the same IMU hardware exists on the logic board - but the OS integration is inconsistent at best and broken at worst. The 'follow device' option is either absent or silently drops frames, leaving the soundstage drifting slowly until you recenter manually. The result is an audio anchor that wanders off-axis over minutes, requiring the kind of constant recalibration that makes the feature feel like a prototype. It is a textbook Apple ecosystem oversight: the Mac is treated as a stationary desktop in software even when every MacBook ships with the same sensors that make the feature work on iPad. The hardware is there. The sensor data is there. The OS simply does not bother to wire them correctly. Spatial audio on macOS is a checkbox feature, not an experience. On a platform that charges a premium for ecosystem cohesion, that gap is embarrassing.

sudo log stream --predicate 'subsystem contains "com.apple.audio.spatial"'  # You will not like what you see
08

loginwindow Silent Failure

The loginwindow process is the gatekeeper of your desktop session. It manages the authentication window, launches the Dock, Finder, and all your login items, and initializes the Aqua UI. When it works, you barely notice it. When it fails - and it fails often - you get a black screen with a cursor and nothing else. No error dialog. No fallback. No recovery suggestion. Just a frozen desktop that forces a hard reboot.

The failure mode is almost always the same: a startup item hangs during launch, usually a background agent that registers a Mach service or tries to contact a server on a slow network. loginwindow waits for it. And waits. The WindowServer is up, the GPU is initialized, the cursor moves - but no Dock, no menu bar, no desktop icons, no way to launch Activity Monitor or kill the offending process. The user is locked out of their own session with no recourse. On any well-designed system, a hung launch agent would be timed out after a few seconds and logged. On macOS, the entire session is held hostage by the slowest starting item. A single misbehaving login hook should not be able to brick the desktop. Yet here we are, holding the power button down, again, because Apple cannot be bothered to put a watchdog timer on its own session manager.

sudo launchctl list | grep -v com.apple  # One of these is the reason your screen is black
09

Spotlight Resource Hogging

The mds and mdworker processes exist to index your filesystem so you can search it instantly. In theory. In practice they consume 100% of a CPU core for hours at a time, ram their memory working set into the multi-gigabyte range, and drain the battery on a MacBook Air in under two hours - all while indexing files that most users will never search for and that Spotlight's own search engine struggles to find.

Every file system event triggers a reindex of the affected directory. Every time you rename a folder, move a project, or attach an external drive, mdworker spawns a fresh worker thread and sets to work on metadata extraction. On Apple Silicon this is less visibly disruptive than on Intel - the efficiency cores absorb some of the damage - but the power impact is measurable: an mds spike draws 8-12W on a chip whose total thermal budget is 25W, wasting nearly half your power envelope on generating search metadata. The irony compounds when you actually use Spotlight to find something and it returns results from the Mail app from 2019 instead of the file you opened five minutes ago. The indexing is both maximally expensive and minimally useful. It consumes resources like a production workload and delivers like a prototype. It is the worst possible combination of characteristics for a background service, and it ships on every Mac by default.

sudo mdutil -a -E  # Rebuild the index. Again. Still broke.
10

The Raycast Usability Tax

Spotlight is so functionally deficient that macOS is practically unusable for developers without installing a third-party replacement. Raycast and Alfred exist not because developers enjoy installing launchers, but because the built-in search is too slow, too imprecise, and too rigid to navigate a development workflow. The native search has been neglected for so long that the community has effectively outsourced core OS navigation to a startup.

Spotlight cannot calculate in its search field. It cannot run a terminal command. It cannot search clipboard history. It cannot manage window positions. It cannot search the web without opening Safari first. It cannot be extended with plugins. It cannot be configured to exclude noisy directories without editing plist files by hand. Every one of these gaps is filled by a third-party tool that the developer must discover, download, install, and learn - a process that repeats for every new developer, on every new machine, on every OS reinstall. The result is an unacknowledged tax: hours spent configuring tools that should be unnecessary, all because Apple refuses to invest in the one interface that every user touches a hundred times a day. Raycast is excellent. The fact that it has to exist is an indictment.

open -a Raycast  # The real macOS launcher ships as a third-party dependency
11

Rituals of Shame

A standard macOS update follows this ceremony: download a multi-gigabyte payload over a connection Apple assumes is fiber; watch "Preparing..." spin for an indeterminate duration; submit to restart one, which runs a firmware update on a gray screen with a progress bar that lies; wait for restart two, which shows an Apple logo and a bar that fills at a constant rate regardless of actual progress; then wait for "Configuring your Mac." Total elapsed time: twenty to sixty minutes, during which the machine is unusable.

Compare: on Linux, sudo apt update && sudo apt upgrade completes in thirty seconds without a restart. Kernel patching is handled live via Ksplice or Livepatch. On Windows - Windows, of all platforms - updates download in the background and schedule a single restart at the user's convenience. macOS demands your full attention for an hour in 2025. There is no update-and-shut-down option, only update-and-restart. The experience is engineered to make you dread installing security patches, which is precisely the wrong incentive to create.

while true; do sudo softwareupdate -i -a; sleep 604800; done  # Abandon hope
12

Bloat & Ad-Delivery

The operating system now ships with Apple Music, Apple TV, Apple Books, Apple Podcasts, Stocks, Voice Memos, Freeform, Journal, Chess, and a screen-capture tool called Screenshot that duplicates functionality that already existed. These are not optional. They ship in the base system image and consume disk space - and in some cases, launch on login - whether you use them or not.

App Store search results are fifty percent ads. System Settings features an Apple Account banner, repeatedly suggests Apple Pay setup, promotes iCloud+ with full-page dialogs that reappear after dismissal, and periodically nudges enrollment in the Apple Card credit product. Siri Suggestions mine your usage patterns to surface helpfully timed tips that are architecturally indistinguishable from ads. The OS has become a delivery vehicle for service revenue. Every login, every settings panel, every Spotlight search is an opportunity to upsell. The machine you bought is the product now.

sudo launchctl disable system/com.apple.chronograph  # If only it were that simple
EOF

The Mac was once the computer for people who cared about how their tools worked. It is now a platform whose primary engineering objective is to drive services revenue while maintaining just enough professional credibility to keep developers buying $3,599 laptops out of habit. The hardware is genuinely impressive. The software is being neglected in plain sight. A machine that costs more than a round-trip transatlantic flight should not ship with 8GB of RAM, should not require a PhD in csrutil to modify its own filesystem, and should not ask its owner to budget an hour for the privilege of installing security patches. The community is tired. And the silence from Cupertino suggests they are tired of listening.