I run the Heroku CoE at Appirio and therefore get pulled into a number of pre-sales calls that involve salesforce.com and Heroku. Typically once a week Ill get the following reaction when talking to Salesforce developers about Heroku:
They'll say something like,
We're really good at Force.com development but that Heroku stuff is scary!
Au contraire, I tell them, development on Heroku is easier than you think. If you are already familar with Force.com its not that difficult to dip your toes in the Heroku water. There are a number of strategies for building customer facing apps but heres a super simple app to get you started using NodeJS on Heroku in less than 5 minutes. The app has sample code for your hacking enjoyment that provides the functionality to query for and CRUD records in Salesforce.
To get started you need to signup for a free Heroku account and then install the Heroku Toolbelt. The Heroku Toolbelt provides you with the command line client, Git for version control and pushing your code to Heroku, and foreman for running your app locally. See the Getting Started on Heroku page for step-by-step instructions if you have issues.
The following video walks through the entire process of deploying the app to Heroku using the "Deploy to Heroku" button, cloning the repo locally, making changes and pushing those back to Heroku for your app. Check out the code for the application on github or just click the button below to deploy the app directly to Heroku.
The following video walks through setting up a Connected App in Salesforce (you'll need this in order to deploy your code to Heroku), using the Deploy to Heroku button and pulling the code down from Heroku so that you can make changes. It also shows how to add Add-ons to your app and use various parts of the Heroku Dashboard UI.