Needle

Notes from building a system monitor for the Mac: field guides that help whichever app you run, and thinking out loud about what the machine's numbers actually mean.

Thinking out loud

The watchdog and the journal: an app that debugs itself

“It froze for a second” is a mood until something writes it down. How Readout logs its own stalls and failures on your disk, and never transmits them.

August 19, 2026 · 1 min read

Thinking out loud

One notification, ever: against update nagging

A new version gets one sentence, once, and never repeats. Why restraint keeps the notification channel credible for the message that will someday need it.

August 18, 2026 · 2 min read

Thinking out loud

The fastest sample is the one you don't take

Readout now samples only what's displayed: 0.0% CPU with everything off. Auditing who reads each number also caught a fan-safety bug hiding in the waste.

August 17, 2026 · 2 min read

Field guide

How Mac apps update themselves, and how to tell it's done safely

The App Store, Sparkle, Homebrew, or the app doing it itself: four update machines, and the one question that separates safe from sloppy.

August 15, 2026 · 2 min read

Field guide

How to read your Mac's fan speeds: what RPM actually tells you

2,300 RPM is a hum on one Mac and near-takeoff on another. Every fan carries its own range, and the range, not the number, is the reading.

August 13, 2026 · 2 min read

Field guide

Stats vs iStat Menus: which Mac system monitor?

The free open-source one, the paid one everyone's used for a decade, and where a narrower third option fits. An honest comparison, limits included.

August 11, 2026 · 2 min read

Thinking out loud

What a menu bar app actually costs you

I profiled my own monitor and the cost wasn't where I assumed. Why wakeups beat percentages, and how to check any always-running app yourself.

August 9, 2026 · 3 min read

Field guide

Is it safe to control your Mac's fans?

Yes, with an asterisk: the hardware protects itself in ways software can't override. What actually goes wrong, and what to ask of any fan app.

August 7, 2026 · 3 min read

Field guide

What's using your network on a Mac: a field guide

Activity Monitor, nettop, menu bar monitors and firewalls: every way to find out which app is uploading, from the built-in tools up.

August 6, 2026 · 3 min read

Thinking out loud

The dead-man switch: what happens when a fan app dies

An app that commands your fans owes you an answer to one question: what happens when it stops running? Designing for my own absence.

August 5, 2026 · 2 min read

Thinking out loud

The sensor that lied: a 52° mystery in the menu bar

One sensor on my Mac reads 52° all day, every day, and kept winning "hottest." It wasn't lying, exactly. It was never a thermometer at all.

August 3, 2026 · 2 min read

Thinking out loud

A number you can't have: GPU temperature on Apple Silicon

Monitoring apps show a GPU temperature on M-series Macs. Apple Silicon doesn't expose one; the CPU and GPU share a die. Where that number comes from.

August 1, 2026 · 2 min read

Thinking out loud

The monitor must not be worth monitoring

A system monitor that costs real CPU is a parasite with a dashboard. The budgets Readout holds itself to, and the tricks that keep it under them.

July 28, 2026 · 2 min read

Thinking out loud

One slot: the case for a single menu bar item

macOS pads every status item, so four widgets read as four apps and waste the scarcest pixels on the Mac. Combining them was mostly deleting.

July 26, 2026 · 2 min read