Archive

1046 posts · Page 47 of 88. ← Blog

Pratik Dhanave · ·6 min read

Azure-Preferred, In-Memory Fallback

Same interface, two implementations: cloud-backed stores when config exists, in-memory when it doesn't. The whole service boots with zero external dependencies.

Same store interface, two implementations: cloud-backed when config exists, in-memory when it doesn't. Don't let a subscription be a hard dependency for make test, it's the ports-and-adapters move teams skip under pressure.

Pratik Dhanave · ·5 min read

Planners & Thinking: Making an ADK Agent Reason Before It Acts

Post 23 of 26 in "Google ADK, Concept by Concept" — how a planner turns one-shot answers into inspectable plan-then-act reasoning.

Structuring an agent's reasoning: planners that make the model plan-then-act (ReAct-style), the built-in thinking feature, and how a planner improves multi-step tool use over naive prompting.

Pratik Dhanave · ·6 min read

Human-in-the-Loop, Tools, and the Send API

The higher-level building blocks LangGraph stacks on top of the graph engine — pausing for a human, running an agent loop, calling tools, and fanning out dynamically.

The building blocks on top of the core graph: interrupt() to pause for human input, create_react_agent and ToolNode for tool-using agents, and the Send API for dynamic parallel fan-out with a reducer fan-in.

Pratik Dhanave · ·6 min read

Harness Engineering in Go: build the harness, then let Azure supply it

Seven patterns that turn a bare model call into production agent infrastructure — each written first as offline Go behind an interface, so the leap to Azure is a swap, not a rewrite.

Seven patterns that turn a bare model call into production agent infrastructure, each written first as offline Go behind an interface (the seam) so the leap to Azure is a swap, not a rewrite.

Pratik Dhanave · ·8 min read

Budgeting and Forecasting

Financial statements tell you what already happened; budgets and forecasts are how a business reasons about what's going to happen — and that forward view is where finance stops being accounting and starts being strategy. A forecast is a model of the future you can steer by: it tells you when you'll run out of cash, whether a plan is affordable, and what happens if things go better or worse than hoped. For engineers, it's a familiar idea in unfamiliar clothes — building a model, running scenarios, and updating on new data.

Financial statements tell you what already happened; budgets and forecasts are how a business reasons about what's going to happen — and that forward view is where finance stops being accounting and starts being strategy. For engineers, it's a familiar idea in unfamiliar clothes: building a model, running scenarios, updating on new data.

Pratik Dhanave · ·6 min read

Most-Restrictive-Wins: Composing Two Layers of Policy

An agent can tighten a workload's policy, or claim a tool the workload never mentioned — but it can't loosen an explicit forbid. Here's the resolution rule.

An agent can tighten a workload's policy or claim a tool it never mentioned, but it can't loosen an explicit forbid. The subtlety everyone botches: an explicit forbid is a floor, while silence is an absence a tighter layer may fill.

Pratik Dhanave · ·8 min read

SaaS and Recurring-Revenue Metrics

Subscription businesses changed what "revenue" means. When customers pay every month instead of once, a whole new vocabulary appears — MRR, ARR, churn, net revenue retention, the Rule of 40 — and these metrics, not the raw P&L, are how SaaS companies are actually judged. For any engineer working at or evaluating a subscription business (which is most software today), these are the numbers that matter, and the logic behind them explains why SaaS companies behave the way they do.

Subscription businesses changed what 'revenue' means. When customers pay every month instead of once, a whole new vocabulary appears — MRR, ARR, churn, net revenue retention, the Rule of 40 — and these metrics, not the raw P&L, are how SaaS companies are actually judged.