Skip to content
A Geiger counter for allocations
Branch: master
Clone or download
Type Name Latest commit message Commit time
Failed to load latest commit information.
LICENSE initial commit Aug 12, 2019 remove mention of tone Aug 12, 2019
geiger.go Add more geiger Aug 12, 2019
geiger_test.go Add more geiger Aug 12, 2019


GoDoc Go Report Card

go get

Inspired by this tweet. Just call go geiger.Count() at the top of your main function. Don't worry, if you start tasting metal, you're probably just delusional.

This package is in a pretty unpolished state. First of all, it emits a constant tone, not a series of clicks like a real Geiger counter, because I couldn't figure out how to get the beep package to click the way I wanted. (EDIT: fixed, thanks @klauspost!) Second, the package itself incurs a non-zero number of allocations per second (~100 on MacOS, presumably different on other platforms) which throws off the reading. Third, it's completely unconfigurable: you can't adjust the "sensitivity," and you can only measure the number of objects allocated per second (as opposed to, e.g., the number of bytes allocated per second).

Still, I think the general idea of "use sound to alert the programmer that they're doing something stupid" has merit. If enough people agree, maybe we can work together to refine it into an actually useful tool.

You can’t perform that action at this time.