Heroku is a platform as a service designed by developers and for developers. In the past few weeks I've gotten acquainted with Heroku while deploying various apps on this sleek service. Heroku has a lot of things going for it and the folks that work there are always improving their platform, integrating new add-ons and modules, and pushing to improve their offerings.
One of the things about Heroku that first caught my attention was its unique and beautiful design. I describe its style as a pleasant blend of East-Asian iconography, samurai warrior and monster culture and a healthy handful of neon. The overall theme is very dark and rich, and to be honest it can be difficult to see things at times, but Heroku's elegant style is all its own. I can't recall having come across another website that made such a lasting impression on me.
Getting started with Heroku is easy, and it's intended to be. The simpler it is for developers to spin up their applications and get them running, the more business Heroku is going to attract in the long run. The folks at Heroku subscribe to the philosophy of making things easy and cheap in the beginning, getting you increasingly comfortable with their services and then charging you later on as your app becomes more successful, gains in traffic and begins to demand more resources. This is a good deal for everyone involved. It's absolutely free to start deploying your apps to Heroku and test them.
Once your app is successful and begins handling more and more user requests, you can pay to increment your various add-ons and services up to the level your app requires. Heroku was first rolled out with with support for a couple of major web programming languages, including the big ones like Java, Ruby and Scala. Although PHP was not one of its original offerings, Heroku has quietly begun supporting PHP applications in the cloud, too.
In my experience, some of Heroku's documentation, especially that centering on individual add-ons, is pretty sparse when it comes to PHP support. This is one of the major reasons that PHP developers have begun trickling out to other options like PHPFog.com and other platforms that specialize in the language.
To Heroku's credit, they are constantly pursuing agreements with third party vendors of modules and external services to extend the functionality of their platform for users. By browsing through their add-ons page, you can find dozens of modules like cloud-based e-mail, scalable databases, messaging queues, and app monitoring systems. Adding any of these to your Heroku application is as simple as clicking add-on and, in some cases, patching in a couple lines of code to integrate the new addon to your codebase.
Heroku uses the Git distributed version control system to deploy code. If you're comfortable using git you'll be right at home with Heroku. Even if you haven't used git before, the quickstart documentation will get you started in no time, and pretty soon you'll fall in love with the features of this handy tool.
If you're just in the market to get your app up and running and test its basic functionality, Heroku is one of the best ways to get going. Its free limits are much more generous than other platforms out there, meaning you can live comfortably under the 'payment due' radar until your application is actually generating respectable traffic. At that point, it's up to you whether or not you want to scale up your service and pay accordingly.