
Migrating this site to EmDash
This site has changed CMS more times than I can count since 2003. This time I moved to EmDash on Cloudflare, and the reason is that most of my building now happens alongside an AI agent.
Read moreLee Rob:
Heroku made it easy for any developer to build and run applications in the cloud without managing their own infrastructure. Now 15 years later, it continues to inspire the next generation of developers. Why did Heroku become so popular? What can we learn from their incredible developer experience? How is Heroku shaping the next generation of serverless?
>
[...]
Heroku set a new standard for developer experience. To deploy your application, you pushed code to git and received a URL. git push heroku main. That's it.
Heroku would build your application remotely (in the cloud) and deploy it to their infrastructure. Developers weren't used to deployment being this easy or fast. Heroku was ahead of its time and “serverless” in the sense you didn't have to manage servers yourself.
>
[...]
I'm personally inspired by Heroku and have used the platform since 2012 for some side projects. We can learn a lot from their story and how it's shaped the software industry.
- Git push to URL is incredibly powerful: When folks talk about Heroku 15 years later, they still mention git push heroku main. Heroku inspired platforms like Vercel with one command (vercel) to deploy your frontend globally, while having a singular remote (origin) and creating deeper integrations into first-party git providers (e.g. GitHub).
- Editing code in browser lowers the barrier to entry: While Heroku pivoted away from an in-browser IDE, their ideas have led (either directly or indirectly) to the creation of Codepen, CodeSandbox, GitHub CodeSpaces, Replit, StackBlitz, and more.
- Don't forget about solo developer productivity: Some developers still deploy monolithic applications to Heroku or other services like Fly.io, Railway, and Render to colocate their backend and frontend. They don't need (or want) to have microservices.
- Platforms need to evolve over time: You could make the argument Heroku would be even more popular today if it evolved to add support for scaling to zero, global deployments by default, and focused on the rapidly evolving JavaScript/TypeScript/React ecosystem.
I'm also biased, as I work at Vercel, in believing serverless and Edge platforms are the future. Here's my thoughts on where we're headed:
- On the frontend, you want to git push and have your code close to your visitors globally. Platforms like Vercel help you go from idea to global app in seconds.
- On the backend, you (probably) don't want to scale Kubernetes yourself. There's now fully-managed Kubernetes (AWS EKS, Google Cloud GKE), as well as Google Cloud Run, which allows you to run and automatically scale stateless serverless containers.
- Serverless functions don't need health checks and are highly available (multi-az) without having to think about "number of dynos". For each concurrent request, you get a function instance. Scaling is not something you spend time tuning or thinking much about. Entire categories of commands like
ps:stop,ps:restart, andps:scaledisapper and become unnecessary.
Great article from Lee on Heroku and he makes a lot of good points at the end.

This site has changed CMS more times than I can count since 2003. This time I moved to EmDash on Cloudflare, and the reason is that most of my building now happens alongside an AI agent.
Read more
I wanted a simple dashboard that showed me events as they happened, so I wrote a quick little Astro app. It grew into Get Butters: a real-time event feed with a REST API, a CLI, insight cards and push alerts.
Read more
Once four agents can edit the same repo, architecture stops being the hard problem and coordination starts. The five roles I run and what each one is forbidden to touch, why every handoff goes through a file, a worktree script so agents stop racing, and the failure modes worth naming.
Read more