davidpoll.com
Building systems, writing about engineering, and learning in public.
Posts
-
The Temporary Ignorance Superpower
Continue reading →I’m about to start a new role leading a team I’ve never worked with. After a decade at Google, I’ll be the person who doesn’t know where anything is again.
I’m genuinely excited about that.
There’s a window when you join a new organization – maybe 90 days, give or take – where being new is actually a superpower. You can ask the questions everyone else stopped asking years ago. You can wander into long-standing debates and poke at assumptions without anyone assuming you have an agenda. “Don’t mind me, I’m new here” is a surprisingly effective shield for what would otherwise be career-limiting curiosity.
I’ve come to think of this as the temporary ignorance superpower, and I’ve learned to use it deliberately.
-
The Constraints That Create Autonomy
Continue reading →The conventional wisdom about autonomy is simple: remove constraints. Get out of people’s way. Let them figure it out. Trust them to run.
But this often backfires in a specific, predictable way. Teams think they have autonomy. What they actually have is ambiguity.
-
Orderly API Evolution: How to Break APIs Without Breaking Trust
Continue reading →I spent my baby bonding leave this summer with my newest kid — which was the point. But between feedings and naps, I also found myself trying to deeply understand coding agents and the new developer landscape. I wanted to see where this was all heading.
Building MCP servers was one of the experiments that surfaced something I hadn’t fully appreciated: MCP servers have wildly different audiences with wildly different expectations.
Consider the use cases:
- An end user uses a chatbot hooked up to an MCP server to accomplish some task
- A developer uses their coding agent hooked up to an MCP server to help them build something
- A developer builds an agent that uses an MCP server to accomplish something useful, potentially entirely under the hood
- A developer uses an MCP server’s tools directly as an API, bypassing the agent layer entirely
Not all of these may be good ideas, but Hyrum’s Law applies: with enough users, all observable behaviors will be depended on by somebody. That’s an overloaded interface. And when you start thinking about versioning an overloaded interface, suddenly questions like “what constitutes a breaking change?” get a lot messier.
-
The Difficulty Cliff: Why Building Software Has Never Been Smooth (Until Maybe Now)
Continue reading →How every abstraction in software creates walls, and why AI might finally demolish them
The learning curve for building software is a lie. It’s not a curve at all—it’s a jagged mountain range with sheer cliffs where the trail suddenly ends.
You’re cruising along with your no-code tool, dragging and dropping your way to success. Everything’s great until you need that one custom calculation, that one specific integration, that one behavior the platform didn’t anticipate. Suddenly you’re not climbing anymore—you’re standing at the base of a cliff, staring up at “real” programming.
Welcome to the difficulty cliff. After so many years building developer platforms, I’ve come to believe these cliffs aren’t bugs—they’re the fundamental challenge of software abstraction. Every tool that makes development easier eventually hits a wall where its abstraction breaks down.
But what if AI could finally smooth this curve? Not by building better walls, but by eliminating them entirely?
-
The Art of Letting Go: Why Your Platform Needs Less Control Than You Think
Continue reading →After nearly two decades building developer platforms, I’ve learned that the moment you truly succeed is when developers find magic in places you didn’t mean to put it.
This is terrifying. It’s also the point.
I’ve been thinking about this a lot lately as I watch the next generation of platforms struggling with how much control to maintain. The instinct is always to constrain, to guide, to protect developers from themselves. We add guardrails, validation, prescribed patterns. We tell ourselves we’re preventing footguns. Really, we’re preventing discovery.
subscribe via RSS