Ruby on Rails
with Dave Thomas and Chad Fowler
Dates & Pricing
- Sept 22-24 in Reston, VA
- (Sold Out)
-
- October 25-27 in Chicago, IL
-
| $1295 | Alumni and Groups of 3+ |
| $1595 |
Early Bird (thru Sept 25 for Chicago) |
| $1895 | Regular |
Learn how to build high-quality web apps—fast!—from two renowned Rails experts in this 3-day, hands-on training course. This course has been redesigned to take advantage of the latest features of Rails 3!
- Learn how to use the core features of Rails 3, and put them all together to build dynamic web applications like the pros.
- Get a jump start and get your questions answered so you can start building your own Rails applications with confidence.
- Save time and frustration by focusing exclusively on Ruby and Rails development for three days with expert guidance.
You'll come away from this course with the fundamental skills and hands-on experience necessary to build your own Rails applications: from idea to deployment. Check out some of the apps attendees have created!
“I was extremely impressed with the training from beginning to end. The registration and setup process was super easy, the facility was first rate (food was awesome), they are outstanding teachers, and the subject material was very interesting.”
Who Teaches the Course?
Dave Thomas and Chad Fowler. This Studio is taught by programmers for programmers. Learn directly from two authors of the premier references for Rails who have also built and deployed numerous real-world Rails applications:
Dave Thomas is the co-author of The Pragmatic Programmer, Programming Ruby, and Agile Web Development with Rails. Along with Andy Hunt, they run The Pragmatic Programmers.
Chad Fowler is a well-known author and Ruby and Rails trainer and consultant. He is cofounder of Ruby Central, a non-profit corporation responsible for the annual International Ruby and Rails Conferences, and is a leading contributor and frequent speaker in the communities. Chad is the author of Rails Recipes and The Passionate Programmer, a contributor to Programming Ruby, and CTO of InfoEther.
What Will I Learn?
Fundamentals of building and deploying high-quality Rails apps. Through a series of guided instruction, hands-on exercises, and discussion, you'll learn the how to build Rails applications. This isn't a reference course. You'll learn the important features of Rails by building a full-featured application from start to finish. Topics include:
Agile Rails Development: Rails has some fairly strong opinions about how web apps should be developed. These opinions are codified in what Rails calls conventions. The conventions get you started on the right foot. Having built a number of large and small Rails apps, we have fairly strong opinions, too. We call this practical experience. Experience takes you the rest of the way. In addition to learning how to use Rails in this course, you'll learn how to rapidly create web apps using the incremental and iterative (agile) development style that has helped our projects be successful.
Active Record: Active Record connects your business objects (models) to your database tables (records). Models are the foundation of any good Rails application.
- On one level, models abstract access to your relational database. You'll learn how to manage your database schema with migrations and query your data using the new chainable query language in Active Relation.
- Models also encapsulate all your business logic. You'll learn how to design rich models using custom methods, validations, callbacks, scoping, and one-to-many and many-to-many associations.
Action Pack: Action Pack splits the handling of a web request into two parts: a controller than performs the application logic and a view that renders a template. This two-step approach is known as an action.
- You'll learn how to write actions that create (using a form view), read, update, and delete your models and render HTML pages using view templates.
- Design is critical at this level. We'll teach you best practices for designing maintainable web apps that have decoupled models, views, and controllers. You'll also learn how to design clean and flexible views using layouts, partials, and helpers.
- Finally, you'll get experience using sessions and filters in your controllers to conveniently implement authentication.
Action Dispatch: Action Dispatch is new in Rails 3.0 and provides a powerful mechanism for routing incoming HTTP requests to the appropriate application logic living in controller actions.
- You'll learn how to write custom routes to make your URLs more descriptive.
- You'll also define RESTful routes, and understand the conventions Rails uses to route around REST resources.
REST: Everyone talks about RESTful web services— you'll learn how it works in practice.
- You'll come away with a better understanding of the benefits of REST and how to design applications within those constraints.
- You'll learn how to use the RESTful conventions inherent in Rails to quickly create a remote API for your application.
Testing: Testing is a cornerstone of building high-quality web apps, but it doesn't have to slow you down. Rails has built-in support for automated unit, functional, and integration tests. Beyond that, you'll find no shortage of good testing tools for Rails apps. But a common mistake is to focus on the tools. Instead, you'll learn the practices and techniques of writing good tests (we'll use the built-in testing framework). Then you can pick whichever tool suits you.
Deployment: The Rails deployment story has changed dramatically over the years, for the better.
- You'll learn the latest and greatest deployment strategies.
- You'll be able to automate your deployment process using Capistrano.
Practical tips, tricks, and techniques: Along the way you'll learn practical tips, tricks, and techniques used by the pros to work more efficiently and build full-featured Rails applications.
In addition to the prepared topics, you'll have time to ask questions and spark discussions with other Rails developers.
Who’s It For?
Web Application Programmers. This course is a good fit for you if...
- You're new to Rails, or you've started building a Rails app but need help putting all the pieces together.
- You're currently programming in an object-oriented language such as Java, C#, Python, Objective-C, or Ruby.
- You have a working knowledge of relational databases.
To get the most out of this course, we strongly recommend reading through the Programming Ruby book. You don't necessarily need to understand everything in the book, but it will be a good overview of Ruby and also raise some questions that you can ask during class.
If you have at least one Rails application under your belt and at least 6 months experience with Ruby and Rails, then consider attending the Mastering Ruby and Rails Studio.
What's a Studio?
Comprehensive, Hands-On Learning. The Studio experience doesn't begin and end in the classroom. The moment you register, we'll help you start preparing for the course. In the Studio you'll enjoy a distraction-free, interactive learning environment. When you return to your project, you'll have access to supporting resources to help you succeed. (Why we call them Studios.)
1. Help You Prepare: Before you arrive, you'll:
- Receive prep material to help you get the most out of our time together
- Get detailed laptop set-up instructions
2. In the Studio: In our collaborative learning environment you'll:
- Learn through guided instruction and hands-on programming exercises
- Discover new techniques in live coding sessions
- Get your questions answered by experts and your peers
- Reinforce the concepts you've learned in books, and dig deeper
- Discuss timely topics, tips, and tricks
3. On-Going Support: After you return to your project, you can:
- Get your questions answered on our alumni-only mailing list
- Find full-time, part-time, or contract developers for your project, or search for your dream job on our job board
- Get discounts on books, screencasts, and future training to continue learning
4. Success: Deliver your app with more confidence!
- Show off your app in our alumni gallery.
- Connect with fellow alumni in our Yearbook.
We think a Pragmatic Studio offers the best developer training around. But don't take our word for it—just ask our alumni! Check out their reviews and the apps they've created.
“Certainly one of the best training experiences I've ever had...The materials are good, the guys are experts and the entire thing was fun—which is hard to say about any training program.”
—Hunter Hillegas
What Should I Bring?
Your Laptop. It wouldn't be a hands-on course if you didn't walk away having written some code. You'll be most productive on the laptop you use regularly. (On average, 60% of attendees bring Mac OS X, 30% bring Windows, and 10% bring Linux.)
A few weeks before the course, we'll send out detailed instructions for installing everything you'll need. During the course, you'll get hands-on experience working through prepared exercises, and experimenting on your own, too.
Your Registration Includes
- A continental breakfast, beverages and snacks, and a hot lunch each day
- A binder with all the printed material
- All the example source code to refer back to later
- Internet connectivity and power during the Studio
- An invitation to our alumni-only mailing list for help after the Studio
- Discounts on books, screencasts, and future training
- A stylish Pragmatic Studio t-shirt and more!
