Advanced Ruby on Rails Bootcamp
Advanced Ruby on Rails Bootcamp is an intensive 5-day training course that addresses all the Big Boy Rails topics - things we leave out in the basic course - like how Rails itself works, production deployment/scaling-type activities, and advanced tricks and tips with the framework itself.
Future Ruby on Rails Rockstars - this is your class - learn to utilize all features of the framework, and give back through plugins, gems, and contributing to source after the course.
Advanced Ruby on Rails Bootcamp is designed for:
- Ruby on Rails developers who need to go beyond the basics
- Ruby developers who want to learn all about the secrets of Rails development
- Former students of our Ruby on Rails Bootcamp who want to bring their own projects to the next level
Upon completion of Advanced Ruby on Rails Bootcamp, the student will:
- Understand how core components of Ruby on Rails work
- Be able to apply Ruby on Rails best practices
- Understand basic and advanced features of ActiveRecord to model simple and complex relationships between data models
- Understand basic and advanced features of ActionPack's ActionView to create DRY interfaces and reusable, clean views and layouts
- Understand basic and advanced features of ActionPack's ActionController to create skinny controllers with degradable, RESTful interfaces
- Be able to apply RESTful principles to setup Resource-based web applications and Nested Resources with custom actions
- Understand Test-Driven Development (TDD) using Unit Testing and RSpec
- Create rich Ajax interfaces and be able to debug them effectively
- Avoid Security pitfalls and deployment problems
- Debug applications using breakpoints, logging and prototyping in an interactive console
- Be able to create and utilize Ruby on Rails generators, plugins, and Ruby libraries to quickly add extended functionality and features
- Be able to setup several different Production/Deployment scenarios
Upcoming Classes
| Date | Instructor | Price | Status | Venue |
|---|---|---|---|---|
| Mar 9 - 13 | Charles B. Quinn |
$3500 | Register Now | Atlanta, Georgia |
| May 11 - 15 | Charles B. Quinn |
€2800 | Register Now | Frankfurt, Germany |
Prerequisites
Students should have a basic understanding of the Ruby language and Ruby on Rails. They should have completed some Ruby on Rails development, produced a Ruby on Rails application or worked on one in a team.
Syllabus
| Section | Contents |
|---|---|
| Ruby + Advanced Ruby | Arguments, hashes/arrays in depth, metaprogramming, ActiveSupport |
| Using Rails in a Team | Best practices, migration usage, setting up app, using source-control |
| Testing Best Practices | Test driven development, RSpec/behavior driven design |
| Design Decisions, the Rails Way | MVC in depth: fat model, skinny controller design |
| Routing + Advanced Routing | Paths and urls, named-routes, regexs, defaults |
| RESTful Design | Building RESTful interfaces, utilizing ActiveResource |
| Advanced ActiveRecord | Aggregations, polymorphism, STI, observers, acts_as_xxx |
| Advanced ActiveRecord Associations | Associations, proxy methods, association extensions |
| Forms and Handling Data | Building forms using form_for, form_tag, handling multiple models |
| Ajax Advanced Topics | Helpers, debugging w/ firebug, javascript debug consoles |
| Authentication | HTTP authorization, OpenID, acts_as_authenticated |
| Session Management | Switching from pstore to ARstore/SQLStore, memcache store |
| Mail Sending and Receiving | ActionMailer in depth, multi-part messages, attachments |
| Exception handling best practices | Logging, param filtering, exception notifier, bug tracking |
| Deployment | Setting up servers, capistrano, managing, production servers (tuning) |
| Backend Tasks and Considerations | Long-running tasks, periodic tasks, daemons |
| Benchmarking and Performance | HTML page caching, HTML fragment caching, sweepers, object memcaching |
| Security | SQL Injection, HTML Escaping, CSRF, logs, server security |
| Rails Plugins, Ruby Gems | Writing plugins, writing gems (setting up gem server), sharing libraries, writing your own acts_as_xxxx, Contributing to Rails |
| Real-world Databases | When to add indexes, analyzing queries, when to break into raw SQL, eager loading |
| Searching | Using SQL LIKE, field level, full-text search in database, then Ferret, Solr |
| Localization / Internationalization | i8n, L10n, Unicode, globalization |
| File Manipulation | Dealing with attachments / file uploads, image processing |
| Rails in the Real-World | Breaking down several real-world projects |
What's Included
Class price includes all class materials, a luxury room, three delicious meals a day, a stylish Big Nerd Ranch t-shirt, and ground transportation to and from the airport. Plan to arrive the afternoon or evening before your class begins and depart on the last day of your class after 4 PM.