Ask HN: Are you leaving Heroku?
It seems like Heroku has been dying on a vine. The platform is still incredible and unmatched in Developer Experience, but recent security incidents (along with a severely prolonged resolution), downtime, and (just yesterday) a DNS-related issue is making me reconsider and quite possibly will move some mission-critical apps to AWS.
Are you migrating away from Heroku? If so, which cloud provider are you using (AWS, Google Cloud, Azure, etc)? What's your stack and what service are you migrating to (ECS, Elastic Beanstalk, etc)?
113 comments
[ 3.1 ms ] story [ 198 ms ] threadSince you work for Heroku / Salesforce, letting your users know if this is a dead product or not would be a good first step. If not dead, explain why there have been no updates and what is to be expected moving forward.
Given that, I also don't want to forget the little bugs, I believe they are important to a great user experience. I think this is true for any product, but especially true for Heroku.
Doesn't look well received, Heroku is a dead product for devs.
Ended up developing my own Heroku but focused on Django deployments.
Three years later, it works like a charm and has many happy folks who thank me for making it.
Meet Appliku: https://appliku.com
(Heroku are removing their free tier of everything)
I'm looking to move Bear over to either a Digital Ocean droplet (I have the staging server running on one with SQlite and Litestream running, and believe it could actually scale well), or to Fly.io (to be seen).
https://github.com/mtlynch/picoshare/blob/b246751d5036fdb332... https://github.com/mtlynch/picoshare/blob/b246751d5036fdb332... https://github.com/mtlynch/picoshare/blob/b246751d5036fdb332...
still on heroku for now though. it's really aged but held up very well for popular use cases at a not obnoxious price.
Every year I try out new things (fly, render), but stick with heroku because I'd rather focus on building products and not devops.
I'm a solo dev making $700k a year on my projects. I'm happy to pay the extra cost for things to just work.
If there is a catastrophic issue though, I do have backups elsewhere that I will use.
In the entire fly.io documentation, there are only two mentions of buildpacks: https://fly.io/docs/reference/builders/ https://fly.io/blog/topic/buildpacks/
Fly.io hides behind clever engineering blog posts while pushing tremendous complexity on to the developer. While I appreciate the transparency and clever engineering hacks used in building Fly, the lack of a true managed database with a proper GUI and point in time backup and recovery makes it hard to consider Fly as a true Heroku alternative (the official Fly.io recommendation is to go to Crunchy Data for managed databases).
Our primary benefit over Heroku isn't "the simplest possible DX". Heroku has that nailed! It's running apps close to users, easily scaling them up and out over the globe. I like us a lot (but then I would) for simple apps that will never need global scaling, but nobody at Fly.io is telling you that we've somehow obsoleted Heroku!
I'm confident that we'll get to parity with Heroku on DX; it's a thing we're serious about. But Heroku has had a long, long time to get these details right, and we're working on other things too. Give us a bit. :P
I understand that you believe your competitive advantages stem from the edge server deployments. Sure that may be true for certain serverless and HTML-over-the-wire workloads like Phoenix, but if you actually talk to your customers, a significant number of us want a Heroku replacement, not just fancy docker-at-edge.
I switched to Appliku and never looked back. Setting up CI/CD pipeline for EC2 can be complicated and with AppLiku I get the Heroku experience without the limitations.
(I develop a pretty small-scale app for a non-profit)
So, no, not yet. But I am worried I may regret it.
I’ve been a subscriber for years.
Having had to use the point in time restore feature before, it's indispensable.
Just taken a look at Appliku as others have mentioned it (we are a Django app), that on DigitalOcean with their managed Postgres could be a strong option.
If I were looking for "very good Postgres", I would go straight to Crunchy Bridge. I don't think a PaaS is going to get anywhere near that level soon (and I work on Fly.io, so I know we're not).
Building a good PaaS and building an amazing managed database service are two problems that overlap less than you think. The moment we can get Crunchy Bridge or someone at a similar level to run their DBs on our infrastructure is the moment we start using them for customer Postgres.
No one knows this yet, but we have managed Redis soft launched in our CLI. Fly + Upstash is a pretty good combo.
(I have used neither Crunchy Bridge nor Amazon RDS, so this is an actual question, not a challenge! I have used Heroku postgres as well as self-hosted postgres)
Another big area is tooling we're building in to help app developers. Things like health reports for your database, built-in audit logs, simple SSO integration are just a few things that you now don't really have to think but can benefit heavily from. Overall we're a pretty big parallel to Heroku Postgres, with more to come (I wrote about some of that vision here - https://www.craigkerstiens.com/2022/05/18/unfinished-busines...).
There is a heroku config vars sync, so you can keep using Heroku Postgres, but moving the app itself out of there.
Your vars will be in sync, so when heroku rotates credentials they will be quickly applied to your app deployed with Appliku
I use Heroku at work, and DigitalOcean for my personal stuff, and I can tell you that Heroku’s DX has fallen behind.
That way, if the backup works, yay (maybe even covers you shotgunning your own foot now and then), if it fails, eh, everyone is offline because AWS is down so the blame game won't be that harsh.
To be clear though, these are very small/cheap projects between friends so I haven't needed to evaluate costs (beyond a few bucks a month) and I don't have any complex requirements beyond avoiding docker as much as possible.
I'm not completely abandoning Rust, however, as I am still using it for some other personal projects. I am having a good time writing CLI tools + cargo package management/build system is incredible.
https://news.ycombinator.com/newsguidelines.html
https://hn.algolia.com/?sort=byDate&dateRange=all&type=comme...
https://github.com/piku/piku
These days I run it everywhere, for anything between a headless scraper worker pool to a full blown site.
We'll probably end up going with AWS though I might take a serious look at Azure.
ECS or App Runner on AWS has many of the same issues. 100% agree that many of the k8s-based environment automation solutions are a mismatch for a Heroku replacement. But I do believe there is room for tools that help solve these problems on top of cloud providers (disclosure, working on one at withcoherence.com...)
Azure was kind of a pain to configure the first time, but after I got it all running, I have no trouble moving my projects to there.
[1]: https://news.ycombinator.com/item?id=31559270
Very easy to use and cheaper than heroku.
* push to deploy
* auto-restart
* managed db
* easy scaling
* s3 object storage
* don‘t spend time on updates
* web ui (monitoring, basic logging, configuration, ..)
- Debian OS, fully locked down (all ports closed except SSH, with limiter).
- SSH + rsync to deploy app. I don't have a risk factor of managing dependencies between dev and prod, so I eliminated docker.
- SQLite db that gets thrown on S3 every hour using a python script. I don't want streaming anything. Just hourly backups is good enough.
- Cloudflare tunnel to connect to outside world and serve requests.
It is fast, cheap and requires not much "infra" knowledge. Of course this is for solo devs and small companies.