John Nunemaker

@jnunemaker@ruby.social
302 Followers
110 Following
613 Posts
You write tests to catch bugs. You use feature flags to survive them in production.
The best Rails devs don’t write clever code. They write boring code that never breaks.
Using feature flags is like having an “undo” button for your deploys.
Rack middleware is so awesome. I love the idea of adding to the env for downstream consumers. flipper and flipper cloud do it like crazy to work together efficiently. Just added a middleware to tag all appsignal requests with the requesting flipper gem version, ruby version, etc.
Pro tip: if you delete a bunch of data from mysql on @planetscale, you have to force a rewrite to actually free the space up. You can do it as easily as make a branch, ALTER TABLE telemetry_requests COMMENT 'Optimize table size - 2025-07-12';, create deploy request and done.

Flipper Cloud is still small. It does like 200 req/s to support polling (reads), 20 req/s to support telemetry submission (writes), and maybe 0.3 req/s to the web UI.

Servers are way more chatty than humans. Always keep your APIs snappy and design them well.

✋ Raise your hand if you've used screen in the last month. Not A SCREEN, but the linux screen command. I had forgotten about it. Just did for a long running task that imports bandwidth usage per podcast for fireside. So easy to resume and no more `caffeinate -d` on my laptop.
Worth noting the throughput is like 20x that. I only trace 5% of requests in appsignal.

Just slayed the API endpoint performance for flipper cloud. Added memcached around the adapter used to deliver gate data.

Should save me $2-3k/month.

Running prod without feature flags and other runtime controls is like driving without brakes. You’ll be fine… until you’re not.

Yesterday I turned off some purging with a flag to shed load during a big db migration.

×
Anthropic is a real one for this. Check out their console message if you are bored. I'm sure they copied someone else but this is a brilliant idea.

@jnunemaker my client has something like that as well, but sadly no responders… 🤔

Also something like that in the html header as a comment, also no responders…🤪

But maybe one day! #fingerscrossed