Redesigning the macOS On-Screen Keyboard
How I redesigned the macOS on-screen keyboard with Claude.
I build abstractions that make hard things easy to build and use: Kafka consumers, domain models, AI agents in Go, and a way to talk to my son.
Senior Principal Architect at Gojek. I’ve had ALS since 2019.
Home has been , , , and .


How I redesigned the macOS on-screen keyboard with Claude.
xapi is a lightweight Go library that brings type safety and simplicity to building HTTP APIs. It reduces boilerplate with generics, middleware, and optional capabilities.
A communication assistant for people living with neurodegenerative conditions like ALS, MND, or other speech & motor difficulties.
Go's error handling philosophy is simple, but some applications need more than just error strings. By combining error wrapping, custom error types, and structured error metadata, you can build maintainable, and observable Go applications.
xkafka is a Go library that brings HTTP-like abstractions to Apache Kafka. It simplifies producing and consuming messages by using familiar concepts like handlers and middleware, reducing boilerplate and letting you focus on application logic.
September, an assistive communication app