Charity Workshop
Join us for a chance to learn more about Ruby and raise money for local charities. We're bringing back our pre-conference training day on Wednesday August 31st. Just donate to one of our selected local charities and you're in -- no conference pass required. Help us top last year's total of $1,700.
We will be offering three separate tracks of workshops, each with a morning and afternoon session. These workshops span from beginner courses in Ruby to advanced topics in the testing and Ruby realm. Through the generous support of Edge Case, Obtiva, Intridea and Quick Left we're able to offer these sessions all to support local charity. Please look over the sessions below to learn more about the content and any prerequisites there might be.
Each session will have its own registration form. We do this as each room has a limited number of seats. Though the registration does not cost anything, we will require you make a donation to one of the local charities listed. We encourage a registration of $25 or more for a 3 hour session or $50 or more for both AM and PM sessions. As the goal is to raise money for charity we are happy for you to give more. You can either donate on the spot or bring in a receipt of your donation.
AM sessions start at 9am and run until noon. PM sessions start at 1:30pm and end at 4:30pm. We recommend you show up 15-20 minutes early to get your seat, settle in and make sure you're ready to start.
Track 1
Boulderado
AM: Vital TestingPM: Vital Testing
Track 2
Trada
AM: The Language is the Foundation -- Learning Ruby to Get Better At RailsPM: Ruby With The Lights On: Improve Your Ruby Skills
Track 3
Trada
AM: Delicious Rails: BDD/TDD PrimerPM: TDD Javascript and Rails 3.1
Session Details
Vital Testing
Testing is a fundamental part of the Agile process. We live and breath TDD/BDD. Red/Green/Refactor is our daily mantra. We love cucumber and writing executable customer readable specifications. We even write tests for our javascripts.
And yet, testing remains hard. The tests we love to write are brittle and tend to break when we refactor. Although we talk about the tests being the specification of our code, too often the specify "how it's implemented" rather than "the expected behaviour".
This workshop is about how to improve the way we do testing, how to move away from merely specifying how our software is implemented to capturing the true essence of how it should function.
Topics include:
- Slow Tests
- Over Mocking
- Complex Object Builds
- Gratuitous Use of the Database
- Custom Assertions / Matchers
- Over Meta in Tests
- Testing Private Methods
- Correct use of Describe & Context
- Refactoring Tests
- Tests as Specifications
This workshop will have two separate sessions. You may choose either morning or afternoon. Though you can also choose both sessions, there will be some overlap.
Jim Weirich, EdgeCase
Jim Weirich is the Chief Scientist for EdgeCase LLC, a Rails development firm located in Columbus Ohio. Jim has over thirty years of experience in software development. He has worked with real-time data systems for testing jet engines, networking software for information systems, and image processing software for the financial industry. Jim is active in the Ruby community and has contributed to several Ruby projects, including the Rake build system and the RubyGems package software.
The Language is the Foundation -- Learning Ruby to Get Better At Rails
Too often, new web developers think that Ruby is just the easily-left-out part of the name "Ruby on Rails". A strong understanding of Ruby basics, structure, and conventions will help you better understand and use Rails. This workshop will cover the structure of Ruby, Ruby's object model, what makes Ruby unique, the basics of Ruby style, all with hands-on examples that will let you explore Ruby's depths.
Matt Polito, Groupon
I am a father, husband, son, friend, software developer and an unemotional robot ( or at least that's what I've heard ).
Ruby With The Lights On: Improve Your Ruby Skills
The best way to make yourself a better Rails programmer is to become a better Ruby programmer. In this session, we will go behind the scenes to show how Ruby features like blocks, modules, and metaprogramming can be used to improve your code flexibility and robustness. We will cover both the internals of the Ruby object model, and practical examples of how these features can be used.
Noel Rappin, Groupon
Noel Rappin works in Technical Development at Groupon. He is the author of “Rails Test Prescriptions: from the Pragmatic Bookshelf and “Professional Ruby on Rails” from Wrox. He has over a decade of experience in web application development. Noel is the co-author of “wxPython in Action” and O’Reilly’s “Jython Essentials”, and and has presented at RailsConf and WindyCity Rails.
Track 3
Trada
Delicious Rails: BDD/TDD Primer
In this 3-hour workshop we’ll help you setup an automated test harness and introduce you to test-first methodologies as we attempt to build a simple Delicious.com clone together using Rails 3.1. Topics covered may include RVM, Ruby 1.9.2, Rails 3.1, Rspec, Capybara, Guard, and Spork as time allows. This will be a fun, hands-on/slides-free workshop in a relaxed atmosphere so please come prepared to hack, ask questions, and participate in discussions. Though we may not finish the application, you'll walk away with the knowledge of how to setup and get started testing Rails 3.1 along with running examples built in class.
Prerequisites
A computer with RVM, Ruby 1.9.2, Rails 3.1, and your favorite text editor (*cough*vim*cough*). We expect that most attendees will have working knowledge or familiarity with Rails (any version) and feel comfortable installing gems and using the command line. While your machine's operating system isn't as important, we're familiar with Linux and OSX and as such will be of limited help troubleshooting Windows.
Adam Bair, Intridea
Adam has a passion for elegant solutions and beautiful code. He is a Ruby and Rails evangelist who advocates test driven development and web standards. Before joining Intridea, Adam worked at Revolution Health building large-scale applications used by millions of people each month.
Paul Ostazeski, Intridea
Paul has been a Ruby user for many years, and has been developing with Rails for six years. In addition to Ruby, Paul enjoys using the zsh shell and the vim text editor, and has been a full time Linux user for over ten years. Prior to joining Intridea, Paul was a mathematician for the federal government.
TDD Javascript and Rails 3.1
There's a new kid on the block in the Rails Community, and it's name is Javascript. No longer relegated to the obscurity of the /public folder or held hostage by blunt package managers, Javascript is free to frolick as a legitimate component of your application.
Now that Javascript is a first class citizen it's your responisibility to write maintainable, modular, and most importantly, well tested code in all areas of the stack.
We'll cover getting setup for test driven development with CoffeeScript with Jasmine, Qunit and developing front end heavy applications using Backbone.js.
Pre-Reqs:
A working knowledge of Rails and different testing methodologies and a decent handle on basic Javascript and the DOM. The session will follow a workshop format, so participants should be prepared to write some code.
Audience:
Any Rails devs who are familiar with Testing and want to do more of it in more places in their applications
Ryan Cook, Quick Left
Ryan enjoys conceptualizing ideal implementations of products and then helping to make them happen. A backend dev, Ryan loves developing custom APIs almost as much as he loves writing tests.
Gerred Dillon, Quick Left
Gerred brings a strong background in mathematics and computer science to the team. An experienced engineer from the legal and medical industries, Gerred believes in building robust, secure, and scalable solutions employing intelligent algorithms and data mining.
Sam Breed, Quick Left
Sam Breed is the lead front end engineer at Quick Left, he loves writing sophisticated clients that work against APIs and uses all of the latest front end techniques to get things done. He is passionate about the emergence of Javascript as a highly approachable and extremely powerful scripting language and is active in the Javascript/jQuery community.




