Archive

1290 posts · Page 64 of 108. ← Blog

Pratik Dhanave · ·6 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 · ·7 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 · ·7 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 · ·6 min read

Correlation Is Not Causation — Why Engineers Keep Getting This Wrong

Every data-driven engineer knows the phrase "correlation is not causation," and almost everyone violates it anyway — in A/B test readouts, in metric dashboards, in ML models used to make decisions. The gap between "these move together" and "this causes that" is where enormous amounts of money and effort get wasted on changes that don't work. Causal inference is the discipline of crossing that gap rigorously, and this series builds it from first principles for people who build systems.

Everyone knows 'correlation is not causation' and violates it anyway — in A/B readouts, dashboards, and ML used to drive decisions. The real difference (observing vs intervening), the three reasons correlation appears without causation (reverse causation, confounding, selection), and why it's an engineering problem.

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 · ·7 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 · ·7 min read

Interpretability in Practice — Choosing Methods and Avoiding Traps

Interpretability has a toolbox — intrinsic models, feature importance, LIME, SHAP, counterfactuals, saliency maps — but knowing the tools isn't the same as using them wisely. The real skill is matching the method to the need, reading explanations with appropriate skepticism, and avoiding the traps that turn interpretability into false confidence. This closing post is the practical judgment the series was building toward: how to actually do interpretability without fooling yourself.

Knowing the tools isn't using them wisely. Matching the method to the need (model, level, audience), the traps that cause false confidence (explanations aren't truth, explanation isn't causation, plausible isn't correct, interpretability-washing), and the skepticism that separates genuine understanding from a rubber stamp.