{"start_date":"2011/05/16 00:00:00 +0000","large_logo_updated_at":"2011/06/29 13:33:20 +0000","large_logo_file_size":7466,"cached_content_rating":4.05,"location":"Baltimore, MD","hashtag":"","event_url":"http://en.oreilly.com/rails2011/","created_at":"2011/04/07 14:24:15 +0000","logo_url":"http://uploads.speakerrate.com/logos/846/original/rails-conf-thm.png?1309354400","title":"RailsConf 2011","cached_delivery_rating":4.21,"updated_at":"2012/02/08 06:45:56 +0000","large_logo_url":"http://uploads.speakerrate.com/large_logos/846/original/rails-conf.png?1309354400","cached_rating":4.13,"id":846,"creator_id":6443,"description_text":"RailsConf, co-produced by Ruby Central, Inc. and O'Reilly Media, Inc., is the largest official conference dedicated to everything Ruby on Rails. Through keynotes, sessions, tutorials, events, and of course lots of hallway hacking, RailsConf is the meeting place for the Ruby on Rails community.\r\n\r\nRuby on Rails is an open-source web framework that's optimized for programmer happiness and sustainable productivity. It lets you write beautiful code by favoring convention over configuration. Learn more about Rails on rubyonrails.org","talks":[{"cached_content_rating":null,"location":null,"created_at":"2011/05/16 15:20:01 +0000","title":"Rails for Zombies (AKA Intro to Rails - Part 1)","event_id":846,"cached_delivery_rating":null,"updated_at":"2011/05/16 15:20:01 +0000","featured":false,"cached_rating":null,"timezone":null,"info":{"text":"Do you need to start learning Ruby on Rails?  In this morning tutorial the Envy Labs team will lead you through all five labs of their Rails for Zombies course. Unlike other tutorials, all you need to start coding Rails is a laptop with Wi-Fi and a modern browser."},"id":7489,"slides_url":null,"rating":null,"when":"2011/05/16 09:00:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/18655","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom I"},{"cached_content_rating":4.05,"location":"","created_at":"2011/05/16 15:20:23 +0000","title":"Upgrading Legacy Rails Applications to Rails 3","event_id":846,"cached_delivery_rating":4.15,"updated_at":"2011/05/23 15:18:29 +0000","featured":false,"cached_rating":4.1,"timezone":null,"info":{"text":"Smart developers have been using Ruby on Rails to rapidly build web applications for over 5 years now. Cutting-edge projects have aged into old, moldy, legacy apps. Rails 3 and Ruby 1.9 offer performance improvements and new features that are guaranteed to take the squeak out of that old wheel and grease the tracks of new development."},"id":7503,"slides_url":"http://crnixon.com/talks/rails-3-upgrade","rating":4.1,"when":"2011/05/16 09:00:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/19173","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom II"},{"cached_content_rating":4.13,"location":null,"created_at":"2011/05/16 15:20:37 +0000","title":"Building Web Apps with HTML5: Beyond the Buzzword","event_id":846,"cached_delivery_rating":4.5,"updated_at":"2011/06/11 21:59:03 +0000","featured":false,"cached_rating":4.31,"timezone":null,"info":{"text":"Modern browsers have changed web development by offering new, more powerful capabilities, known by the marketing buzzword \"HTML5\".  In this tutorial we'll build a sophisticated example that shows you how to take advantage of workers, sockets, canvases, local storage, media embeds, and more. You'll learn how you can use HTML5 to build newer and better web applications, leaving old hacks behind."},"id":7518,"slides_url":null,"rating":4.31,"when":"2011/05/16 09:00:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/18321","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom III"},{"cached_content_rating":null,"location":null,"created_at":"2011/05/16 15:20:53 +0000","title":"Refactotum","event_id":846,"cached_delivery_rating":null,"updated_at":"2011/05/16 15:20:53 +0000","featured":false,"cached_rating":null,"timezone":null,"info":{"text":"Contributing to open source is great for your career. In a few short hours, you can learn, teach, promote your skills, and improve the quality of the community. In this unique workshop, we will show you how, by doing it."},"id":7533,"slides_url":null,"rating":null,"when":"2011/05/16 09:00:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/19277","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom IV"},{"cached_content_rating":null,"location":null,"created_at":"2011/05/16 15:20:01 +0000","title":"Ruby on Rails Tutorial (AKA Intro to Rails - Part 2)","event_id":846,"cached_delivery_rating":null,"updated_at":"2011/05/16 15:20:01 +0000","featured":false,"cached_rating":null,"timezone":null,"info":{"text":"Based on the Ruby on Rails Tutorial book, the second half of Intro to Rails picks up where Rails for Zombies leaves off. You'll join Rails Tutorial author Michael Hartl for some hands-on coding, including an introduction to version control with Git, test-driven development (TDD) with RSpec, and Rails application deployment to a live server."},"id":7490,"slides_url":null,"rating":null,"when":"2011/05/16 13:30:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/18658","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom I"},{"cached_content_rating":2.85,"location":null,"created_at":"2011/05/16 15:20:23 +0000","title":"Building Bulletproof Views","event_id":846,"cached_delivery_rating":3.85,"updated_at":"2011/05/18 19:39:05 +0000","featured":false,"cached_rating":3.35,"timezone":null,"info":{"text":"The Rails View layer is the Wild West. Bad mustaches, crazy fights over simple things, and complete and utter confusion abound. When do we use a helper or a presenter? How do we keep logic and markup separate? What's this here new fangled boilerplate and HTML5/CSS3 thing?"},"id":7504,"slides_url":null,"rating":3.35,"when":"2011/05/16 13:30:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/19279","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom II"},{"cached_content_rating":4.67,"location":null,"created_at":"2011/05/16 15:20:38 +0000","title":"Rails Best Practices","event_id":846,"cached_delivery_rating":4.87,"updated_at":"2011/11/26 19:38:59 +0000","featured":false,"cached_rating":4.77,"timezone":null,"info":{"text":"Although Rails contains many web framework best practices, there are still plenty of ways to create horrible code.  Fortunately, as the community has matured many new techniques have been discovered which can help keep Rails apps maintainable. In this 5 part lab we will walk through the most common of these best practices and get some hands on experience refactoring Rails."},"id":7519,"slides_url":null,"rating":4.77,"when":"2011/05/16 13:30:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/18656","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom III"},{"cached_content_rating":null,"location":null,"created_at":"2011/05/16 15:21:17 +0000","title":"Introduction to Cloud Foundry Workshop","event_id":846,"cached_delivery_rating":null,"updated_at":"2011/05/16 15:21:17 +0000","featured":false,"cached_rating":null,"timezone":null,"info":{"text":"Cloud Foundry is the industry\u2019s first open open platform as a service project initiated by VMware. It can support multiple frameworks, multiple cloud providers, and multiple application services all on a cloud scale platform. Cloud Foundry is available as a cloud service at CloudFoundry.com and as an open source project at CloudFoundry.org."},"id":7559,"slides_url":null,"rating":null,"when":"2011/05/16 13:30:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/20419","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Room 345"},{"cached_content_rating":4.36,"location":null,"created_at":"2011/05/16 15:21:17 +0000","title":"David Heinemeier Hansson","event_id":846,"cached_delivery_rating":4.53,"updated_at":"2011/06/11 22:00:47 +0000","featured":false,"cached_rating":4.44,"timezone":null,"info":{"text":"Keynote by David Heinemeier Hansson."},"id":7560,"slides_url":null,"rating":4.44,"when":"2011/05/17 09:15:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/19068","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom I - II"},{"cached_content_rating":3.73,"location":null,"created_at":"2011/05/16 15:20:01 +0000","title":"SOLID Design Principles Behind The Rails 3 Refactoring","event_id":846,"cached_delivery_rating":3.73,"updated_at":"2011/05/30 19:08:45 +0000","featured":false,"cached_rating":3.73,"timezone":null,"info":{"text":"A huge step forward in the third version of the Rails 3 framework is the modularity it provides. This modularity is the result of a long refactoring effort to make it easier to extend or modify Rails to suit our application's needs."},"id":7491,"slides_url":null,"rating":3.73,"when":"2011/05/17 10:45:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/19579","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom I"},{"cached_content_rating":4.47,"location":null,"created_at":"2011/05/16 15:20:24 +0000","title":"Fat Models Aren't Enough","event_id":846,"cached_delivery_rating":4.75,"updated_at":"2011/05/21 19:38:45 +0000","featured":false,"cached_rating":4.61,"timezone":null,"info":{"text":"\"Fat Models, Skinny Controllers\" they scream. Pushing your logic down to the model layer is a key step to improve testability, maintainability, and code quality. But many developers now have \"junk drawer\" models that don't realize these goals.  Having a fat model isn't enough!  Come learn techniques to refactor your models and make them beautiful."},"id":7505,"slides_url":null,"rating":4.61,"when":"2011/05/17 10:45:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/18514","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom II"},{"cached_content_rating":3.5,"location":null,"created_at":"2011/05/16 15:20:39 +0000","title":"From 1,000 Transactions a Month to 1 million in a Day: Lessons in Credit Card Processing from LivingSocial","event_id":846,"cached_delivery_rating":3.5,"updated_at":"2011/06/11 22:05:55 +0000","featured":false,"cached_rating":3.5,"timezone":null,"info":{"text":"Payment Gateways, and Merchant Accounts, and PCI Compliance! Oh, my! Getting started with credit card processing can be confusing. I'll provide an overview of the credit card ecosystem and show you how to securely accept credit cards in your application. Finally, I'll introduce a novel technique that allowed us to process over 1 million credit card transactions in a single day."},"id":7520,"slides_url":null,"rating":3.5,"when":"2011/05/17 10:45:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/19466","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom III"},{"cached_content_rating":3.7,"location":null,"created_at":"2011/05/16 15:20:54 +0000","title":"Career Health Check","event_id":846,"cached_delivery_rating":4.5,"updated_at":"2011/05/17 20:10:46 +0000","featured":false,"cached_rating":4.1,"timezone":null,"info":{"text":"Whether you are a student, a freelancer, an employee or running a company, your career is your responsibility. This talk will deliver a plan to review your career in terms of mind, body, heart and soul health. The talk will incorporate both personal experiences and those from others in the international Ruby community on reviewing your own career."},"id":7534,"slides_url":null,"rating":4.1,"when":"2011/05/17 10:45:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/19730","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom IV"},{"cached_content_rating":null,"location":null,"created_at":"2011/05/16 15:21:11 +0000","title":"Cloud Foundry \u2013 The Rails Developer\u2019s Perspective","event_id":846,"cached_delivery_rating":null,"updated_at":"2011/05/16 15:21:11 +0000","featured":false,"cached_rating":null,"timezone":null,"info":{"text":"Cloud Foundry is the industry\u2019s first open open platform as a service project initiated by VMware. It can support multiple frameworks, multiple cloud providers, and multiple application services all on a cloud scale platform. Cloud Foundry is available as a cloud service at CloudFoundry.com and as an open source project at CloudFoundry.org"},"id":7556,"slides_url":null,"rating":null,"when":"2011/05/17 10:45:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/20380","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Room 345"},{"cached_content_rating":1.75,"location":null,"created_at":"2011/05/16 15:20:01 +0000","title":"ActiveSupport 3: What We Should Know About What We Don't Know","event_id":846,"cached_delivery_rating":2.75,"updated_at":"2011/05/21 19:42:06 +0000","featured":false,"cached_rating":2.25,"timezone":null,"info":{"text":"We all use ActiveSupport 3 every day. Many of us don't take the time to dig down into some of the more interesting parts. This talk will explore the history of ActiveSupport and demonstrate areas most aren't familiar with."},"id":7492,"slides_url":null,"rating":2.25,"when":"2011/05/17 11:45:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/19431","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom I"},{"cached_content_rating":0.63,"location":null,"created_at":"2011/05/16 15:20:24 +0000","title":"Mining Rails: Learning from your App's Lifeline","event_id":846,"cached_delivery_rating":1.53,"updated_at":"2011/06/11 22:06:50 +0000","featured":false,"cached_rating":1.08,"timezone":null,"info":{"text":"Learn more about how you can spot development trends in your version control history and use that information to guide your choices going forward."},"id":7506,"slides_url":null,"rating":1.08,"when":"2011/05/17 11:45:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/19521","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom II"},{"cached_content_rating":4.43,"location":null,"created_at":"2011/05/16 15:20:44 +0000","title":"KnowSQL: Database Tricks To Make Your Life Easier","event_id":846,"cached_delivery_rating":4.4,"updated_at":"2012/02/08 06:45:56 +0000","featured":false,"cached_rating":4.42,"timezone":null,"info":{"text":"Relational databases have been around for decades, and there's a vast amount of untapped power sitting right at our fingertips. The problem is that messing with SQL can be difficult and confusing. This talk, make up of 6 discrete chapters, shows how you can use a little dash of database in your app to make working in Rails easier and faster."},"id":7521,"slides_url":null,"rating":4.42,"when":"2011/05/17 11:45:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/18476","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom III"},{"cached_content_rating":3.0,"location":null,"created_at":"2011/05/16 15:20:54 +0000","title":"20 Productivity Tips: You Can Be 15% [1] More Productive","event_id":846,"cached_delivery_rating":2.75,"updated_at":"2011/05/18 18:09:32 +0000","featured":false,"cached_rating":2.88,"timezone":null,"info":{"text":"We will explore principles of productivity, as well as techniques and tools you can use. [1] 5 hours saved every work week [2] http://www.ted.com/talks/jason_fried_why_work_doesn_t_happen_at_work.html"},"id":7535,"slides_url":null,"rating":2.88,"when":"2011/05/17 11:45:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/19456","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom IV"},{"cached_content_rating":null,"location":null,"created_at":"2011/05/16 15:21:08 +0000","title":"Open Source E-Commerce With Spree","event_id":846,"cached_delivery_rating":null,"updated_at":"2011/05/16 15:21:08 +0000","featured":false,"cached_rating":null,"timezone":null,"info":{"text":"Come learn about the open source e-commerce framework that is taking the Rails world by storm!  We will provide a basic overview of Spree, demonstrate some of the unique features and preview some of the exciting features planned for this year."},"id":7551,"slides_url":null,"rating":null,"when":"2011/05/17 11:45:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/20219","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Room 345"},{"cached_content_rating":4.24,"location":null,"created_at":"2011/05/16 15:20:24 +0000","title":"Keeping Rails on the Tracks","event_id":846,"cached_delivery_rating":4.68,"updated_at":"2011/05/18 18:10:19 +0000","featured":false,"cached_rating":4.46,"timezone":null,"info":{"text":"It's not what you code, it's how you code it. In this talk, I'll take you through real world examples of code drawn from the 40+ production Rails applications we have developed and maintained during the last 12 months and highlight anti patterns and examples of technical code debt in them. You do what you can do to avoid these, making your future lives simpler. Your future you will thank you..."},"id":7507,"slides_url":null,"rating":4.46,"when":"2011/05/17 13:50:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/17703","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom II"},{"cached_content_rating":4.4,"location":null,"created_at":"2011/05/16 15:20:44 +0000","title":"Polyglot Persistence: It Can Get Messy","event_id":846,"cached_delivery_rating":3.8,"updated_at":"2011/05/17 20:26:54 +0000","featured":false,"cached_rating":4.1,"timezone":null,"info":{"text":"As you grow your application, you tend to grow the number of databases you're using. Caches, key-value stores, document databases, full-text indices, and distributed databases all come into play. It can prove challenging to add these moving parts and keep your sanity. Learn how to incrementally add these databases to your application as it scales and keep your code clean and clear."},"id":7522,"slides_url":null,"rating":4.1,"when":"2011/05/17 13:50:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/18237","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom III"},{"cached_content_rating":4.4,"location":null,"created_at":"2011/05/16 15:20:54 +0000","title":"The Other Meta: On Rails and What Matters to Me","event_id":846,"cached_delivery_rating":5.0,"updated_at":"2011/05/21 17:29:57 +0000","featured":false,"cached_rating":4.7,"timezone":null,"info":{"text":"This is a talk about what being a Rails developer means to me, why I'm proud to be one and why you should be too."},"id":7536,"slides_url":null,"rating":4.7,"when":"2011/05/17 13:50:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/19341","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom IV"},{"cached_content_rating":null,"location":null,"created_at":"2011/05/16 15:21:09 +0000","title":"Rails Developers and the Importance of ipv6","event_id":846,"cached_delivery_rating":null,"updated_at":"2011/05/16 15:21:09 +0000","featured":false,"cached_rating":null,"timezone":null,"info":{"text":"Tracking ipv6, with it's enormous address space, is a technically challenging engineering problem and is important to the Rails developer community. Why is ipv6 important for a rails developer?  ipv6 offers better security, but how do you represent ipv6 in network devices, databases (relational and non-relational), frameworks (rails), UI, etc.?"},"id":7552,"slides_url":null,"rating":null,"when":"2011/05/17 13:50:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/19909","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Room 345"},{"cached_content_rating":4.24,"location":"","created_at":"2011/05/17 08:09:17 +0000","title":"Keeping Rails on the Tracks","event_id":846,"cached_delivery_rating":4.6,"updated_at":"2011/05/21 20:15:14 +0000","featured":false,"cached_rating":4.42,"timezone":null,"info":{"text":"It's not what you code, it's how you code it. In this talk, I'll take you through real world examples of code drawn from the 40+ production Rails applications we have developed and maintained during the last 12 months and highlight anti patterns and examples of technical code debt in them. You do what you can do to avoid these, making your future lives simpler. Your future you will thank you..."},"id":7575,"slides_url":"http://www.slideshare.net/raasdnil/keeping-rails-on-the-tracks","rating":4.42,"when":"2011/05/17 13:50:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/17703","is_spam":false,"slideshare_key":"railsconf2011keepingrailsonthetracks-110517030458-phpapp02","series_id":null,"room":"Ballroom II"},{"cached_content_rating":4.72,"location":null,"created_at":"2011/05/16 05:02:01 +0000","title":"Confident Code","event_id":846,"cached_delivery_rating":4.44,"updated_at":"2011/05/23 15:27:21 +0000","featured":false,"cached_rating":4.58,"timezone":null,"info":{"text":"Are your methods timid? Do they constantly second-guess themselves, checking  for nil values, errors, and unexpected input?\r\n\r\nEven the cleanest Ruby codebases can become littered over time with nil   checks, error handling, and other interruptions which steal attention away from the essential purpose of the code.  This talk will discuss strategies for writing your Ruby classes and methods in a confident, straightforward style; without sacrificing functionality or robustness.  In the process, we'll cover concepts and techniques points including:\r\n\r\n  * The narrative style of method construction\r\n  * The four parts of a method\r\n  * Three strategies for dealing with uncertain input\r\n  * Massaging input with coercion and the Decorator pattern\r\n  * Lightweight preconditions\r\n  * Exterminating nils from your code\r\n  * The chaining and iterative styles of method construction\r\n  * Eliminating conditionals with the Special Case and Null Object patterns\r\n  * Isolating errors with the Bouncer and Checked Method patterns"},"id":7473,"slides_url":"","rating":4.58,"when":"2011/05/17 14:50:00 +0000","talk_url":"http://avdi.org/devblog","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballrooom II"},{"cached_content_rating":2.7,"location":null,"created_at":"2011/05/16 15:20:02 +0000","title":"Maintaining Balance While Reducing Duplication","event_id":846,"cached_delivery_rating":4.4,"updated_at":"2011/05/21 17:27:53 +0000","featured":false,"cached_rating":3.55,"timezone":null,"info":{"text":"The DRY Principle (Don\u2019t Repeat Yourself) tells us that \"every piece of knowledge must have a single, unambiguous, authoritative representation within a system.\" A powerful guideline, but it is often heeded without a clear understanding of its underlying motivations, nor consideration for other principles that might lead the code in different directions."},"id":7493,"slides_url":null,"rating":3.55,"when":"2011/05/17 14:50:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/19276","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom I"},{"cached_content_rating":null,"location":null,"created_at":"2011/05/16 15:20:45 +0000","title":"Why You Should Never Use An ORM","event_id":846,"cached_delivery_rating":null,"updated_at":"2011/05/16 15:20:45 +0000","featured":false,"cached_rating":null,"timezone":null,"info":{"text":"Having built two object mappers in Ruby (MongoMapper and ToyStore), I would like to throw out a crazy thought. What if, on your next project, you ditch the ORM.  No ActiveRecord. No DataMapper. No anything. Just you and a lower level driver, whispering sweet nothings into Ruby classes and modules. Could you? Would you? DARE you?"},"id":7523,"slides_url":null,"rating":null,"when":"2011/05/17 14:50:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/19527","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom III"},{"cached_content_rating":null,"location":null,"created_at":"2011/05/16 15:21:10 +0000","title":"Next Generation App Performance Management","event_id":846,"cached_delivery_rating":null,"updated_at":"2011/05/16 15:21:10 +0000","featured":false,"cached_rating":null,"timezone":null,"info":{"text":"The whole team at New Relic has been busy building the next generation of our app management tool and we couldn't think of a better place to show it off than at RailsConf. Join us for a presentation and demonstration of some remarkable new capabilities that we think you'll love. We can't wait to see you there!"},"id":7553,"slides_url":null,"rating":null,"when":"2011/05/17 14:50:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/20236","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Room 345"},{"cached_content_rating":4.18,"location":null,"created_at":"2011/04/07 14:24:22 +0000","title":"GeoSpace your Rails Apps!","event_id":846,"cached_delivery_rating":4.18,"updated_at":"2011/06/11 22:09:16 +0000","featured":false,"cached_rating":4.18,"timezone":null,"info":{"text":"This session is intended for intermediate Rails developers who would like to start building location based applications, but may not know the full breadth of the toolkits available.\r\n\r\nWe will start by examining the different types of location-based applications. Then we will look at the anatomy of a typical location-based application, and the elements of the spatial tool stack that apply to each geospatial element in the application. The relative strengths and weaknesses of RGeo, GeoRuby, and spatial_adapter will be examined in depth. We will then discuss in moderate detail the capabilities the many visualization libraries and DBMS systems that round out the stack, with a focus on helping the attendee understand when to choose which tool.\r\n\r\nFinally, we will explore some examples of geospatial applications that are 1) inspiring and 2) use different elements of the stack as discussed during the session.\r\n\r\nAlthough this presentation will incorporate a limited amount of the content that I have presented on the topic at other conferences, this is a new presentation that examines the actual tools that a Rubyist would use in their daily work. I have developed this material in response to feedback on my \u201cIntro To Spatial Programming\u201d presentation whereby users have asked overwhelmingly for direction on how to navigate the landscape of tools and technologies at a very technical level.\r\n\r\nIt\u2019s important to note that this presentation is not a re-hashing of my prior work: it builds upon it. For those who have seen me present on GIS and Geospatial before, the additional information will be a welcome addition to their knowledge base. For those who are just being introduced to the topic, I\u2019ll review just enough material to make them comfortable diving in to the details."},"id":7100,"slides_url":"","rating":4.18,"when":"2011/05/17 14:50:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/19473","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom VI"},{"cached_content_rating":null,"location":null,"created_at":"2011/05/16 15:20:03 +0000","title":"Double-Shipping Software for Profit","event_id":846,"cached_delivery_rating":null,"updated_at":"2011/05/16 15:20:03 +0000","featured":false,"cached_rating":null,"timezone":null,"info":{"text":"Selling a product once is fun, but selling that product twice is wildly excellent. GitHub does that with Firewall Install, our installable enterprise GitHub. This talk aims to discuss how you can repackage your existing product too, by covering code strategies for parallel codebases, supporting remote server infrastructures, and talking about the impressively stupid decisions we've made."},"id":7494,"slides_url":null,"rating":null,"when":"2011/05/17 16:25:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/18694","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom I"},{"cached_content_rating":1.25,"location":null,"created_at":"2011/05/16 15:20:25 +0000","title":"Using Beautiful APIs to Split and Scale Your Application","event_id":846,"cached_delivery_rating":1.5,"updated_at":"2011/06/11 22:10:12 +0000","featured":false,"cached_rating":1.38,"timezone":null,"info":{"text":"Well-designed APIs can double as a great way to help make scaling easier by splitting your application in two.  This talk will discuss some new libraries and techniques which aim to let you make the transition fun and manageable by splitting your application horizontally, not vertically - into services."},"id":7509,"slides_url":null,"rating":1.38,"when":"2011/05/17 16:25:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/19508","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom II"},{"cached_content_rating":null,"location":null,"created_at":"2011/05/16 15:20:45 +0000","title":"The Holy Grail (of Databases)","event_id":846,"cached_delivery_rating":null,"updated_at":"2011/05/16 15:20:45 +0000","featured":false,"cached_rating":null,"timezone":null,"info":{"text":"You must choose, but choose wisely. The database world is larger than SQL v noSQL, and growing by the month. Choosing a data storage engine is an important decision, but it doesn't have to be painful if you know the landscape. If your understanding of data storage tops out at \"Mongo is webscale\" or \"mysql + memcached = win\" then this talk is for you."},"id":7524,"slides_url":null,"rating":null,"when":"2011/05/17 16:25:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/19359","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom III"},{"cached_content_rating":3.2,"location":null,"created_at":"2011/05/16 15:21:00 +0000","title":"25 Deployment Tips in 50 Minutes","event_id":846,"cached_delivery_rating":2.9,"updated_at":"2011/06/11 22:10:39 +0000","featured":false,"cached_rating":3.05,"timezone":null,"info":{"text":"After spending the last few years developing and deploying Rails applications we're ready to unload all the tips and tricks we've learned.  But each nugget of experience will be ruthlessly culled to fit in two minutes.  You'll get the whole seat but you'll only need the edge!"},"id":7538,"slides_url":null,"rating":3.05,"when":"2011/05/17 16:25:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/18603","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom IV"},{"cached_content_rating":4.83,"location":null,"created_at":"2011/05/16 15:21:17 +0000","title":"Eric Ries","event_id":846,"cached_delivery_rating":5.0,"updated_at":"2011/06/11 22:11:29 +0000","featured":false,"cached_rating":4.92,"timezone":null,"info":{"text":"Keynote by Eric Ries, creator of the Lean Startup methodology and author of the popular entrepreneurship blog Startup Lessons Learned."},"id":7561,"slides_url":null,"rating":4.92,"when":"2011/05/17 19:00:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/19701","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom I - II"},{"cached_content_rating":4.07,"location":null,"created_at":"2011/05/16 15:21:17 +0000","title":"Ruby Through the Ages (or, A Brief History of Ruby)","event_id":846,"cached_delivery_rating":4.73,"updated_at":"2011/06/11 22:13:00 +0000","featured":false,"cached_rating":4.4,"timezone":null,"info":{"text":"Dr. Nic Williams takes you through the vagaries of Ruby's evolution, with an emphasis on the past and future of JRuby and Rubinius."},"id":7562,"slides_url":null,"rating":4.4,"when":"2011/05/18 09:15:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/20257","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom I - II"},{"cached_content_rating":4.73,"location":null,"created_at":"2011/05/16 15:21:18 +0000","title":"Double Dream Hands: So Intense!","event_id":846,"cached_delivery_rating":4.98,"updated_at":"2011/06/11 22:13:35 +0000","featured":false,"cached_rating":4.86,"timezone":null,"info":{"text":"In this talk Se\u00f1or Engineer Aaron Patterson will talk about the adventures he's had over the past year.  Topics will include (but are not limited to), ARel, ActiveRecord, ActionPack, Code Refactoring, and Sausage.  Though these topics may go their separate ways, they are not worlds apart.  Attendance is required as there will be homework assigned."},"id":7563,"slides_url":null,"rating":4.86,"when":"2011/05/18 09:30:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/19058","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom I - II"},{"cached_content_rating":null,"location":null,"created_at":"2011/05/16 15:20:03 +0000","title":"Inside Groupon","event_id":846,"cached_delivery_rating":null,"updated_at":"2011/05/16 15:20:03 +0000","featured":false,"cached_rating":null,"timezone":null,"info":{"text":"An inside look at the tools, techniques, and scaling issues that Groupon has experienced during it's meteoric rise to becoming the fastest growing company in history!"},"id":7495,"slides_url":null,"rating":null,"when":"2011/05/18 10:45:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/17691","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom I"},{"cached_content_rating":3.9,"location":null,"created_at":"2011/05/16 15:20:25 +0000","title":"Sass: The Future of Stylesheets","event_id":846,"cached_delivery_rating":3.9,"updated_at":"2011/05/18 19:42:49 +0000","featured":false,"cached_rating":3.9,"timezone":null,"info":{"text":"Let's face it. CSS is dumb. There is no such thing as a DRY CSS file and stylesheets are often the biggest blemish in an otherwise beautifully coded app. Sass is the future of stylesheets. Rails 3.1 includes it by default and the W3C is adding concepts from Sass to CSS itself."},"id":7510,"slides_url":null,"rating":3.9,"when":"2011/05/18 10:45:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/19066","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom II"},{"cached_content_rating":null,"location":null,"created_at":"2011/05/16 15:20:46 +0000","title":"Beyond MVC -- DCI","event_id":846,"cached_delivery_rating":null,"updated_at":"2011/05/16 15:20:46 +0000","featured":false,"cached_rating":null,"timezone":null,"info":{"text":"MVC inventor Trygve Reemskaug and James Coplien have a new vision for software, called DCI -- Data, Context, and Interaction.  Although as conceptually elegant as MVC, and with the same potential to improve software, DCI's innovations are not easily implemented in Java or C#.  That is not the case with Ruby, however, which puts Rails developers in a unique position to lead the way."},"id":7525,"slides_url":null,"rating":null,"when":"2011/05/18 10:45:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/19424","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom III"},{"cached_content_rating":4.63,"location":null,"created_at":"2011/05/16 15:21:00 +0000","title":"Getting Started With JavaScript Testing","event_id":846,"cached_delivery_rating":4.27,"updated_at":"2011/05/21 20:16:33 +0000","featured":false,"cached_rating":4.45,"timezone":null,"info":{"text":"While most Ruby developers are very familiar with testing their code, JavaScript testing is still a new frontier for many. This talk will show you how to easily write and run JavaScript integration tests with Capybara and Cucumber, and unit tests with Evergreen and Jasmine. The goal is to inspire you to get started with JavaScript testing, and point you in the right direction to go do it!"},"id":7539,"slides_url":null,"rating":4.45,"when":"2011/05/18 10:45:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/19478","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom IV"},{"cached_content_rating":null,"location":null,"created_at":"2011/05/16 15:21:08 +0000","title":"Fighting Code Smell","event_id":846,"cached_delivery_rating":null,"updated_at":"2011/05/16 15:21:08 +0000","featured":false,"cached_rating":null,"timezone":null,"info":{"text":"Nobody likes when their code smells. To help avoid it, dozens of  special tools and approaches have been designed. Efficient coding  tools, refactorings, code metrics, code analysis, code testing and  debugging are all crucial for creating quality, maintainable code."},"id":7550,"slides_url":null,"rating":null,"when":"2011/05/18 10:45:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/20221","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Room 345"},{"cached_content_rating":3.9,"location":null,"created_at":"2011/05/16 15:20:04 +0000","title":"Scaling with Friends","event_id":846,"cached_delivery_rating":4.0,"updated_at":"2011/05/18 19:43:19 +0000","featured":false,"cached_rating":3.95,"timezone":null,"info":{"text":"How do you scale the web service that serves one of the most popular games on iOS and Android?  We will take you from the humble beginnings of Chess with Friends to the lexical addiction Words with Friends."},"id":7496,"slides_url":null,"rating":3.95,"when":"2011/05/18 11:45:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/19471","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom I"},{"cached_content_rating":4.5,"location":null,"created_at":"2011/05/16 15:20:25 +0000","title":"Rails Performance Tools","event_id":846,"cached_delivery_rating":3.5,"updated_at":"2011/06/11 22:15:38 +0000","featured":false,"cached_rating":4.0,"timezone":null,"info":{"text":"Ruby might be slow, but bad code only makes it worse. This talk will teach you how to use powerful tools to see how your code is executed, so you can understand, debug and optimize it."},"id":7511,"slides_url":null,"rating":4.0,"when":"2011/05/18 11:45:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/18051","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom II"},{"cached_content_rating":4.0,"location":null,"created_at":"2011/05/16 15:20:46 +0000","title":"Enhancing the Search Box","event_id":846,"cached_delivery_rating":4.2,"updated_at":"2011/06/11 22:16:26 +0000","featured":false,"cached_rating":4.1,"timezone":null,"info":{"text":"Is your search box still a plain old text field? If so, you're way behind the times. This session will give you the tools to supercharge your search box, making it easier for your users to interact with your site. From outlining the basics behind autocomplete, to more sophisticated autosuggest techniques, all the way to super-search boxes like those of Facebook and Quora."},"id":7526,"slides_url":null,"rating":4.1,"when":"2011/05/18 11:45:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/19447","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom III"},{"cached_content_rating":4.1,"location":null,"created_at":"2011/05/16 15:21:00 +0000","title":"Why Can't I Test My JavaScript?","event_id":846,"cached_delivery_rating":4.6,"updated_at":"2011/05/21 19:52:13 +0000","featured":false,"cached_rating":4.35,"timezone":null,"info":{"text":"The Ruby/Rails community is known for it's adoption of TDD,  yet that seems to stop at the border that is our web browsers. The issue isn't testing tools, the browser or the DOM. It's us. We write untestable JavaScript and our tests are yelling at us, begging us to change. Will we listen? Come and learn how we can push the Ruby testing philosophy into JavaScript, and impact the apps of the future."},"id":7540,"slides_url":null,"rating":4.35,"when":"2011/05/18 11:45:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/19337","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom IV"},{"cached_content_rating":4.0,"location":null,"created_at":"2011/05/16 15:21:10 +0000","title":"Build vs. Buy? Or How I Sell A Consultancy","event_id":846,"cached_delivery_rating":4.5,"updated_at":"2011/05/21 20:17:13 +0000","featured":false,"cached_rating":4.25,"timezone":null,"info":{"text":"As a startup, it's critical to understand which technology you should build and which technology you should buy.  As a product or service company it's also critical to understand since your customers may be weighing the same decision.  It's not just about technology either.  Building vs. buying can apply to the team itself.  This talk will outline our lessons learned."},"id":7554,"slides_url":null,"rating":4.25,"when":"2011/05/18 11:45:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/20262","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Room 345"},{"cached_content_rating":3.7,"location":null,"created_at":"2011/05/16 15:20:04 +0000","title":"How To Handle 1,000,000 Daily Users Without Using A Cache","event_id":846,"cached_delivery_rating":3.9,"updated_at":"2011/06/11 22:17:11 +0000","featured":false,"cached_rating":3.8,"timezone":null,"info":{"text":"Social games backends share many aspects of normal web applications, but exasperate scaling problems. Follow this talk to see how we evolved and brought a plain rails app to 5000 reqs/sec, moved part of our data from SQL to NoSQL in order to reach 100,000 queries / second and see what we learned from this experience."},"id":7497,"slides_url":null,"rating":3.8,"when":"2011/05/18 13:50:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/19501","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom I"},{"cached_content_rating":4.0,"location":null,"created_at":"2011/05/16 15:20:25 +0000","title":"OmniAuth from the Ground Up","event_id":846,"cached_delivery_rating":4.43,"updated_at":"2011/05/21 20:17:35 +0000","featured":false,"cached_rating":4.22,"timezone":null,"info":{"text":"OmniAuth is a library with a mission: eliminate the headaches caused by having to authenticate through...well, anything! In \"From The Ground Up\" you'll learn about the motivations, inspirations, and uses of OmniAuth as well as a look at how it was built and how you can write your own custom strategies."},"id":7512,"slides_url":null,"rating":4.22,"when":"2011/05/18 13:50:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/19463","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom II"},{"cached_content_rating":null,"location":null,"created_at":"2011/05/16 15:20:46 +0000","title":"Stateful, Scalable Servers with EventMachine and Rails","event_id":846,"cached_delivery_rating":null,"updated_at":"2011/05/16 15:20:46 +0000","featured":false,"cached_rating":null,"timezone":null,"info":{"text":"Rails is a great framework for building web-based systems, but many of us don't have much experience outside of port 80 or 443. Dave Troy developed a scalable server architecture for Shortmail.com, implementing stateful, secure services such as LMTP, SMTP and IMAP using EventMachine and Rails."},"id":7527,"slides_url":null,"rating":null,"when":"2011/05/18 13:50:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/19674","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom III"},{"cached_content_rating":4.0,"location":null,"created_at":"2011/05/16 15:21:01 +0000","title":"Test Your Legacy Code","event_id":846,"cached_delivery_rating":4.35,"updated_at":"2011/05/21 19:52:50 +0000","featured":false,"cached_rating":4.18,"timezone":null,"info":{"text":"Everybody wants to do test-driven development, but switching to TDD or BDD on an existing project that doesn\u2019t have tests presents special challenges. This session will show you how to work around dependencies that make testing legacy code so complicated. Topics include using Cucumber for black-box testing, using mock objects to limit dependencies, and using Ruby dynamism to cut through problems."},"id":7541,"slides_url":null,"rating":4.18,"when":"2011/05/18 13:50:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/19458","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom IV"},{"cached_content_rating":null,"location":null,"created_at":"2011/05/16 15:21:10 +0000","title":"People's Choice","event_id":846,"cached_delivery_rating":null,"updated_at":"2011/05/16 15:21:10 +0000","featured":false,"cached_rating":null,"timezone":null,"info":{"text":"This Year, Dr. Nic hosts Engine Yard's sponsored sessions, which were given away to members of the Ruby on Rails community who did not otherwise get the chance to speak at RailsConf this year. The speakers were nominated by the community, so don't miss it--the people have spoken!"},"id":7555,"slides_url":null,"rating":null,"when":"2011/05/18 13:50:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/20294","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Room 345"},{"cached_content_rating":2.95,"location":null,"created_at":"2011/05/16 15:20:26 +0000","title":"When and How to Expose Services","event_id":846,"cached_delivery_rating":2.95,"updated_at":"2011/05/18 22:56:21 +0000","featured":false,"cached_rating":2.95,"timezone":null,"info":{"text":"Drawing from the authors' own experiences, methods and guidelines will be presented for exposing and sharing services within and between large Rails-based systems."},"id":7513,"slides_url":null,"rating":2.95,"when":"2011/05/18 14:50:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/17700","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom II"},{"cached_content_rating":null,"location":null,"created_at":"2011/05/16 15:20:46 +0000","title":"Deploying with Bundler","event_id":846,"cached_delivery_rating":null,"updated_at":"2011/05/16 15:20:46 +0000","featured":false,"cached_rating":null,"timezone":null,"info":{"text":"Learn the ins and outs of deploying Rails (and other) web apps with Bundler, from a core team member. This session will cover deploying by hand, with Capistrano and Vlad, as well as running bundled apps in Mongrel, Unicorn, and Passenger, deploying to firewalled servers, and more."},"id":7528,"slides_url":null,"rating":null,"when":"2011/05/18 14:50:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/17861","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom III"},{"cached_content_rating":4.33,"location":null,"created_at":"2011/05/16 15:21:01 +0000","title":"Testing The Impossible","event_id":846,"cached_delivery_rating":3.67,"updated_at":"2011/05/21 20:17:56 +0000","featured":false,"cached_rating":4.0,"timezone":null,"info":{"text":"Dive into the internals of thoughtbot's copycopter_client and discover how to handle difficult-to-test components such as HTTP, SSL, threads, forks, logging, caching, Rails engines, and others. Learn viable testing strategies for applications and libraries that contain such components with a focus on Rails libraries."},"id":7542,"slides_url":null,"rating":4.0,"when":"2011/05/18 14:50:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/19434","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom IV"},{"cached_content_rating":null,"location":null,"created_at":"2011/05/16 15:21:11 +0000","title":"The Wonderful World of Heroku: 2011 Edition","event_id":846,"cached_delivery_rating":null,"updated_at":"2011/05/16 15:21:11 +0000","featured":false,"cached_rating":null,"timezone":null,"info":{"text":"The last year has been an exciting one for Heroku and for the tens of thousands of developers using the platform. In this session, we'll take a look at the dozens of add-ons, the substantial new developments at the platform level, and our ever-present emphasis on working with developers to create the best possible experience -- and we'll leave plenty of time for your burning questions."},"id":7557,"slides_url":null,"rating":null,"when":"2011/05/18 14:50:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/20348","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Room 345"},{"cached_content_rating":3.9,"location":null,"created_at":"2011/05/17 19:49:22 +0000","title":"RailsConf2011: Controlled Chaos","event_id":846,"cached_delivery_rating":4.2,"updated_at":"2011/05/18 19:38:50 +0000","featured":false,"cached_rating":4.05,"timezone":null,"info":{"text":"A case study in introducing Rails into a public NASA Earth Science system. Despite a broad investment in Java, we conducted a survey of modern development technologies including Flex, Django, JSF2 and Rails. We chose to move forward using Ruby on Rails with JRuby. This presentation discusses our experiences, including technical, process, and psychological, using RoR on a production system."},"id":7577,"slides_url":"","rating":4.05,"when":"2011/05/18 14:50:00 +0000","talk_url":"","is_spam":false,"slideshare_key":null,"series_id":null,"room":""},{"cached_content_rating":null,"location":null,"created_at":"2011/05/16 15:20:11 +0000","title":"Migrating To Rails 3 - An In-house Developer's Perspective","event_id":846,"cached_delivery_rating":null,"updated_at":"2011/05/16 15:20:11 +0000","featured":false,"cached_rating":null,"timezone":null,"info":{"text":"As in-house developers we are constantly spinning up new applications to help run our business. Most of these apps share a common set of features. Our transition to Rails 3 has allowed us to start with a clean slate and rethink what works best for us. We will discuss the base feature set needed for almost every app and how we use templates to quickly spin up a new app."},"id":7499,"slides_url":null,"rating":null,"when":"2011/05/18 16:25:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/19442","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom I"},{"cached_content_rating":4.57,"location":null,"created_at":"2011/05/16 15:20:26 +0000","title":"Lightning Talks","event_id":846,"cached_delivery_rating":4.53,"updated_at":"2011/05/23 15:08:08 +0000","featured":false,"cached_rating":4.55,"timezone":null,"info":{"text":"Calling all RailsConf attendees: do you have something awesome to share with the Rails community? Can you tell us in 5 minutes what it is and why it's awesome? If so then sign up for the RailsConf Lighting Talks."},"id":7514,"slides_url":null,"rating":4.55,"when":"2011/05/18 16:25:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/19733","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom II"},{"cached_content_rating":null,"location":null,"created_at":"2011/05/16 15:20:52 +0000","title":"Solving Performance Problems with Horizontal Scale. (The Worker Pattern)","event_id":846,"cached_delivery_rating":null,"updated_at":"2011/05/16 15:20:52 +0000","featured":false,"cached_rating":null,"timezone":null,"info":{"text":"A deep look into 2 common performance problems web developers face. We will consider these problems and then I will show solutions to these problems. From here we can generalize the solution into a pattern I call: The Worker Pattern."},"id":7529,"slides_url":null,"rating":null,"when":"2011/05/18 16:25:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/18378","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom III"},{"cached_content_rating":null,"location":null,"created_at":"2011/05/16 15:21:01 +0000","title":"Ruby and Rails Packaging to Production: The Unusual Should Be Usual!","event_id":846,"cached_delivery_rating":null,"updated_at":"2011/05/16 15:21:01 +0000","featured":false,"cached_rating":null,"timezone":null,"info":{"text":"Many teams and projects I've been involved with are deploying ruby applications in an atypic way, i.e. different from the mainstream \"cap deploy\". It has been a very nice experience so far, and I would like to share. Come hear why some people think that there are better and not much explored ways of deploying ruby and rails systems."},"id":7543,"slides_url":null,"rating":null,"when":"2011/05/18 16:25:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/19770","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom IV"},{"cached_content_rating":null,"location":null,"created_at":"2011/05/16 15:21:11 +0000","title":"Pivotal Tracker: The Road Ahead","event_id":846,"cached_delivery_rating":null,"updated_at":"2011/05/16 15:21:11 +0000","featured":false,"cached_rating":null,"timezone":null,"info":{"text":"Pivotal Tracker is the world's most popular agile project management app, and it all started here at RailsConf three years ago. We'll take a look how Tracker grew from a simple tool that we needed as a consulting company to a major transformational force in modern software development, talk about some of the challenges along the way, and look at the road ahead, including upcoming new features."},"id":7558,"slides_url":null,"rating":null,"when":"2011/05/18 16:25:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/20373","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Room 345"},{"cached_content_rating":4.8,"location":null,"created_at":"2011/05/16 15:21:18 +0000","title":"50 in 50","event_id":846,"cached_delivery_rating":4.6,"updated_at":"2011/05/19 19:10:59 +0000","featured":false,"cached_rating":4.7,"timezone":null,"info":{"text":"People keep inventing new programming languages.  What is programming, and how can the design of a programming language help or hinder that process? We have learned a lot over the last five decades: principles, conventions, theory, fashions, and fads. \u201cThose who cannot remember the past are condemned to repeat it.\u201d"},"id":7564,"slides_url":null,"rating":4.7,"when":"2011/05/18 19:00:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/18591","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom I - II"},{"cached_content_rating":4.27,"location":null,"created_at":"2011/05/16 15:21:19 +0000","title":"The LivingSocial Story","event_id":846,"cached_delivery_rating":4.33,"updated_at":"2011/06/11 22:19:01 +0000","featured":false,"cached_rating":4.3,"timezone":null,"info":{"text":"Keynote by Aaron Batalion, CTO, LivingSocial."},"id":7567,"slides_url":null,"rating":4.3,"when":"2011/05/19 09:15:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/20256","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom I - II"},{"cached_content_rating":4.35,"location":null,"created_at":"2011/05/16 15:21:18 +0000","title":"Corey Haines","event_id":846,"cached_delivery_rating":4.85,"updated_at":"2011/05/21 19:58:31 +0000","featured":false,"cached_rating":4.6,"timezone":null,"info":{"text":"Keynote by Corey Haines."},"id":7565,"slides_url":null,"rating":4.6,"when":"2011/05/19 09:30:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/20830","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom I - II"},{"cached_content_rating":2.97,"location":null,"created_at":"2011/05/16 15:21:19 +0000","title":"Dan Melton","event_id":846,"cached_delivery_rating":2.87,"updated_at":"2011/06/11 22:20:18 +0000","featured":false,"cached_rating":2.92,"timezone":null,"info":{"text":"Lightning keynote by Dr. Dan Melton, CTO, Code for America."},"id":7566,"slides_url":null,"rating":2.92,"when":"2011/05/19 09:50:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/19651","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom I - II"},{"cached_content_rating":4.5,"location":null,"created_at":"2011/05/16 15:20:22 +0000","title":"Building Rails Apps for the Rich Client","event_id":846,"cached_delivery_rating":4.45,"updated_at":"2011/10/02 20:59:24 +0000","featured":false,"cached_rating":4.48,"timezone":null,"info":{"text":"We all know that Rails is great for building traditional web applications that serve dynamic HTML pages. But more and more, people are reaching to other tools, like Node.js, when they build web applications with a lot of logic in the client. People often use the argument that when you remove the view helpers, there isn't much of value left in Rails."},"id":7500,"slides_url":null,"rating":4.48,"when":"2011/05/19 10:45:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/18047","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom I"},{"cached_content_rating":3.42,"location":null,"created_at":"2011/05/16 15:20:31 +0000","title":"Securing Your Rails App","event_id":846,"cached_delivery_rating":3.56,"updated_at":"2011/06/11 22:21:00 +0000","featured":false,"cached_rating":3.49,"timezone":null,"info":{"text":"Given the many features of Rails that promote good security, one gets the impression that your typical Rails web site is relatively secure. That impression is completely misleading.  Without paying deliberate attention to security details, it is almost certain that your application has security flaws.  This talk will cover the ins and outs of web security and help you build a secure site."},"id":7515,"slides_url":null,"rating":3.49,"when":"2011/05/19 10:45:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/17762","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom II"},{"cached_content_rating":4.5,"location":null,"created_at":"2011/05/16 15:20:52 +0000","title":"# Why RailsInstaller? Didn't Rails Win Already?","event_id":846,"cached_delivery_rating":4.0,"updated_at":"2011/05/19 18:01:03 +0000","featured":false,"cached_rating":4.25,"timezone":null,"info":{"text":"The path to becoming a \"Top Gun\" of Ruby on Rails starts with first being interested in airplanes, flying really fast, and making smart-assed jokes like \"There's two Os in 'Goose', boys.\" The achievements and glory seem to only if you come first, \"No points for second place.\" At the end of Top Gun, Maverick gets the girl and becomes a Top Gun instructor. Time to teach. Time to share the wisdom."},"id":7530,"slides_url":null,"rating":4.25,"when":"2011/05/19 10:45:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/19680","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom III"},{"cached_content_rating":null,"location":null,"created_at":"2011/05/16 15:21:02 +0000","title":"Traveling Light: Porting Your Rails App to Run with JRuby","event_id":846,"cached_delivery_rating":null,"updated_at":"2011/05/16 15:21:02 +0000","featured":false,"cached_rating":null,"timezone":null,"info":{"text":"Although JRuby has maintained a high degree of compatibility with C Ruby, there still are a few considerations when making an existing Rails application run with JRuby. We'll introduce a simple step-wise process for ensuring you can trial your application on JRuby."},"id":7544,"slides_url":null,"rating":null,"when":"2011/05/19 10:45:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/18555","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom IV"},{"cached_content_rating":null,"location":null,"created_at":"2011/05/16 15:21:02 +0000","title":"Indexing Thousands of Writes per Second with Redis","event_id":846,"cached_delivery_rating":null,"updated_at":"2011/05/16 15:21:02 +0000","featured":false,"cached_rating":null,"timezone":null,"info":{"text":"Redis is well known for being a fast key-value store and as the fantastic backend for the work queue library Resque. The functionality and speed of Redis also make it a great tool for keeping indexes when your data-write load is very high. This talk will cover how we used Redis to build a system that can index thousands of writes per second without breaking a sweat."},"id":7547,"slides_url":null,"rating":null,"when":"2011/05/19 10:45:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/19507","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Room 345"},{"cached_content_rating":null,"location":null,"created_at":"2011/05/16 15:20:22 +0000","title":"Bridging The Gap - Using JavaScript In Rails To Write DRY Rich Client Applications","event_id":846,"cached_delivery_rating":null,"updated_at":"2011/05/16 15:20:22 +0000","featured":false,"cached_rating":null,"timezone":null,"info":{"text":"When we build rich client interfaces in JavaScript for our Rails applications today, we have no other choice than duplicating code and logic in both worlds. In this presentation we will show you how to use Google's V8 JavaScript engine in your Rails application to eliminate those duplications, write model code only once and therefore make your code DRY again."},"id":7501,"slides_url":null,"rating":null,"when":"2011/05/19 11:45:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/19412","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom I"},{"cached_content_rating":3.48,"location":null,"created_at":"2011/05/16 15:20:32 +0000","title":"TMTOWTDI: Making Those Tough Toolkit Choices","event_id":846,"cached_delivery_rating":4.1,"updated_at":"2011/06/11 22:21:46 +0000","featured":false,"cached_rating":3.79,"timezone":null,"info":{"text":"This talk is a discussion of those tough decisions that Rails developers (new and old) face each day.  What test framework should I use (and why should I care)?  Does my templating system really make it harder for my designer to work?  Is Bundler really essential?  Two veteran Rails developers will discuss the benefits and tradeoffs (and share their own toolkit choices)."},"id":7516,"slides_url":null,"rating":3.79,"when":"2011/05/19 11:45:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/19440","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom II"},{"cached_content_rating":null,"location":null,"created_at":"2011/05/16 15:20:52 +0000","title":"Infiltrating Ruby onto the Enterprise Death Star using Guerilla tactics","event_id":846,"cached_delivery_rating":null,"updated_at":"2011/05/16 15:20:52 +0000","featured":false,"cached_rating":null,"timezone":null,"info":{"text":"Light-sabers help, but they don't win the war. Bring your computer and Ruby and we can defeat the Emperor. Tactics and tools will be shown so you can be ready for the battle! We need less robots and more thinking allies! Join us now!"},"id":7531,"slides_url":null,"rating":null,"when":"2011/05/19 11:45:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/19499","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom III"},{"cached_content_rating":null,"location":null,"created_at":"2011/05/16 15:21:02 +0000","title":"My Name is Trinidad","event_id":846,"cached_delivery_rating":null,"updated_at":"2011/05/16 15:21:02 +0000","featured":false,"cached_rating":null,"timezone":null,"info":{"text":"I'd like to move my Rails environment to JRuby, do I need to learn about war files and complex Java deployment environments?  Trinidad is a Rails application server on top of Apache Tomcat that solves that question with a simple NO. In this talk we'll explore the main features of Trinidad, how to adapt it to any environment and also how to extend it to take more advantages that Tomcat offers."},"id":7545,"slides_url":null,"rating":null,"when":"2011/05/19 11:45:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/18365","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom IV"},{"cached_content_rating":null,"location":null,"created_at":"2011/05/16 15:21:03 +0000","title":"Rails on HBase","event_id":846,"cached_delivery_rating":null,"updated_at":"2011/05/16 15:21:03 +0000","featured":false,"cached_rating":null,"timezone":null,"info":{"text":"HBase is another \"NoSQL server\" with a different approach that you\u2019ll want to understand"},"id":7548,"slides_url":null,"rating":null,"when":"2011/05/19 11:45:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/17886","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Room 345"},{"cached_content_rating":4.8,"location":null,"created_at":"2011/05/16 15:20:23 +0000","title":"Building Pageless Apps with Rails and Backbone.js","event_id":846,"cached_delivery_rating":4.75,"updated_at":"2011/05/21 20:20:41 +0000","featured":false,"cached_rating":4.78,"timezone":null,"info":{"text":"Make your users happy by building webapps without page loads. People waiting 2,000ms or more for a page on your app to load are losing interest and focus. Learn how easy it is to create an interface that responds in less then 100ms with Backbone.js, a JavaScript library created to seamlessly integrate with Rails and keep your JavaScript organized and readable."},"id":7502,"slides_url":null,"rating":4.78,"when":"2011/05/19 13:50:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/19360","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom I"},{"cached_content_rating":4.5,"location":null,"created_at":"2011/05/16 15:20:32 +0000","title":"Cutting your own RubyGems","event_id":846,"cached_delivery_rating":4.0,"updated_at":"2011/05/20 05:44:41 +0000","featured":false,"cached_rating":4.25,"timezone":null,"info":{"text":"You're using RubyGems on a daily basis, but what's inside of them? How can you make your own? How can you share them with others? In this session you'll learn how to make one from the ground up to help break out your Rails application code to be more modular and maybe even help out the community too."},"id":7517,"slides_url":null,"rating":4.25,"when":"2011/05/19 13:50:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/19572","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom II"},{"cached_content_rating":null,"location":null,"created_at":"2011/05/16 15:20:52 +0000","title":" You got Enterprise In My Rails. You Got Rails In My Enterprise. (And I Like It.)","event_id":846,"cached_delivery_rating":null,"updated_at":"2011/05/16 15:20:52 +0000","featured":false,"cached_rating":null,"timezone":null,"info":{"text":"A funny thing happened at DreamForce this year. The company that made it safe for CIOs to buy cloud services bought a wonderful little company called Heroku. DreamForce is not a show a lot of RailsConf old-timers care much about, but it's a place where CIOs (and the kinds of companies that have such things) go to learn about how to do things better, faster, and cheaper."},"id":7532,"slides_url":null,"rating":null,"when":"2011/05/19 13:50:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/19893","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom III"},{"cached_content_rating":null,"location":null,"created_at":"2011/05/16 15:21:02 +0000","title":"Japan On Rails","event_id":846,"cached_delivery_rating":null,"updated_at":"2011/05/16 15:21:02 +0000","featured":false,"cached_rating":null,"timezone":null,"info":{"text":"In the beginning Matz created the language and the community. Matz called the language Ruby, and saw that it was good. And Ruby was the first day. DHH said, \"Let there be the framework\". DHH called the framework Rails, and saw that it was good. And Rails was the second day."},"id":7546,"slides_url":null,"rating":null,"when":"2011/05/19 13:50:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/20218","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom IV"},{"cached_content_rating":4.8,"location":null,"created_at":"2011/05/16 15:21:08 +0000","title":"Enough Design to be Dangerous","event_id":846,"cached_delivery_rating":4.8,"updated_at":"2011/05/19 19:13:29 +0000","featured":false,"cached_rating":4.8,"timezone":null,"info":{"text":"Developers are stereotypically bad at web page design. But armed with a fresh eye for design, and a little knowledge about css, we can shatter that image. Attendees will learn a few recipes to create pleasing page design - including making sexy submit buttons, styling form elements, choosing and modifying typefaces, and styling Rails form errors."},"id":7549,"slides_url":null,"rating":4.8,"when":"2011/05/19 13:50:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/19522","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Room 345"},{"cached_content_rating":5.0,"location":null,"created_at":"2011/05/16 15:21:19 +0000","title":"Craft, Engineering, and the Essence of Programming","event_id":846,"cached_delivery_rating":5.0,"updated_at":"2011/05/21 20:22:42 +0000","featured":false,"cached_rating":5.0,"timezone":null,"info":{"text":"People really get bent out of shape about what programming really is. Is is engineering, craft, art, or science?  Or something different entirely? But the real question is: does knowing what programming really is help us to be better at it?"},"id":7568,"slides_url":null,"rating":5.0,"when":"2011/05/19 15:10:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/19063","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom I - II"},{"cached_content_rating":null,"location":null,"created_at":"2011/05/16 15:21:19 +0000","title":"Chad Dickerson","event_id":846,"cached_delivery_rating":null,"updated_at":"2011/05/16 15:21:19 +0000","featured":false,"cached_rating":null,"timezone":null,"info":{"text":"Keynote by Chad Dickerson, CTO, Etsy."},"id":7569,"slides_url":null,"rating":null,"when":"2011/05/19 15:35:00 +0000","talk_url":"http://en.oreilly.com/rails2011/public/schedule/detail/18558","is_spam":false,"slideshare_key":null,"series_id":null,"room":"Ballroom I - II"}],"large_logo_processing":false,"large_logo_content_type":"image/png","date_range":"May 16-19, 2011","rating":4.13,"series_id":null,"end_date":"2011/05/19 00:00:00 +0000","large_logo_file_name":"rails-conf.png"}
