Services

Course Overview

People Learning RailsOur Advanced Ruby on Rails class is based on the popular book Rails Antipatterns, by Chad Pytel, the CEO of ThoughtBot, and Tammer Saleh our Director of Engineering

The course focuses on many of the common pitfalls, or "antipatterns", that Rails developers fall into, and explores mechanisms through which mistakes can be avoided.

Prerequisites

To take the advanced class, students should know and understand how Rails is used in the context of a real development effort. No less than two months of Rails development experience is required.

Length: 2 days

Syllabus

Day 1 Day 2
Welcome
  1. Introduction
  2. Testing
  3. Ruby Tools for Testing
Views
  1. PHPitis
  2. Know your helpers
  3. Custom Helpers
  4. Duplication
  5. Extracting URL Logic
  6. Consistency with content_tag
  7. Markup Mayhem
  8. Forms
  9. Stop Worrying and Love Standardization
Controllers
  1. Controllers that don't work with users
  2. Clues to common mistakes
  3. Dashboards
Models
  1. Voyeuristic Models
  2. Peeping Views
  3. Peeping Controllers
  4. A place for everything
Services
  1. Mocking and Stubbing
  2. HTTP Layers
  3. Testing services with Webmock, Fakeweb, ShamRack
Scaling and Deploying
  1. Balancing effort to effect
  2. Sharding
  3. Asset Storage
  4. Paperclip
  5. Starting with the Cloud
  6. Maximum Occupancy
  7. Limitations of different storage solutions
Third Party Code
  1. Gems are where it's at
  2. Plugins
  3. Evaluating Gems
  4. Vendored Code
  5. Fork and Monkeypatch

About the Book

Rails AntipatternsEvery student enrolled in the course will receive a copy of the Rails Antipatterns book from Addison Wesley publishing.

A description from Amazon:
As developers worldwide have adopted the powerful Ruby on Rails web framework, many have fallen victim to common mistakes that reduce code quality, performance, reliability, stability, scalability, and maintainability. Rails™ AntiPatterns identifies these widespread Rails code and design problems, explains why they’re bad and why they happen—and shows exactly what to do instead.