I'm pretty pumped with all the stuff I've learned! After completing this and the previous Rails course, I'm pretty sure I now have everything I need to develop almost anything thrown my way.” — Matthew Edwards

Advance To The Next Level with Rails...

Learn how to design some of the more advanced Rails features you've seen in various apps including user accounts, authentication and authorization, many-to-many associations, custom routes, and other pro-level design facets in Rails 4. If you took our popular first Rails course, or you're already comfortable with the topics taught in that course, then you're ready to advance to the next level and take your skills up a notch in this follow-on course.

To find out more, watch the introduction video below or start our online Rails Level II course today for free!

Level up in this online, self-paced course!

20 Videos Unlimited Access
19 Hands-On Exercises Support Mailing List
2 Example Apps Proof of Completion
Cheat Sheets Alumni Status

$179 per student, $135 for alumni (25% off)

Not sure yet? Try It Out!

What's Included?

Watch, Read, Practice… and Learn! This online multi-media course includes instant and unlimited access to the following:

  • Rails II Video

    20 Videos: HD-Quality and DRM-free
    Your time is valuable, so in each video we get right to the point and focus on a particular aspect of Rails. The videos are a combination of personal instruction, live-coding, and animated visuals to deepen your understanding of Rails. You'll see exactly how we build a Rails app incrementally. You can stop, rewind, and rewatch each video as often as you like and at your own pace.

    The total video duration is 4 hours, but each video is only 10-20 minutes so you can work through the course in small increments. Watch the videos in the browser for an integrated learning experience, or download them for offline viewing. (The videos also look great on an iPad or iPhone!) All the videos are licensed for individual use, DRM-free, and available in full 1280x720 HD resolution. Watch them when and where it's convenient for you!

    To get a feel for the video format, start learning Rails techniques today.

  • Rails II Workbook

    Comprehensive Online Workbook
    In addition to the videos, you get access to an online companion workbook. The workbook isn't an afterthought—it's a core part of the course. To really learn Rails, you need to practice writing Rails code. So, we designed the workbook to go hand-in-hand with the videos.

    Each video has a corresponding chapter in the workbook. This is your opportunity to practice what you learned in the video by writing, reading, and refactoring Rails code. Each chapter builds on the previous, with a high-level objective you can work through on your own, and step-by-step instructions to guide you through to a solution. You'll complete the exercises directly on your own computer—the same familiar environment where you'll actually write your own Rails app.

    In the end you'll have created a full-featured Rails app similar to the app we create in the videos. Along the way there are explanations, hints, discussions on design principles, tips and tricks, recommended resources, and of course all the solutions (with tests). And all the workbook content is easily searchable, so you always have a reference library at your fingertips!

    To get a feel for the workbook format, start learning Rails techniques today.

  • Rails II Apps

    All the Source Code For Two Rails Apps
    It's been our experience that developers don't want the practice code in the workbook to be exactly like the example code we write in the videos. So instead, in the workbook exercises you'll build a different, yet similar, app to the one we build in the videos. That not only makes it more fun for you, but also engages your brain more as you think through how to apply what you learned in a slightly different context. As an added bonus, at the end of the course you can draw from the code of two full-featured Rails apps!

  • Support Mailing List
    Have questions during the course? No problem. You'll get access to a mailing list exclusively for participants of this course. It's here you can get answers, share insights, discuss Rails topics, and connect with other people who are pursing similar goals. Students of our courses have said our alumni mailing lists are some of the best resources on the web.

  • Instant and Unlimited Access
    You get immediate access to all the course material, and your access never expires. You can revisit the course whenever you want! It's the perfect environment for learning at your own pace, and on your own time.

  • Proof of Completion
    Showcase your accomplishment in learning Rails! When you're done, you can prove that you've completed the course by sharing the link to your personal alumni page.

  • Alumni Status (Discounts!)
    By purchasing this course you become a Pragmatic Studio Alumni which entitles you to the discounted alumni price on all future courses.

“The fantastic diagrams, the outstanding explanations, and the exercises helped me fully understand the subject.” — Adi Davidovich

What Will I Learn?

How to advance your app and broaden your skills. This course takes a very pragmatic, project-based approach focusing on features common across most Rails apps. We'll take deep dives into the following areas:

Rails Outline

User Account Management
You sign up, sign in, and sign out of web apps every day. It's so routine that it's easy to take account management features for granted. But the reality is there's a lot going on behind the scenes. And managing your users' accounts isn't an area of your app that should be a black box. Authentication is important enough that you should understand it fully.

Implementing account management properly in your app requires a solid understanding of sessions, cookies, filters, security concerns, and Rails conventions for authentication and authorization. We'll break it all down, and build a solution from scratch, so you learn how to:

  • Design a solid user model and securely store passwords
  • Sign up new users
  • Display user profile pages
  • Edit account information
  • Sign in users and remember them with sessions
  • Restrict access to specific actions based on signed-in status
  • Allow special "admin" users to perform admin-only tasks
  • Sign out users

Whether you choose to build your own system from scratch or use a gem, it's critical to know how everything fits together. That way you'll be in a better position to adapt, customize, and troubleshoot the code.

Many-to-Many Associations
In the Rails I course, you learned how to connect models using one-to-many associations. More sophisticated apps also have many-to-many associations between models. For example, if you're building a movie review app, a user could have many favorite movies. And conversely, a movie will have many fans. Because these sorts of associations are so common, Rails has powerful conventions to help you manage them.

But the conventions alone only take you so far. It's up to you to model the associations with the full stack in mind: from the database tables all the way through to the user interface. And the best way to learn how to do that is seeing lots of good examples. So by way of six distinct examples (three in the videos and three in the exercises), you'll learn how to:

  • Design a rich many-to-many association that connects a user to their movie reviews using a join model and a form
  • Model a many-to-many association that lets a user "fave" multiple movies with a button
  • Create a through association for assigning multiple genres to a movie using checkboxes
  • Traverse the associations to list the movies a user has reviewed and faved, for example
  • Improve the performance of database queries
  • Name associations to better express your domain

Custom Routes
URLs are the user interface of the web. We tweet and email them. We bookmark pages we want to return to later. We use embedded links to connect across web apps. As part of your app's user interface, it's critical that your URLs are both expressive and friendly. The default resource URLs are a good start, but the Rails router gives us a lot of flexibility when it comes to customizing URLs. And well-designed URLs might also end up driving more search traffic to your site! You'll learn how to:

  • Generate friendly URLs for better SEO, bookmarking, and curb appeal
  • Customize routes to handle scenarios beyond the basic resource routes
  • Use route parameters and constraints

Best Practices and Techniques
As always, throughout the course you'll learn how to write good, clean code that follows tried-and-true practices used by veteran Rails developers, including how to:

  • Write composable queries in a declarative style using scopes and Ruby lambdas
  • Use Active Record callbacks properly to run code at specific points in a model's lifecycle
  • Display action-specific, dynamic content in a layout
  • Remove code duplication and improve code clarity

You'll also pick up tips, tricks, and other pro-level techniques to cut down development time and get the most out of Rails!

This is the best Rails training hands-down! I've worked through several Rails courses and they don't even come close to explaining things as well as you do.” — Thomas Neal

Who's It For?

Rails Programmers who want to move beyond the skills of the average Rails developer. This online training course picks where our online Rails I course left off. This course will be a good fit for you if:

  • You've taken our introductory online Rails I course or you're familiar with the topics taught in that course.
  • You're comfortable writing Ruby code. If you're feeling a bit rusty, we strongly recommend taking our online Ruby Programming course prior to this course.

What Do I Need?

A Computer and a 'Net Connection. Yes, it really is that easy to take this course. No airline tickets, hotel reservations, or scheduling conflicts. Instead, you'll simply need your favorite coffee mug, comfy slippers, and the following additional necessities of any good programmer:

  • Mac, Windows, or Linux Computer
    Rails runs great in all these environments, so any computer you're comfortable using will do. We'll help you get everything installed on your system so you'll learn in the same environment where you'll actually write your own Rails apps.

  • Up-to-date Web Browser
    We designed the online experience to take advantage of some of the latest web standards, so you'll need the latest version of Safari, Chrome, Firefox, or IE 8 (or higher).

  • Internet Connection
    The videos in this course can be watched either in your browser (in which case you'll need a reasonably fast 'net connection) or you can download them to your computer and watch them offline. The workbook and exercises are only available online.

Who Teaches This Course?

Mike and Nicole Clark run The Pragmatic Studio, an acclaimed source of software developer training. Over the last nine years, we've helped over 2,500 developers improve their craft through public, private, and online courses. In this course, we hope to help more folks in their pursuit to build web apps for their company, club or organization, or hobby turned exciting new venture.

Mike has over 20 years of software development experience. He helped build one of the first production Rails apps way back in 2005, lead the initial development of the Pragmatic Bookshelf site, and continues to develop the Rails apps that power our online training business. He's also the author of Advanced Rails Recipes, co-author of Agile Web Development with Rails, and author of Pragmatic Project Automation.

Start today and take your Rails skills up a notch!

20 Videos Unlimited Access
19 Hands-On Exercises Support Mailing List
2 Example Apps Proof of Completion
Cheat Sheets Alumni Status

$179 per student, $135 for alumni (25% off)

Not sure yet? Try It Out!