Guess it's not needed anymore! :) Incidentally, if you for some reason want to bake this functionality into an existing gem, it may be easier to use Replicator's library than the Heroku API, since I had to read their source to understand how it all worked. That is, if for some reason you don't want to drop down to the command line and run `heroku fork` from Ruby.
Every company makes mistakes. Who hasn't fallen behind on site copy? Granted their responsibility to keep documentation up to date is much greater than most of ours but I'd like to think (and I believe) they were not willfully deceiving their entire Rails customer base. I am still a fan.
Refunds could easily have been something evaluated on a 1-by-1 basis, quietly, to avoid creating a stampede of requests even by those negligibly affected.
Notably, despite all the public feuding, RapGenius today still appears to be served by Heroku.
I have 7GB of data sitting in one of their Postgres instances right now. It only takes a couple minutes to backup and restore to a new db, so I guess it depends on how you'd define "prohibitively long."
It's remarkably fast. The network transfer is AWS-to-AWS if you do it right, so the only time is creating the backup and populating the new DB. It takes almost no time for a ~5GB database I'm using.
There are quite a few companies playing in that space right now. Personally, if that is your challenge, I wonder what you are even doing making products. Let me write the deployment script for you:
You can already hook up this really sweet Github -> Travis CI -> Heroku bridge. Every push runs your tests, if they pass, deploy.
It'd be neat to modify this so that pull requests spun up an app you could play with. Travis provides an environment variable that lets you know if you're testing a pull request, hmmm...
Is this really HN worthy? It must be a pretty easy feature to implement with their slug/container workflow. With technologies such as Docker pushing them, Heroku ought to find a way to lower their prices. This at least adds value, but no magic here.
If you wanted to build something like this, you could do so without any involvement from us by just using the (newly-documented) Heroku Platform API: https://devcenter.heroku.com/articles/platform-api-reference