# Bruce Blog

- [Leave a trail for the next developer](https://bruce.flydog.ai/blog/why-we-build-in-public) — The founding issue of the Bruce blog: design, product, interaction, engineering and decisions, written so developers and their agents can build on the work.
- [One night with iPhone Duo: measure first, then let the system lead](https://bruce.flydog.ai/blog/iphone-duo-one-night) — Two displays, one hinge, six poses, and screenshots due by April 2027. We measured the Bruce iPhone app in every state, removed its drawn headers, kept content off the fold, and wrote down every wrong turn.
- [One prompt, nine agents: grading Bruce’s animated stickers](https://bruce.flydog.ai/blog/one-prompt-nine-agents) — Nine coding agents received the same one-sentence brief, with no follow-ups or retries. We checked the delivered SVGs in a real browser and ran an anonymous blind review. The costliest mistakes were the silent ones.
- [Tracing a Tauri window dragging slowdown](https://bruce.flydog.ai/blog/tauri-window-dragging) — A multi-monitor centering bug led to blank-window controls, native parent relationships and a titlebar regression. What we measured, where the investigation went astray, and how we checked the repair.
- [Good job, Bruce: a name, a companion, a puppy](https://bruce.flydog.ai/blog/good-job-bruce) — The names, the driving-dog joke and the trust behind Bruce. From early exploration involving Grok Bot to ice-blue C and native SVG, keeping the puppy’s story together.
- [Distance, not time: investigating terminal scrolling](https://bruce.flydog.ai/blog/distance-not-time) — Seven rounds of measurements could not explain a heavy scroll. The turning point was measuring how far the view moved for the same gesture.
- [Where did the mouse-up go? Investigating a missing click](https://bruce.flydog.ai/blog/the-missing-release) — A light tap failed, while a firm press restored it. Following the event chain revealed a missing release before the page, and a recovery policy that shaped everything after it.
- [Why one data store has one Agent](https://bruce.flydog.ai/blog/one-store-one-agent) — A session appeared on the desktop but not on the phone. Two parallel services led us back to ownership, discovery and explicit client context.
