Deploying and Customizing Applications on Engine Yard: A First-Timer's Guide

I've tried a lot of different Platform as a Service (PaaS) providers for hosting my applications. Some of them make it super-easy to get everything running on the server, but the magic gets in the way when you need to customize things.

Some platforms give you full control, but it can be time-consuming to get all of your dependencies properly set up. It would be nice to have some of the boilerplate taken care of, while still retaining full control of my server environment.

If you haven’t deployed an application to Engine Yard, you should give it a try. You’ll be pleasantly surprised to find that this is exactly the kind of service offered. It’s a breeze to get Redis, cron, and any other tools you need installed. You also get root access to your server and can SSH in just as you would with a bare server.

My favorite feature has always been the ability to push custom Chef recipes to my server, making it super-easy to tweak the server as needed without having to spend a lot of time downloading Ubuntu packages and managing user permissions.

There is a little bit of a learning curve though, so I decided to deploy and customise a new app on Engine Yard so that I could document the process and help first-timers get up and running with a minimum of fuss.

Read More

Migrating Your Rails App to Engine Yard

There are many reasons you might be thinking about moving your Rails app to Engine Yard. Perhaps you grew beyond the capacity of what that service can offer? Perhaps the current service abandoned Rails as a supported part of their service? Perhaps you realized managing hardware yourself is taking time away from building a better application. Whatever the reason, you’ve reached the point where a move to Engine Yard is the right decision, and we’re here to help.

With various reasons for moving your application to Engine Yard, we thought we’d outline the top five things you need to be aware of during a migration. And remember, our support and onboarding teams are there to help at every step of the migration.

Read More
Learn about Engine Yard
Try Engine Yard for your Ruby or PHP Apps

Announcing Engine Yard's New Monthly Video Series: Cloud in My Coffee

Looking for a way to kick off that first Monday of the month? Wondering what goes on internally at Engine Yard? Hoping to meet some shining new faces?

We can solve all of those problems at once!! Introducing “Cloud in My Coffee”, the new monthly video series from the Engine Yard Community Team. This video series will feature interviews with many of the people that make Engine Yard what it is every day. From the “C” level executives to those working the tickets on our Support Team, you’ll have the opportunity to get to know the Yardees around the world, all from the comfort of your seat, cup of coffee close at hand.

Read More

Serving Custom JSON From Your Rails API With ActiveModel::Serializers

These days, there are so many different choices when it comes to serving data from an API. You can build it in Node with ExpressJS, in Go with Martini, Clojure with Compojure, and many more. But in many cases, you just want to bring something to market as fast as you can. For those times, I still reach for Ruby on Rails.

With Rails, you can spin up a function API server in a very short period of time. Rails is large. Perhaps you object that there's "too much magic". Have you ever checked out the rails-api gem? It lets you enjoy all the benefits of Rails without including unnecessary view-layer and asset-related code.

Rails-api is maintained by Carlos Antonio Da Silva, Santiago Pastorino, Rails Core team members, and all-around great Rubyist Steve Klabnik. While not busy working on Rails or the Rails API Gem, they found the time to put together the active_model_serializers gem to make it easier to format JSON responses when using Rails as an API server.

ActiveModel::Serializers (AMS) is a powerful alternative to jbuilder, rabl, and other Ruby templating solutions. It's easy to get started with, but when you want to serve data that quite doesn't match up with the way ActiveRecord (AR) structures things, it can be hard to figure out how to get it to do what you want.

In this post, we'll take a look at how to extend AMS to serve up custom data in the context of a Rails-based chat app.

Read More

Writing Custom Plugins for PHP’s MySQLnd

Writing Custom Plugins for PHP’s MySQLnd

Note: This is part five in our Extending MySQL with PHP's MySQLnd Series

While I have previously written custom hooks for specific MySQLnd plugins, like custom routing for mysqlnd_ms, and a custom cache handler for mysqlnd_qc, this time we will be looking at mysqlnd_uh (or user handler) which allows us to write an entire plugin ourselves.

Mysqlnd_uh is the least stable of the mysqlnd plugins, only being available as an alpha. You will most likely need to compile from source.

Read More


Look through our specially curated posts to get focused, in-depth information on a single topic.