Yahoo! Developer Network Blog
« Previous | Main | Next »
June 14, 2009
What's Cookin' Food & Wine Pairing from Snooth & MyRecipes
Editor's note: This is a guest post from Philip James, CEO & Founder of Snooth, and Rich Tomko, General Manager, MyRecipes Network, collaborators in creating What's Cookin': Food & Wine Pairing, now available as an application on My Yahoo!. As part of the launch of new open applications for users of My Yahoo! and Yahoo! Mail, we asked all of the app developers to introduce themselves and talk about building their apps on Yahoo!'s open platforms.
Snooth, a leading wine site on the Web, has launched What's Cookin': Food & Wine Pairings, a new open app for My Yahoo!. Users are now able to peruse thousands of recipes from recipe hub MyRecipes.com and get automatically-generated wine pairings based on each individual dish. MyRecipes.com aggregates recipes from popular and widely read food and lifestyle publications, including Cooking Light, Real Simple, Southern Living, Sunset, Health, and Food & Wine. For example, for a Classic Beef Pot Roast, Snooth’s digital sommelier might recommend “Neudorf Pinot Noir 2004” because “this medium bodied red is bright and earthy, allowing it to partner perfectly with this meal.” The What's Cookin' app highlights the most popular recipes, pairings, and wines of the day, with links to purchase the corresponding bottles.
The What's Cookin' Food & Wine Pairing app is built on the Tyrant, an interface for the Tokyo Cabinet, which is a format for managing an ultra-fast and scalable database in real memory. The matching recipes/wines on the detail pages are served using Tyrant, so there aren't any on-the-fly calculations required.
The recipe search itself is provided via an index server. On our platform, we use Jetty, a Java-based servlet that provides an interface to Lucene, the index that underlies the rest of the Snooth site. Since there are several fields in each recipe, it's not a purely text-based search; we can search for specific categories or other parameters on the back-end, which is how the big food category buttons always get relevant results.
To make What's Cookin' more engaging, we have added a couple of interactive features: voting and bookmarks. Using the provided yahoo_guid, we store the user-specific information in our database, and call it directly, usually with a second AJAX call on the page, to fill in bookmark state information. The bookmarks page is simple page-based browsing, and we use the Yahoo! Updates API to insert events into the activity feed, whenever a user bookmarks an item or votes for a pairing.
Our app is very fast on it's own, for now, and could easily handle over 25K users per day (we are currently getting 120), but we are making some changes in the next few weeks that will make the app even more scalable. One is that all initial page loads will be served via our edge network, Akamai, which will improve performance and reduce our own server load, benefiting users outside of the U.S. Yahoo! does a great job with serving the image content on their own edge network, so this creates less work for us. The other change is to push more of the data into Tokyo Cabinet, which will drop the database load down considerably, although the app is not very database-intensive at all, as it stands.
If there is any bottleneck in an application like this, it will be with the Lucene search, which is why we will be using a combination of reverse proxy caching and akamai integration to drop the load for searches, which will follow a Pareto distribution, so most searches will fall into a small set of common searches, i.e. Main Course + Chicken. This makes it easier to serve the app to a greater number of Yahoo! users, which we are happy to do!
Together, MyRecipes and Snooth are taking the mystery out of food and wine pairing and making it easy for the My Yahoo! user to make great matches.
Philip James, CEO & Founder, Snooth
Rich Tomko, General Manager, MyRecipes Network
Posted at June 14, 2009 6:10 PM | Permalink
Comments
its mervellous and you can do more better with time. wish you all the best success
Posted by: timothy at August 3, 2009 4:15 AM
Post a comment
Comment Policy: We encourage comments and look forward to hearing from you. Please note that Yahoo! may, in our sole discretion, remove comments if they are off topic, inappropriate, or otherwise violate our Terms of Service. Fields marked with asterisk '*' are required.
Subscribe
Recent Blog Articles
view all
YQL Open Table for Google Buzz now live
Tue, 09 Feb 2010
INSERT INTO twitter.status ...
Mon, 08 Feb 2010
Announcing the Yahoo! Brasil Open Hack Day 2010, 20-21 March
Mon, 08 Feb 2010
Marketing hacks, linchpins, and tech women of valor
Sun, 07 Feb 2010
Yahoo! India invites you to join the first India Hadoop Summit
Thu, 04 Feb 2010
Recent Links
Appcelerator Titanium + Yahoo YQL on Vimeo
Mon, 08 Feb 2010
Tue, 02 Feb 2010
PhoneGap | Cross platform mobile framework
Sat, 30 Jan 2010
Web developers can rule the iPad - O'Reilly Radar
Sat, 30 Jan 2010
rc3.org - Is the iPad the harbinger of doom for personal computing?
Thu, 28 Jan 2010
Archives
2010
2009
2008
2007
2006
2005
Recent Readers


