Salesforce.com offers a variety of options for developing applications in the cloud. In fact, Salesforce provides two different Platform as a Service(PAAS) stacks: Salesforce App Cloud and Heroku.
The purpose of this post is to provide a high level explanation of each platform and a general idea of when to use which.
Salesforce App Cloud, is a meta-data driven PAAS platform that allows you to build applications primarily through clicks not code. In an App Cloud solution, 80-90% of the functionality is built and maintained in application configuration settings. In order to provide this level of configurability, the App Cloud has a proprietary development language (APEX) and database language (SOQL).
Heroku, on the other hand, is a code based platform. The Heroku platform takes care of all of the operational components of development (Hardware, Operating systems, networks, servers, etc) allowing developers to focus on applications rather than infrastructure.
Heroku supports multiple languages (Ruby, Java, Node.js, Scala, Clojure, Python, PHP and Go) and Heroku provides the following database support PostgreSQL, Cloudant, Couchbase Server, MongoDB and Redis . provide a complete service for building and scaling the next generation of customer connected apps.
According to Salesforce, “Heroku is best for companies that want to build external customer apps that use programming languages other than Apex to create scalable, global, external-facing applications. Force.com is optimal for the development of internal, employee-facing apps and is also ideal for the business user who wants to create internal apps and doesn’t have a technical background in development; tools are point-and-click and easy to use.”
Below are a list of factors to consider in deciding and how each platform differs in general:
|Time to Market||Faster||Fast|
|Enterprise vs Consumer||Enterprise||Consumer / Citizen|
|Extensibility||AppExchange||GEMs and Plugins|
|Integration with Salesforce||Built in||Available via Connector|
|Integration with Enterprise Applications||Really Strong||Strong|
|Integration with SocialMedia Sites||Strong||Really Strong|
|Compatibility with other Code||Hard||Easy|
|License / User||Pick the right license||No User Licenses|
|Required Technical Competency||Low||High|
|Multi Device Support||Great||Good|
|User Interface Flexibility||Good||Great|
Unfortunately its not a black or white decision about which is the best platform for your project, so you may want to ask on Heroku and Salesforce user forums, or feel free to ask Vertiba we are always happy to help if we can.