Skip to main content

Heroku throws students, non-profits and other freeloaders under the bus

Heroku only lets you use their logo if you agree to kiss up.
Heroku only lets you use their logo if you agree to kiss up.

Update: As a response to pushfeedback Heroku will be introducing some lower cost plans, including one where resources 'sleep' when not in use (presumably this means, you don't get billed while they are inactive). They aren't free, but they are cheap, starting from $5/month for up to 1,000 hours.

In a blog post annoying titled Heroku's Next Chapter, Heroku's General Manager has announced they will discontinue their free plans. On 28 November they will reduce free resources to zero and start deleting hobby-dev databases. Yep, they are going to bin your data (really, Heroku?) with no warning other than an email. So if you're a student, non-profit, hobbyist or whatever, you are out of luck (actually you can write and request their support for your open source project, good luck with that).

Heroku's FAQ page claims that deleting free plans is neccessary to "manage fraud and abuse". Then it desperately attempts to reclaim some nobility-by-association, namedropping Pensionbee and Softgiving as customers. Hello Heroku: If nice people use your service to do good things, that's great, but that's their effort, not yours.

I realise that people need to make a dollar. But what I don't like is when company PR people start providing "alternative facts" and misdirection instead of telling the truth. All they had to say was "we are terminating our free services for economic reasons" and nobody would have any grounds to argue with them. Treat your customers like adults.

But the truth is that Heroku is actually an expensive service. And the good news is that you don't need them to containerise your apps and you don't need to put up with them deleting your data.

What you need to do, to gain a cheaper and more flexible option, is to learn how to use Docker. Then I suggest spinning up a virtual machine from a cloud provider such as Linode or Digital Ocean and running your apps in Docker containers. Statically link your binaries during compilation and they will run in tiny standalone containers (here's how to do it in Go) that you can tie together in virtual networks, instance, scale and load balance as required, within moments. Your server infrastructure then becomes portable, disposable, scaleable, upgradeable and cheap.

There is something of a learning curve to gain an in-depth understanding of Docker, but it is absolutely worth it and a skill that will likely become a staple in your daily activities. I recommend working through the book Docker in Action, 2nd Edition. It's not difficult, it's just that there's a lot more too it then you may realise.

Copyright, all rights reserved.