Archive

1046 posts · Page 53 of 88. ← Blog

Pratik Dhanave · ·8 min read

Growth and Growth Loops

The funnel has a hidden flaw as a mental model: it's a leaky bucket you must keep refilling from the top, forever. Growth marketing's key insight is to look for loops instead — mechanisms where the output of using the product feeds back into acquiring more users, so growth compounds rather than requiring ever-more input. Combined with an experimental, data-driven mindset that engineers take to naturally, this is how modern products grow systematically rather than by pouring money into the top of a funnel.

The funnel has a hidden flaw: it's a leaky bucket you must keep refilling from the top forever. Growth marketing's key insight is to look for *loops* instead — mechanisms where using the product feeds back into acquiring more users, so growth compounds. Combined with an experimental mindset engineers take to naturally, it's how modern products grow.

Pratik Dhanave · ·11 min read

Generics: Type Parameters and Constraints

How type parameters and constraints actually work in Go 1.18+ — writing functions and data structures that are type-safe across many types, when the compiler can infer type arguments for you, and the harder question of when a plain interface is still the better tool.

How type parameters and constraints actually work in Go 1.18+ — writing functions and data structures that are type-safe across many types, when the compiler can infer type arguments for you, and the harder...

Pratik Dhanave · ·6 min read

Deploying an ADK Agent: One Command to Cloud Run and Agent Engine

How `adk deploy` builds, pushes, and ships an agent in a single step — and the ack-after-invocation rule that keeps event-driven agents reliable.

Deploying an agent: adk deploy with its cloud_run and agent_engine subcommands, containerizing the app, and reliability rules like ack-after-invocation so failures are redelivered, not dropped.

Pratik Dhanave · ·6 min read

LangGraph Is a Pregel Program: Shared State vs Message Passing

The foundational mental model — why "the graph" is a Pregel program, and how shared state differs from message passing.

LangGraph is shared-state, not message-passing, and both models descend from Google's Pregel/BSP: work advances in supersteps that end at a synchronization barrier. Get this mental model first and the whole API stops being magic.