Uses
The hardware and software I actually open every day, and why.
Reviewed 06 09 2026|No affiliate links
Desk
- MacBook Pro 16″ M3 Max36GB. The RAM matters more than the cores when you keep four Chrome profiles and a Docker stack open.
- LG UltraFine 27″Single display, not two. Fewer places for a Slack notification to hide.
- Keychron K3 — brown switchesLow profile, quiet enough for a call I forgot to mute.
- iPhone 15 ProThe on-device test unit. A simulator will lie to you about haptics, camera, and real network conditions.
- Pixel 8Kept next to the iPhone for the same reason — Android is where React Native's cross-platform promise actually gets tested.
Editor
- VS CodeVitesse Light, JetBrains Mono at 14px, line height 1.7. Format on save, no exceptions.
- BiomeReplaced ESLint and Prettier on new projects. The speed difference is not subtle.
- Ghostty + FishStarship prompt, trimmed to branch and node version only.
- Xcode + Android StudioOpen for the simulators and native build tooling, not for writing code in either.
- Expo CLI / EASThe actual dev loop for the React Native work — prebuild, dev client, and OTA updates without a store release.
Measuring
- Chrome DevToolsPerformance and Coverage panels. Almost everything I've written about performance started in one of the two.
- WebPageTestThrottled mobile, Cape Town test location. Lab numbers from a fast desktop are a story, not data.
- CrUX + Vercel AnalyticsField data settles arguments that lab data starts.
- React Native DevToolsReplaced Flipper in the stack. Component tree, network, and the profiler in one place, without a separate app running.
Shipping
- This siteNext.js, self-hosted fonts, deployed on Vercel. No client-side framework on article pages.
- StorybookWith visual regression. The subject of one of the more useful things I've written.
- EAS Build + SubmitCloud builds for both platforms from one config, then straight to store submission without touching Xcode or Android Studio's own release flow.
- TestFlight + Play ConsoleWhere a build actually lands in front of a client before it reaches the store.