BEGIN:VCALENDAR
X-WR-CALNAME:RailsConf 2011
VERSION:2.0
PRODID:Expectnation
CALSCALE:GREGORIAN
BEGIN:VEVENT
DTEND;TZID=US/Eastern:20110517T113500
DTSTART;TZID=US/Eastern:20110517T104500
DTSTAMP:20110524T181543
LOCATION:Ballroom II
URL:http://en.oreilly.com/rails2011/public/schedule/detail/18514
UID:http://railsconf.com/--s2011-05-17-10:45--18514
SUMMARY:Fat Models Aren't Enough
DESCRIPTION:Presented by Jeff Casimir (Jumpstart Lab). "Fat Models, Skin
 ny 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 th
 ese goals.  Having a fat model isn't enough!  Come learn techniques to r
 efactor your models and make them beautiful.
END:VEVENT
BEGIN:VEVENT
DTEND;TZID=US/Eastern:20110517T123500
DTSTART;TZID=US/Eastern:20110517T114500
DTSTAMP:20110522T210501
LOCATION:Ballroom II
URL:http://en.oreilly.com/rails2011/public/schedule/detail/19521
UID:http://railsconf.com/--s2011-05-17-11:45--19521
SUMMARY:Mining Rails: Learning from your App's Lifeline
DESCRIPTION:Presented by Michael Feathers (Obtiva, Working Effectively w
 ith Legacy Code), Corey Haines (Corey Haines). Learn more about how you 
 can spot development trends in your version control history and use that
  information to guide your choices going forward.
END:VEVENT
BEGIN:VEVENT
DTEND;TZID=US/Eastern:20110517T144000
DTSTART;TZID=US/Eastern:20110517T135000
DTSTAMP:20110527T040428
LOCATION:Ballroom II
URL:http://en.oreilly.com/rails2011/public/schedule/detail/17703
UID:http://railsconf.com/--s2011-05-17-13:50--17703
SUMMARY:Keeping Rails on the Tracks
DESCRIPTION:Presented by Mikel Lindsaar (RubyX). It's not what you code,
  it's how you code it. In this talk, I'll take you through real world ex
 amples of code drawn from the 40+ production Rails applications we have 
 developed and maintained during the last 12 months and highlight anti pa
 tterns 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 wil
 l thank you...
END:VEVENT
BEGIN:VEVENT
DTEND;TZID=US/Eastern:20110517T154000
DTSTART;TZID=US/Eastern:20110517T145000
DTSTAMP:20110525T123234
LOCATION:Ballroom II
URL:http://en.oreilly.com/rails2011/public/schedule/detail/18418
UID:http://railsconf.com/--s2011-05-17-14:50--18418
SUMMARY:Confident Code
DESCRIPTION:Presented by Avdi Grimm (ShipRise LLC). Are your methods tim
 id? Do they constantly second-guess themselves, checking for nil values,
  errors, and unexpected input? Learn how to write code in a straightforw
 ard, confident style that is more testable, easier to read, and easier t
 o debug.
END:VEVENT
BEGIN:VEVENT
DTEND;TZID=US/Eastern:20110517T171500
DTSTART;TZID=US/Eastern:20110517T162500
DTSTAMP:20110525T123255
LOCATION:Ballroom IV
URL:http://en.oreilly.com/rails2011/public/schedule/detail/18603
UID:http://railsconf.com/--s2011-05-17-16:25--18603
SUMMARY:25 Deployment Tips in 50 Minutes
DESCRIPTION:Presented by Anthony Burns (LivingSocial), Tom Copeland (Liv
 ingSocial). After spending the last few years developing and deploying R
 ails applications we're ready to unload all the tips and tricks we've le
 arned.  But each nugget of experience will be ruthlessly culled to fit i
 n two minutes.  You'll get the whole seat but you'll only need the edge!
END:VEVENT
BEGIN:VEVENT
DTEND;TZID=US/Eastern:20110518T113500
DTSTART;TZID=US/Eastern:20110518T104500
DTSTAMP:20110522T210715
LOCATION:Ballroom IV
URL:http://en.oreilly.com/rails2011/public/schedule/detail/19478
UID:http://railsconf.com/--s2011-05-18-10:45--19478
SUMMARY:Getting Started With JavaScript Testing
DESCRIPTION:Presented by CJ Kihlbom (Elabs), Jonas Nicklas (Elabs). Whil
 e most Ruby developers are very familiar with testing their code, JavaSc
 ript testing is still a new frontier for many. This talk will show you h
 ow to easily write and run JavaScript integration tests with Capybara an
 d Cucumber, and unit tests with Evergreen and Jasmine. The goal is to in
 spire you to get started with JavaScript testing, and point you in the r
 ight direction to go do it!
END:VEVENT
BEGIN:VEVENT
DTEND;TZID=US/Eastern:20110518T123500
DTSTART;TZID=US/Eastern:20110518T114500
DTSTAMP:20110526T200318
LOCATION:Ballroom II
URL:http://en.oreilly.com/rails2011/public/schedule/detail/18051
UID:http://railsconf.com/--s2011-05-18-11:45--18051
SUMMARY:Rails Performance Tools
DESCRIPTION:Presented by Aman Gupta (GitHub). Ruby might be slow, but ba
 d 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 an
 d optimize it.
END:VEVENT
BEGIN:VEVENT
DTEND;TZID=US/Eastern:20110518T144000
DTSTART;TZID=US/Eastern:20110518T135000
DTSTAMP:20120503T193312
LOCATION:Ballroom I
URL:http://en.oreilly.com/rails2011/public/schedule/detail/19501
UID:http://railsconf.com/--s2011-05-18-13:50--19501
SUMMARY:How To Handle 1,000,000 Daily Users Without Using A Cache
DESCRIPTION:Presented by Jesper Richter-Reichhelm (wooga GmbH). Social g
 ames backends share many aspects of normal web applications, but exasper
 ate 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.
END:VEVENT
BEGIN:VEVENT
DTEND;TZID=US/Eastern:20110518T154000
DTSTART;TZID=US/Eastern:20110518T145000
DTSTAMP:20110525T105226
LOCATION:Ballroom II
URL:http://en.oreilly.com/rails2011/public/schedule/detail/17700
UID:http://railsconf.com/--s2011-05-18-14:50--17700
SUMMARY:When and How to Expose Services
DESCRIPTION:Presented by Jamis Buck (37signals), Jeffrey Hardy (37signal
 s). Drawing from the authors' own experiences, methods and guidelines wi
 ll be presented for exposing and sharing services within and between lar
 ge Rails-based systems.
END:VEVENT
BEGIN:VEVENT
DTEND;TZID=US/Eastern:20110518T171500
DTSTART;TZID=US/Eastern:20110518T162500
DTSTAMP:20110524T012541
LOCATION:Ballroom III
URL:http://en.oreilly.com/rails2011/public/schedule/detail/18378
UID:http://railsconf.com/--s2011-05-18-16:25--18378
SUMMARY:Solving Performance Problems with Horizontal Scale. (The Worker 
 Pattern)
DESCRIPTION:Presented by Ryan Smith (Heroku). A deep look into 2 common 
 performance problems web developers face. We will consider these problem
 s and then I will show solutions to these problems. From here we can gen
 eralize the solution into a pattern I call: The Worker Pattern.
END:VEVENT
BEGIN:VEVENT
DTEND;TZID=US/Eastern:20110519T114000
DTSTART;TZID=US/Eastern:20110519T104500
DTSTAMP:20110524T012549
LOCATION:Ballroom II
URL:http://en.oreilly.com/rails2011/public/schedule/detail/17762
UID:http://railsconf.com/--s2011-05-19-10:45--17762
SUMMARY:Securing Your Rails App
DESCRIPTION:Presented by Jim Weirich (EdgeCase LLC), Matt Yoho (EdgeCase
 ). Given the many features of Rails that promote good security, one gets
  the impression that your typical Rails web site is relatively secure. T
 hat impression is completely misleading.  Without paying deliberate atte
 ntion to security details, it is almost certain that your application ha
 s security flaws.  This talk will cover the ins and outs of web security
  and help you build a secure site.
END:VEVENT
BEGIN:VEVENT
DTEND;TZID=US/Eastern:20110519T124000
DTSTART;TZID=US/Eastern:20110519T114500
DTSTAMP:20110522T004252
LOCATION:Ballroom I
URL:http://en.oreilly.com/rails2011/public/schedule/detail/19412
UID:http://railsconf.com/--s2011-05-19-11:45--19412
SUMMARY:Bridging The Gap - Using JavaScript In Rails To Write DRY Rich C
 lient Applications
DESCRIPTION:Presented by Thorben Schröder (kopfmaschine), Andreas Haller
  (kopfmaschine). When we build rich client interfaces in JavaScript for 
 our Rails applications today, we have no other choice than duplicating c
 ode 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 elimin
 ate those duplications, write model code only once and therefore make yo
 ur code DRY again.
END:VEVENT
BEGIN:VEVENT
DTEND;TZID=US/Eastern:20110519T144500
DTSTART;TZID=US/Eastern:20110519T135000
DTSTAMP:20110521T131603
LOCATION:Ballroom II
URL:http://en.oreilly.com/rails2011/public/schedule/detail/19572
UID:http://railsconf.com/--s2011-05-19-13:50--19572
SUMMARY:Cutting your own RubyGems
DESCRIPTION:Presented by Nick Quaranto (thoughtbot, inc.). You're using 
 RubyGems on a daily basis, but what's inside of them? How can you make y
 our own? How can you share them with others? In this session you'll lear
 n how to make one from the ground up to help break out your Rails applic
 ation code to be more modular and maybe even help out the community too.
END:VEVENT
END:VCALENDAR
