In this session we will first walk through the basics of event-driven architectures and high-performance network programming in Ruby using the EventMachine framework. Then we will examine three hands-on examples of how a simple proxy server, written in less than a hundred lines of code can become an indispensable tool for:
High-performance computing may not be Ruby’s strength on the surface, but there is a great number of gems and third party packages which are often overlooked when it comes to this topic. We will assume no prior knowledge of PageRank (Google’s ranking algorithm) and will walk through the basic theory and computational challenges behind it. Along the way, we will look at a hands on example of computing PageRank for a 1-million page web, and the tools behind it:
As a bonus, you’ll find that the ideas behind PageRank are surprisingly simple and powerful (no math-wiz certification required) and can be easily applied to many existing social and content networks – better recommendations, search, and discovery.
by James Adam
When I started talking about the idea of ‘Rails Engines’ a few years ago, everyone thought I was crazy. Some people said it was stupid, or just plain evil. Despite that, the ability to write simple yet powerful plugins is baked into the core of Rails 2.3.
But heed the words of Uncle Ben: “With great power, comes great responsibility!”
In this session, we’ll discuss how to best take advantage of ‘engines’, in which situations engine plugins are appropriate and those where they aren’t, and how to avoid some of the common issues that can arrive when developing with engine-style plugins.
When we’re done, you’ll be in the best position to take advantage of this newly-sanctified functionality in your own projects.
The way we deploy ruby apps is changing. It’s getting better, faster, and smoother. This is happening because all the different pieces of the stack, including the underlying hosting platform, have started to fit together well.
by Adam Wiggins
Rails 2.3 introduces a hot new feature: Rails Metal. Metal allows you to build Rack endpoints for selected URLs in your app. Optimize your high-frequency, low-complexity actions with Rails Metal and get a 2x – 3x performance boost.
Even better: you can use Sinatra, the microframework that everyone’s talking about, from Rails Metal. Capture the speed and elegance of Sinatra from within your existing Rails app!
This talk will provide a brief overview of the basics of Rack and Sinatra, so no prior knowledge of either project is required.
Twitter’s content and APIs make it one of the best targets around for creating mashups. It’s now easier than ever to do so using TwitterAuth, a Rails gem/plugin that utilizes Twitter as a Single Sign-on provider (SSO).
Material will include:
Generating a TwitterAuth application using Rails templates
Navigating the Twitter API
Harnessing the power of Twitter Search
Watching an entire application get built…live!
This session will show how we built a Rails application around a database that didn’t even come close to following the conventions that Rails wants you to use. We’ll show how we used views and some Ruby techniques to make the database appear to conform, and we’ll show that it’s really not as hard as people make it sound.
We’ll also talk about other strategies we’ve used to migrate data from legacy schemas to new Rails schemas. Attendants should feel free to submit some examples to us beforehand.
Back by popular request, several Heroku team members will be on hand to walk you through the latest and greatest features of the Heroku platform and answer your questions.
Webrat, a Ruby DSL for interacting with Web applications, helps you write expressive, maintainable acceptance tests while sidestepping the issues traditionally associated with in-browser approaches like Selenium and Watir. We'll look at how you can use Webrat to develop a robust acceptance test suite to ensure your app stays working as you refactor mercilessly.
Q&A with the core developers of Rails. Your questions; their answers.
4th–7th May 2009