davidpoll.com
Building systems, writing about engineering, and learning in public.
Posts
-
The Difficulty Cliff: Why Building Software Has Never Been Smooth (Until Maybe Now)
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
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.
-
The Only Way to Build Trust Is to Give Trust
A former report reached out recently. It was one of those unexpected messages that stops you mid-scroll, the kind that makes you put your phone down and actually think.
They wanted me to know I’d been a good manager. More specifically, they remembered how I’d believed in their technical leadership ability early on—perhaps before they believed in it themselves.
I sat with that for a while. Not because of the compliment, but because it crystallized something I’ve been practicing and preaching in one-on-ones since becoming an engineering manager: The only way to build trust is to give trust.
It sounds almost tautological when you write it out. Of course trust requires trust. But here’s what I’ve learned in my decade as an engineering manager, across multiple companies, one failed startup, and three kids: most of us do it backwards. We wait for trust to be earned. We require proof before we extend belief. We manage risk instead of enabling growth.
And in doing so, we become the limiting factor in our own organizations, relationships, and lives.
-
The 4p Developer: The Missing Layer in Platform Thinking
Every successful platform has them. They’re worth billions. Yet we don’t even have a name for them.
I’m talking about developers who build tools for OTHER developers on your platform. Not your internal team. Not external app developers. The fourth party that makes platforms explode.
I’ve been calling them “4p developers” throughout my career building developer platforms at Microsoft, Parse, Firebase, and Google Cloud. I wanted to share this framework because if you’re building a platform without thinking about them, you’re leaving massive ecosystem value on the table.
-
Twelve Years Later
My last post here was about building a data binding framework for Android. That was March 2013. Android was on KitKat, React hadn’t been open-sourced yet, and I was still convinced that mobile apps needed XAML-style data binding to succeed.
Narrator: They didn’t.
subscribe via RSS