A Glass Half Full
A short verse on the choice between half-full and half-empty — I think it is a very important choice. It is a fundamental choice. It affects you more in your life, Much more than in your work.
All posts, including hidden.
A short verse on the choice between half-full and half-empty — I think it is a very important choice. It is a fundamental choice. It affects you more in your life, Much more than in your work.
Joining NexHealth as Director of Engineering. Software and AI are eating the world — it's time they ate healthcare too. The mission: build the infrastructure layer that lets EHRs, doctors, developers, and patients actually exchange data.
After more time pair-coding with Claude Code, the awe wears off. It's an overly eager junior with raw smarts and no taste — fast, useful for onboarding, but prone to ridiculous code that you'd reject from a new grad.
A Parley transcript on Python's asyncio, Trio, and structured concurrency. The arc is almost comical: callbacks to promises to async/await to TaskGroups — we hid the tree structure of concurrency, then had to put it back. We should have stuck with future monads.
From English jus soli through Dred Scott to Wong Kim Ark, gathering the historical context around Trump's executive order. The merits are less clear-cut than contemporary news suggests once you go back to the original sources.
Leaving Meta after a decade. The Facebook of the Red Culture Book — "What would you do if you were not afraid?" — is not the Meta of muscular energy and top-down NFT, Messaging Interop, and Metaverse. A goodbye, and a question worth carrying into the next chapter.
Spring in Phoenix, the Palo Verde trees in bloom, and the Leica Q2 finally clicking — small package, fast lens, physical dials that let you pre-set the shot before raising the camera.
Five days, ten thousand lines of Lua, no prior experience with the language. Claude Code is not auto-complete — it's a giant pattern-matching machine that needs grounding through tests and architecture. The 25x figure is cheeky, but the shift is real.
Introducing Parley.nvim: a Neovim plugin that turns chatting with an LLM into a living, editable transcript. Trees of follow-up questions, annotations, and context compaction via assistant-summarized lines — built collaboratively with Claude Code.
First real run with Claude Code: 500 lines of Lua changes from someone who hadn't written a line of it before. Not AGI, not a junior engineer replacement — a powerful, imprecise statistical machine that makes knowledge workers dramatically more effective.
The stock ChatGPT app is awful for organizing long research threads. Running gp.nvim in Neovim instead — full transcript, freely editable, customizable syntax highlighting — turns a chat into the building blocks of a real research report.
Six years inside WhatsApp's improbably quiet Menlo Park building, where the motto was Keep It Simple and the F word was Focus; and where you hot-loaded code straight into production, no code review. It worked.
Notes from the Death Valley Dark Sky Festival — amino acids in meteorites, planets around every star, and the practical limits of a Leica Q2 capped at 8 seconds of exposure when you really want twenty.
Five aspects worth weighing when picking a career or changing jobs: money, power, domain, people, growth. And one last gut check — are you having fun? If Mondays don't energize you more often than not, you're probably in the wrong place.
How to run a GitHub Pages blog from a private staging repo with a publish.sh script — drafts in private, posts in public, and an identity that's not trivially traceable back to you. A practical walk-through, not a manifesto.
A new-Mac setup checklist for the terminal-and-Neovim crowd: Ghostty, zsh, Oh My Zsh, yadm for dotfiles, Homebrew bundles, and the AI tools (Claude Code, Codex, Gemini CLI) now sitting alongside the classics.
A short note on why I'm starting to write things down — partly the urge to document, partly a reaction to the Elon-beast-mode mood of the moment. The rest will follow.