For some time now, we have been using Heroku to host all of our new developments, our clients love it and for that reason, so do we.
Why? With Heroku, we don't have to care about server infrastructure, databases, and other dependencies. With too many apps and sites to name off by heart, this was fast becoming tedious and costly to manage.
Now we can focus all of our efforts on the code we write. It gives us constraints, that enforce good architectural decisions and lead toward the better design of scalable systems.
It also standardises our deployment, configuration and release practices amongst all our team members on all of our different projects.
asset_sync
One of the gems that came out of us moving a lot of existing apps to Rails 3.1 and Heroku was improving the way we deploy and maintain high performance web user interfaces. Recently we wrote an article for the Heroku Dev Centre about our gem asset_sync and Using a CDN Asset Host with Rails 3.1.
pygmentize.herokuapp.com
Another great aspect is that we have a platform with great language support. Sometimes our favourite tools (Ruby and JavaScript) aren't the right ones for the job. Maybe we want to use them for most of the easy parts to an app but use an existing open source tool written in another language for something awesome.
Embracing this polyglot service orientated architecture we wrote and open sourced a little python app pygments-heroku to expose an HTTP API for the syntax highlighter Pygments for our apps running on Heroku to consume. You can view the live version at http://pygmentize.herokuapp.com or fork it and easily run your own.