Heroku
Also known as: Heroku dyno, Heroku PaaS
Heroku is a cloud platform where you deploy applications by pushing code to Git -- no server configuration required.
It handles provisioning, scaling, and infrastructure. Heroku pioneered the 'git push to deploy' workflow and the add-on marketplace model, and remains popular for rapid prototyping and small-to-medium applications.
Heroku, explained at three levels
At home
Heroku lets you put your app on the internet by typing one command: 'git push heroku main'. It reads your code, figures out what kind of app it is, installs the dependencies, and starts it running -- no server knowledge required.
At work
Teams use Heroku to get applications running quickly without a dedicated DevOps engineer. You focus on your application code; Heroku handles deployment, networking, and infrastructure management.
At home
Heroku runs your app in 'dynos' -- lightweight containers. You scale by adding more dynos. The Heroku add-on marketplace provides managed databases (PostgreSQL, Redis), monitoring, logging, and email services that attach to your app with one command. A free tier (now discontinued) made it the go-to for hobby projects.
At work
Heroku's Procfile defines how to run app processes (web server, background worker, scheduler). Review Apps automatically deploy pull requests to temporary URLs for QA. Heroku Pipelines provide staging-to-production promotion with the same slug (built artifact), ensuring what's tested is what's deployed.
At home
Heroku builds are run by Buildpacks -- scripts that detect language, install dependencies, and compile the app into a 'slug'. Custom buildpacks let you support unusual languages or runtimes. The slug is deployed to dynos across Heroku's infrastructure (which runs on AWS EC2).
At work
Heroku Private Spaces provide dedicated infrastructure with VPC-like network isolation and fixed outbound IPs. Shield Private Spaces add compliance features (HIPAA, PCI). At scale, teams often graduate off Heroku to Kubernetes or ECS for more control over networking, resource limits, and cost -- Heroku's abstraction has a price premium.
Real-world examples
At home
Sophie deployed her Django side project to Heroku in 15 minutes by running 'heroku create' and 'git push heroku main'. Heroku automatically detected Python, installed requirements.txt, and gave her a live URL.
At work
Marcus's startup runs their MVP on Heroku with a Heroku Postgres add-on. They use Review Apps to spin up a fresh environment for each pull request, letting QA test features without touching the main staging server.
Common confusions
- Heroku is a cloud provider like AWS — Heroku is a Platform-as-a-Service built on top of AWS. You're abstracting away AWS complexity, not replacing it. This simplicity has a cost -- Heroku is more expensive per resource than raw EC2.
- Heroku is only for small hobby projects — Heroku powers production applications at significant scale. Its Salesforce backing and enterprise tier serve serious workloads, though at that scale, alternatives often offer better economics.
For analysts
Business analysts and data scientists use Heroku to deploy internal tools -- a Streamlit dashboard or Flask API -- without needing IT support for server setup. The add-on marketplace makes connecting a database a single command.
History & origin
Heroku launched in 2007 as a Ruby on Rails hosting platform. It popularized the PaaS (Platform-as-a-Service) category and the concept of 'dynos' -- lightweight containers. Salesforce acquired Heroku in 2010 for $212 million. Heroku expanded to support multiple languages (Node.js, Python, Java, PHP, Go) and launched add-ons for databases and services. Competition from AWS Elastic Beanstalk, Google App Engine, and later Render and Fly.io eroded its market share, but Heroku remains a familiar name in developer communities.