RubyNation 2012 schedule

Friday 23rd March 2012

  • Building API: Sinatra, Node.js or Else

    by Aleksander Dąbrowski

    We create APIs. We want them to be fast. We want them to get into high gear. But we also like to play with new toys and produce clean code.

    In this talk, Aleksander will confront Node.js vs Sinatra as a tool to build external API for Rails application. He will focus on pros and cos of sharing code with main application, performance and scalabilty. He'll also take a look at other solutions, maybe secret ingredient is somewhere else?

    At 11:00am to 11:40am, Friday 23rd March

    In Sheraton Reston

    Coverage slide deck

  • Don't Fear the Threads: Simplify Your Life with JRuby

    by David Copeland

    Evented is the new hotness. It simplifies concurrent programming. Right? Not always. Tools like EventMachine and Node are fast, but are they always the right tool? And do they make your code easy to understand and modify?

    Enter JRuby, the super-charged Ruby implementation that has all of Java's strengths, and none of its weaknesses. Among its strengths is a fully-armed and operational threading model that, a long with a few simple built-in libraries, can make concurrent code easy to write, easy to understand, easy to maintain, and just as performant as the evented version.

    Why limit yourself to one way of solving problems? This talk will arm you with an alternative for handling concurrency: JRuby and Threads.

    At 11:00am to 11:40am, Friday 23rd March

    Coverage slide deck

  • Rails Without Views

    by Brennan Dunn

    Javascript MVC frameworks like Backbone.js are exploding in popularity, and also turning traditional web development on it's head. And a lot of us are now responsible for writing both the backend REST API and the frontend for this new breed of applications. This talk covers my experiences in building a large scale Backbone.js application on top of Ruby on Rails. In this session, you'll see how to marry your Javascript applications with Rails, and learn best practices for exposing session information, model associations, roles and permissions, and more to the frontend.

    At 11:50am to 12:30pm, Friday 23rd March

    Coverage slide deck

  • Geospace your Rails Apps!

    by Pete Jackson

    Want to add location, mapping, or complex spatial analysis to your Rails applications? Not sure about the difference between OpenLayers, Google Maps, Bing Maps, RGeo, GeoRuby, GeoCommons, or the many other choices in front of you? Join this session for a walkthrough of the stack choices you will be faced with while navigating the Geospatial landscape.

    At 3:40pm to 4:20pm, Friday 23rd March

    Coverage slide deck

  • The Rails View: The Junk Drawer Grows Up

    by John Athayde

    Rails 3.1 introduced us to the asset pipeline. Learn the power of SCSS and how to clean up your views with the proper use of helpers, semantic markup, presenters, and just good old fashioned ERB and HTML. We'll touch on a broad variety of topics and not attack too many sacred cows.

    At 3:40pm to 4:20pm, Friday 23rd March

    Coverage slide deck

  • You Ain't SPDY

    by Chris Strom

    You package your assets. You use CSS sprites. You serve up everything with gzip compression. You obsess over Yslow recommendations. But you are still not SPDY.

    Fundamental limitations in HTTP and TCP/IP still add up to 60% overhead to your site. Find out how to reclaim that lost bandwidth and increase the robustness of your sites at the same time.

    At 4:30pm to 5:10pm, Friday 23rd March

    Coverage slide deck

Saturday 24th March 2012

  • Real-Time HTML5 and Ruby

    by Luigi Montanez

    Evented programming. HTML5. Real time.

    These are the buzzwords of the day, and it seems like Ruby web developers are missing out on all the fun. Real-time technologies that fall under the HTML5 banner like WebSockets and Server-Sent Events are the future of web development, so it's important to not get left behind.

    This session is a deep-dive on the current state of the art for real-time, evented web frameworks in Ruby:

    • An overview of the WebSockets and Server-Sent Events specifications. Why were they created? What problems do they solve? How are they implemented in the browser?
    • A look at EventMachine: it's history and current implementation.
    • A walkthrough creating a Server-Sent Events app using Goliath, and a WebSockets app using Cramp.

    Attendees will leave this session ready to build apps for the real-time web using the best technologies the Ruby ecosystem has to offer.

    At 9:00am to 9:40am, Saturday 24th March

    Coverage slide deck

  • Eloquent Explanations

    by Russ Olsen

    Have you ever thought about how much of software engineering involves explaining things? We stick comments in our program to explain why we added X to Y, we type up README files to explain the program, we write proposals to explain why the program should be funded and we spend the afternoon explaining the whole thing to the new guy so that we can move on to something new. A decent explanation can be the difference between success and obscurity: Would there be a RubyNation if there had been no 15 minutes build-a-blog screencast for Rails?

    In this talk Russ Olsen will run through the things that you can do to craft explanations that are clear, engaging and perhaps even a bit funny. Russ will do his best to be clear, engaging and perhaps a bit funny.

    At 9:50am to 10:30am, Saturday 24th March

    Coverage slide deck

  • Plays well with others: Building Mountable Apps

    by Patrick Peak

    Rails 3.1 introduced Mountable Apps and Engine, a great way for developers to build and reuse functionality between applications. Engines can be as simple as adding a model, or a complex as an entire content management system. Now using the Asset Pipeline, even javascript and css files can be packaged and shared, making projects cleaner and more maintainable than ever before.

    This talk will cover how developers can create their own engines, to add new controllers/models/views, rake tasks and/or generators. It will cover how engines can interact with Rails having their own initializers and middleware. Finally, based on our experiences converting BrowserCMS and its entire module ecosystem to work as mountable engines, this talk will cover how to make engines that are designed to work together, extend each other engine’s behavior and make it easy for developers to upgrade when you release new versions.

    At 1:30pm to 2:10pm, Saturday 24th March

    Coverage slide deck

  • The Joy of Cooking - Whip up a Rails environment with Chef

    by Nathen Harvey

    You've heard of Chef, Puppet, and other frameworks that can help you build out your infrastructure. You've been meaning to play around with one or more of them for some time now. Now's your chance; Start cooking up on your own servers!

    In this tutorial, we'll provide an introduction to Chef with a focus on what you'll need to know to get a Rails application up and running.

    Topics include:

    • Introduction to Chef
    • Provisioning an environment for a Rails application
    • Deploying with Capistrano

    You won't be ready to compete in Iron Chef, but you will be ready to serve up your own Rails environment in no time.

    At 2:30pm to 3:10pm, Saturday 24th March

    Coverage slide deck

  • Adventures on the Golden Path

    by Jeff Casimir

    Rails 1.0 was about proving we could build the same functionality as the other web frameworks, but doing it faster. Rails 2.0 was about pushing the vanguard forward, setting new trends for how the web should be built. Rails 3.0 paid down technical debt and laid the foundation for our future. Now what? Rails has always guiding developers down the "golden path" of best practices. Let's look at potholes needing filling, ways we can straighten the dangerous corners, and figure out where this road might be heading.

    At 3:30pm to 4:10pm, Saturday 24th March

    Coverage slide deck