The key to any startup is focus -- focusing in multiple directions is really no focus at all. Following this premise we understand the decision by CloudBees to double down on their continuous integration offering of Jenkins, and to discontinue their platform as a service product. Continuous integration is already playing an important role in application development and deployment and will only continue to grow in the future. Many of us are fans of Jenkins, and in fact we have many Heroku customers today taking advantage of Jenkins and other CI services.

We’re also pleased to see CloudBees suggest that users migrate their PaaS services to providers like Heroku, and we’d like to welcome...


Many of Heroku's internal components make heavy use of logfmt to log information about what's going on in production. The format is hugely valuable in that it allows us to retroactively analyze what happened during any arbitrary request to our components, query our log traces in very flexible ways, and combined with Splunk, easily generate arbitrary metrics on historical data. It's unquestionably been an invaluable tool for fixing countless bugs, tracking down the root cause of many production incidents, and assessing usage in ways that would have been difficult otherwise.


Uber logo

On Wednesday, Uber launched an API to let developers build new products and services that leverage the Uber ridesharing platform. Uber built a simple Python/Flask app that developers can use when exploring how the API works.

This is the sort of experimentation and innovation that we at Heroku want to enable, so we sent a pull request to add an app.json file to the repo and a Heroku Button to the readme.

To deploy the Uber sample on Heroku and experiment with the new Uber API, simply register on the Uber developer site and then click the button below:

Deploy on Heroku

Once the app has been set up on Heroku, you’ll have to go back to the Uber developer site and configure the redirect URI to the URI for...


At Heroku, we want to give our users access to the latest and greatest software stacks to base their apps on. That’s why we continuously update buildpacks to support new language and framework versions and let users experiment further using third-party buildpacks.

Sitting underneath slugs and buildpacks are stacks. Stacks are the operating system and system libraries required to make apps run. Today we’re releasing into public beta a new version of the Celedon Cedar stack: cedar-14.

cedar-14 is built on the latest LTS version of Ubuntu Linux and has recent versions of libraries and system dependencies that will receive maintenance and security updates for a long time to come.

Before...


Retrospectives are a valuable tool for software engineering teams. Heroku consistently uses retrospectives to review operational incidents, root cause problems, and generate remediation tasks to improve our systems. Increasingly we use retrospectives for another purpose: to improve teamwork and interactions on projects. Here we intentionally avoid technical discussions and focus on the emotional and human aspects of work, with the goal of creating positive insights into how to improve as a team.


Browse the blog archives or subscribe to the full-text feed.