by Ryan Walker

Recipes and Ingredients

I finally got my “CincyReHackathon” project done, and I’d like to share a little about how the app works.

Google Prediction fail

Despite spending hours trying to figure it out, I couldn’t get 2-legged Oauth 2 working with Google API client. On top of that, the Google Prediction training queue just would not execute a training request of non-trivial size without erroring. So I dumped it.

Directed Edge

Searching around for a replacement, I found Directed Edge which is a graph database-based recommendations engine, and using it was a breeze. Unlike Google, they had decent documentation for Ruby developers and a simple API authentication method.

RecipePuppy

For source data, I used RecipePuppy’s very simple and very open API. Thanks for that!

Typekit

I took the project as an opportunity to experiment with Typekit. Very straightforward, I think the site looks much better for the effort.

VCR for testing

Since the bulk of the app is about interacting with two external APIs, I made good use of Myron Marston’s VCR library which was a great experience as well. It just works.

Guard for testing

I also used Guard for the first time on this project, and really liked it. Learn more about it from Ryan Bate’s screencast on the tool.

Source code available

The proejct uses Rails 3.1.1 and is deployed to Heroku, full source @ Github.