Using Go for Mobile Apps
Summary
David’s Obsessions chronicles a year of building Digital Carrot with Go Mobile, using Flutter for the UI and a Go backend. The post details a Protobuf-based communication stack between Flutter, platform code (Swift/Kotlin), and Go, plus how Go interfaces with native APIs. It weighs the positives (server-style integration, clear business/presentation boundaries, abundant libraries, protocol flexibility) against the negatives (performance overhead from Protobuf, added complexity, larger binaries) and discusses challenges like bi-directional notifications, async behavior, and Go mobile quirks (time zones, DNS issues on iOS).