Platform-as-a-Service Options like Heroku for Startups

Aarjav asked about Platform-as-a-Service (PaaS) options like Heroku in the comments of yesterday’s post Cloud vs Colocation vs Managed Hosting for Startups. PaaS is great in that it offers the benefits of cloud computing with easy scaling up and down while encapsulating many of the more tedious system administration functions present when doing it yourself.

Heroku, owned by Salesforce.com, is one of the best known PaaS providers, especially in the Ruby community (they support other technologies as well but Ruby is still the most prominent for them). As an example, if you write a new Ruby on Rails application, to run that application you have to set up an environment and maintain it. Manual setup might take an hour if you know what you’re doing or 5 – 10 hours if it’s your first time. With Heroku, you can get things running in 5 minutes in a super simple fashion and as you scale or need more horsepower the process of resizing an instance or adding more instances is much simpler than a traditional cloud or dedicated server model.

Heroku runs on top of Amazon Web Services (AWS), so it is even more expensive than AWS EC2 instances, which are much more expensive than managed hosting which is more expensive than colocation. Out of the box, Heroku is great and fits in with my recommendation for startups to start with the cloud. Heroku does do things like kill web requests that take longer than 30 seconds, which forces code changes like using more background jobs, which is the right way to go but might cause more code refactoring sooner than desired.

Startups using a language like Ruby and a framework like Rails are well suited to start with Heroku and graduate from there as their success permits. Startups using a language like PHP have PaaS options like PHPFog to use as well to cut down on administration time and focus on building a business. Long term, PaaS falls under specialized cloud solutions and so the same thoughts around constant availability vs burstable needs, etc still hold true.

What else? What are some other considerations for Platform-as-a-Service options for startups?

3 thoughts on “Platform-as-a-Service Options like Heroku for Startups

  1. Becoming too dependent on any particular PaaS can be catastrophic, though. I’ve seen people build and launch their apps on Google App Engine and then when AE has outages or issues they’re completely stuck. It’s one thing to have an easy time scaling your application and another thing to be locked in to one provider for life…

  2. I agree that it’s in a startup’s best interest to not be reliant upon the ease of using a service like Heroku, especially if there is a sudden need to migrate servers. Good points, Andrew.

  3. We built our product and our first 5 customers on our own LAMP(ython) stack with Django, hosted on Linode. Significantly cheaper but progressively more time consuming from an ops standpoint. We are now trying out Django on Heroku now and it takes much less time, but is definitely costlier.

    As to migration from Heroku, it is not that hard. A friend who runs engineering at Top Prospect put up a very good summary on Quora: http://www.quora.com/How-easy-is-it-to-get-off-Heroku-once-you-grow-out-of-it

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.