Container-Ready Rails 5

Rails 5 will be the easiest release ever to get running on Heroku. You can get it going in just five lines:

$ rails new myapp -d postgresql
$ cd myapp
$ git init . ; git add . ; git commit -m first
$ heroku create
$ git push heroku master

These five lines (and a view or two) are all you need to get a Rails 5 app working on Heroku — there are no special gems you need to install, or flags you must toggle. Let's take a peek under the hood, and explore the interfaces baked right into Rails 5 that make it easy to deploy your app on any modern container-based platform.

Read more →

Cyber Monday, No Sweat: Why Sweet Tooth Chose PaaS

We recently sat down for a chat with Bill Curtis, a co-founder and the CTO of Sweet Tooth, a points and rewards app for online stores worldwide.

What has been your greatest challenge?

We’re serving way more data today than we ever have, so scaling is mission-critical. In the past, we’ve struggled with traffic spikes. For example, there are seasonal spikes, like Black Friday or Cyber Monday. There are also spikes from merchant activity, such as load testing stores or importing a large number of orders.

I recently tweeted our requests-per-hour graph. It showed that during the huge spikes for this year’s Black Friday and Cyber Monday, our product availability was seamless on Heroku. That would not have been the case on our old infrastructure.

Read more →

Building a P2P Marketplace on Heroku: An Interview with Vitali Margolin

Based in Tel Aviv, Israel, Vitali Margolin is the Head of R&D for Roomer. Vitali leads a team of seven developers who built and operate the travel marketplace www.roomertravel.com and the travel protection service www.life-happens.com, both running on Heroku.

What are you running on Heroku?

The four big projects are: the Roomer website, our administration app, our partner network and B2B website, and the Roomer API. The Roomer API is our highest load app. It can get up to 10k requests per minute from partner integrations such as Kayak. We have a few more technical products, including an app that does text recognition and automatically decodes confirmation emails, as well as a smart pricing system and a search algorithm.

About 90% of everything runs on Heroku. We have ten “pipelines” which represent ten projects. In every pipeline we have staging, production, and a few sandboxes, so I’m guessing we have about 50 apps total on Heroku.

Read more →

How Lean Poker Teaches Continuous Deployment on Heroku: An Interview with Creator Rafael Ördög

In 2013, Rafael Ördög put poker and code together, the result: Lean Poker, a competitive coding event that teaches continuous deployment and lean startup methodologies. Rafael is based in Budapest, Hungary.

What's Lean Poker?

Lean Poker is a coding workshop that is designed to teach people how to practice continuous deployment and lean startup methodologies. Companies can sponsor a free public event or hold an internal, team-building event for their own employees.

Read more →

Upgrading to Rails 5 Beta - The Hard Way

Rails 5 has been brewing for more than a year. To take advantage of new features, and stay on the supported path, you'll need to upgrade. In this post, we'll look at the upgrade process for a production Rails app, codetriage.com. The codebase is open source so you can follow along. Special thanks to Prathamesh for his help with this blog post.

How Stable is the Beta?

In Rails a beta means the API is not yet stable, and features will come and go. A Release Candidate (RC) means no new features; the API is considered stable, and RCs will continue to be released until all reported regressions are resolved.

Should you run your production app on the beta? There is value in getting a beta working on a branch and being ready when the RC or upcoming release is available. Lots of companies run Beta and RC releases of Rails in production, but it's not for the faint of heart. You'll need to be pretty confident in your app, make sure your test suite is up to par, and that manual quality control (QC) checks are thorough. It's always a relief to find and fix bugs before they arrive in production. Please report regressions and bugs you encounter -- the faster we uncover and report them, the faster these bugs get fixed, and the more stable Rails becomes. Remember, no one else is going to find and report the regressions in your codebase unless you do it.

Read more →

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