Articles & Notes
Product engineering, system boundaries, and the tools I ship with.
Why x70 Has Two Portals
The x70 client portal and staff Admin share one business lifecycle, but separating their interfaces and authority made the agency system simpler and safer to operate.
20
Latest
Recent essays — models, tooling, and product notes.
Archive
2026
15 posts
Publishing to LinkedIn Is a State Machine
Building the x70 LinkedIn desk made the remote API call look like the easy part; truthful research, human approval, scheduling, reconnection, and remote publication all need distinct states.
Thirty-Six Browser Tools, One Typed Catalog
x70 Tools launched with 36 local browser utilities, but the part that keeps the collection maintainable is a single typed registry shared by navigation, metadata, routes, and discovery.
A Publish Button Is Not a Release Pipeline
The x70 blog Admin became useful when writing, reviewing, scheduling, Git changes, and deployment evidence stopped being compressed into one optimistic action.
What x70 Social Needed Before It Felt Like a Product
Dashboard polish was not the turning point for x70 Social. The product became coherent when guest access, realtime engagement, developer APIs, and AI moderation each received a precise boundary.
Public Sites and Private Portals Need Opposite Crawler Policies
Applying one SEO checklist to every x70 property would have been wrong: public product pages should be discoverable, while authenticated operational surfaces should make their non-public status explicit.
Why the x70 App Collapsed Onto One Realtime Data Boundary
Moving authentication and application state onto Convex reduced the number of persistence systems in the x70 App, but the real lesson was to migrate boundaries and call sites—not just schemas.
What WWDC26 Changed About the Local-Model Boundary
Apple's 2026 model APIs made local, private-cloud, and third-party inference choices part of one native architecture instead of separate product bets.
One Brand CDN, Many Independent Sites
Centralizing x70’s identity assets removed a quiet source of drift across the ecosystem, while leaving each product free to keep its own layout, copy, and release cycle.
Agent Approval Is a Ladder, Not a Switch
Cursor 3.6’s layered Auto-review design is a useful reminder that agent autonomy should depend on the action, the sandbox, and the available evidence—not one global yes-or-no setting.
Gemini 3.5 Flash and the Managed-Agent Shift
Google's Gemini 3.5 launch paired a new model with managed execution, showing how much of an agent product now lives outside the model itself.
Codex on Mobile Is an Approval Surface
Bringing Codex to a phone matters less for writing code than for steering, reviewing, and approving asynchronous work at the right moment.
When a Coding Agent Becomes Infrastructure
Cursor's SDK exposed its agent harness as a programmable service, making the infrastructure around the model the more interesting product boundary.
GPT-5.5 and the Long-Horizon Test
GPT-5.5 made long-running agent work the headline. The harder question is how to evaluate whether an agent can finish responsibly.
Every Piece of Case-Study Media Needs a Job
Rebuilding the portfolio’s Work pages taught me that more screenshots do not make a stronger case study; each image, video, and document has to prove a specific part of the story.
Why This Portfolio’s Content Lives With the Code
Moving the portfolio’s editorial content out of a hosted CMS made publishing less magical, but it also made every public claim reviewable, versioned, and easier to keep in sync with the product.