9 comments

[ 4.0 ms ] story [ 33.2 ms ] thread
Why _wouldn't_ you deploy your small to medium RoR web app on Heroku? It seems damn awesome, but I'm just a business guy, so I might be missing some technical details.
Their approach to hosting brings along with it some technical limitations. I recently ran into the situation of wanting to store files on Heroku but their system (understandably) does not support it. The way to get file storage on Heroku is to use a service like S3.

I suppose base64 encoding could also come in handy on Heroku.

I tried using Heroku for a (very) small project which I already had working in Ruby, and using Google App Engine (even though it meant rewriting the code in Python). The reasons were:

1. Heroku didn't support a certain Ruby gem I needed for the application.

2. While (1) in itself is understandable (and eventually I found a way around it) Heroku never replied to my email asking whether they would support it in the future. As far as I recall there was no other way to contact them but feedback@heroku email address - if they don't answer it, that's that.

3. Heroku is just not certain to be around for as long as Google (or Amazon etc) will.

4. I admit I didn't research this thoroughly, but Heroku seems more expensive for what you get than other options (eg GAE, perhaps even Slicehost & co)

All in all, I'd say support was by far the most important issue. The last thing you want is to trust your application to someone who won't respond quickly (or at all). I realize Heroku is a small team, but this is just a critical requirement for such a service.

I am not a heroku user yet but was just going through their docs and they seem to support arbitrary gems... http://docs.heroku.com/gems What am I missing here?
Hey Nir, it's James from Heroku. Sorry to hear you had trouble with Heroku. I'd like to address some of your concerns:

1. Gems

We completely support all types of gems, including gems with native bindings (which get compiled automatically for your app). Detailed documentation: http://docs.heroku.com/gems

2. Support

While we were were running our completely unsupported public beta, we tried hard to answer support requests, but our main focus was getting the technology developed. Now that we have launched commercially, we have a full support ticket system, fast response times, and are committed to making immediate support a priority.

3. Financial Solvency

It's true, we aren't Google. We are, however, backed by high quality investors with large investment funds, who are committed to Heroku's success. We have strong interest from many additional firms if we wanted to raise more capital, and we currently have a very healthy runway.

I'd love to talk with you directly to better understand your needs and get more detailed feedback, please feel free to email me at james at heroku dotcom.

Hi James. No worries, thanks for replying here :)

The gem in question was curb (http://curb.rubyforge.org/) - I suppose it might a particularly tricky one, due to libcurl dependencies. (I'll email you with more details)

I understand the issues of supporting a free beta and hope to give Heroku a try on my next project. You really did some impressive work.

Awesome, we look forward to it.

I just created a quick Rack app that uses curb and deployed it to Heroku, no problem: http://gist.github.com/108315

If you keep having trouble with your app, please shoot me an email or open a support ticket, and we'll get you sorted out.

Once you have a big knob to scale (or automatic scaling), you next need to identify points on the curve where app rearchitecture is needed, like adding a caching tier or moving activities out-of-band. It sounds like Heroku wants to help do this -- which is great.

Alternatively, I wonder if Five Runs-style companies will partner will cloud vendors, figure out your current cloud mapping and give you this kind of analysis.

Which types of smaller RoR apps would work well with Heroku as opposed to say EngineYard's solo plan?