“This course helped cement Ruby concepts in my mind a lot more effectively than other tutorials I've tried. Well worth the money!” — Clinton De Young

If you learn Ruby, you can master Rails.

Start learning Ruby today in this online course and you'll quickly become more productive with Rails, know how to write your own Ruby gems, and understand Ruby design principles and techniques. All of the topics and syntax in this course work seamlessly with both Ruby 2.0 and 1.9.

Most folks jump right into learning Rails but quickly find themselves getting stuck, or even bogged down. The secret to using the Rails framework effectively is to learn the Ruby programming language. And the benefits don't stop there. Ruby is a powerful tool in its own right, beyond Rails or even web programming. Take the time to learn Ruby now and it will continue to pay off for you down the road.

To learn more about this course, watch the introduction video below or start our online Ruby course today for free!

To build solid web apps (fast!), you need a good foundation.

Using Rails is absolute bliss for the first few minutes it takes to stand up a web app. But then the real programming begins. If you're comfortable writing Ruby code, it's smooth sailing from there—you'll have sustained productivity throughout the project. But if you don't have a good grasp of the Ruby programming language, then you're in for a bumpy ride. You'll likely end up spending a lot of time trying to figure out why things don't work. You might even resort to copying in some Ruby code you found on the web. Unfortunately, even if it works, you won't understand why.

Learn Ruby this week and you'll save a lot of time and frustration later.

This comprehensive online course puts you back in the driver's seat. You'll learn everything you need to know about Ruby to be a productive Rails programmer. And we take it a step further. You'll also learn Ruby design principles and techniques to help you become a better all-around Ruby programmer. We'll start at the very beginning and work step-by-step to create a complete Ruby program. You'll learn exactly how all the pieces go together, and you'll come away with the confidence that you truly understand Ruby.

“I've been coding Rails apps and websites for profit, but had learned Ruby as the jobs required. I can now FINALLY say I'm confident I've plugged the holes in my basic Ruby learning.”

Tony Semana

“The structure and content are exactly what I need after bumbling about on my own for months getting to know Rails.”

Ben Sharman

We're right there with you—from start to finish—with engaging instruction, live coding, and practical hands-on exercises. And since this is an online course, you can start taking it immediately, wherever you're comfortable, and work through it at your own pace. If you want to use Rails more effectively, or just become a better Ruby programmer, then this course is for you!

If you want to use Rails more effectively, or just become a better Ruby programmer, then this course is for you!

Video Workbook Code Cheats
Videos Exercises Example Code Cheat Sheets
Support Access Badge Alumni
Mailing List
Proof of
Alumni Status
& Discounts

$159 per student • $119 for alumni

What's Included?

Watch, Read, Practice… and Learn! This online multimedia course includes instant and perpetual access to the following:

  • Ruby Video

    25 Videos: HD-Quality and DRM-free
    The videos are a combination of guided instruction, live-coding, and animated visuals. You'll see exactly how we write a Ruby program incrementally, from start to finish. You can stop, rewind, and rewatch each video as often as you like and at your own pace.

    The total video duration is nearly 5 hours, but each video is only 5-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. Watch them when and where it's convenient for you! All 25 videos are licensed for individual use, DRM-free, and available in full 1280x720 HD resolution. To get a feel for the video format, watch the first few videos for free.

  • Ruby Course

    Online Exercise Workbook (21 Chapters)
    Each video has a corresponding chapter in the online exercise workbook that leads you through incrementally designing and creating a complete Ruby program step-by-step from scratch. The exercises are designed to go hand-in-hand with the videos and you'll end up creating a full-featured Ruby app similar to the app we create in the videos. You'll complete the exercises directly on your own computer—the same comfortable environment where you'll write your own Ruby programs.

    Throughout the workbook you'll find explanations, hints, discussions on design principles, tips and tricks, recommended resources, and of course all the exercise solutions (with tests). And all the workbook content is easily searchable, so you always have a reference library at your fingertips! Check out the workbook format by working through the first few exercises for free.

  • Source Code For Two Ruby Programs
    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, it also engages your brain more by applying 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 Ruby programs.

  • Cheat Sheets
    For handy reference during and after the course, you also get a set of PDF cheat sheets summarizing the syntax, core concepts, and conventions taught throughout the course.

  • Support Mailing List
    Have questions during the course? No problem! You'll get access to a mailing list exclusively for participants of this course where you can post questions, get answers, share insights, discuss Ruby topics, and connect with other students who are pursuing similar goals.

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

  • Proof of Completion
    When you've completed the course, you can easily showcase your accomplishment by sharing the link to your personal alumni page.

  • Alumni Status and Discount
    After purchasing your first online course, you immediately become a Pragmatic Studio alumni and get 25% off all subsequent courses!

“This is the best online training I have done, and I've done plenty. The quality of video and audio is excellent, the length is perfect to hold my attention span, and the workbook exercises are addictive. My motivation stays high as I tick through the chapters. ”

Carlos Interone

“The online Ruby course is simply fantastic. Well worth the money and the best curriculum I've seen yet for learning Ruby.”

Martin Graham

Who's It For?

New Ruby and Rails Programmers who want to learn Ruby, or become more confident with Rails. This course is a good fit for you if you are:

  • New to OO programming
    Perhaps you're looking to jump-start your programming career, join a Ruby/Rails project, or simply learn enough about OO programming to interface with developers. It all starts here! You'll learn the fundamentals of object-oriented programming the Ruby way through live coding, animated visuals, and hands-on exercises. No prior programming experience is assumed.

  • New to the Ruby programming language
    Maybe you've been intrigued by Ruby, but haven't yet had the opportunity to learn it comprehensively from beginning to end. Here's your chance to dive in. You'll learn all the things you'd expect in an OO language, as well as the things that make Ruby unique so you can exploit its true power.

  • New to the Rails web application framework
    Perhaps your goal is to write (or maintain) web applications with Rails. You'll have a much smoother ride once you're handy with the Ruby language. By taking this course, you'll understand some of the "magic" behind Rails and, more important, you'll be in a better position to use it to your advantage.

  • Familiar with Ruby
    If you've dabbled with Ruby here and there, but you're wondering if you're using Ruby to its full potential, this course will help you put it all together. Ruby is different than other languages, and to get the most out of Ruby you'll need to use different programming techniques. You'll learn how to design flexible Ruby programs using modules, mixins, dynamic typing, blocks and iterators, and so on.

“I've been developing Ruby on Rails websites and apps for two years. This course gave me dozens and dozens of 'Ah-ha!' moments with regards to what is actually going on in my Rails apps. My confidence for building new Rails apps and refactoring my existing apps has increased tremendously.”

Chip Ashby

What Will I Learn?

How to Write Object-Oriented Ruby Programs. Through a series of guided instruction and hands-on exercises, you'll learn how to write elegant, expressive object-oriented programs the Ruby way. This course takes a very practical approach, teaching you how to write a complete Ruby program from scratch using all the strengths of Ruby. Topics include:

Ruby Course

Ruby Programming Environment
Ruby has a rich set of programming tools and libraries. Setting up your working environment and using it effectively is the first step toward becoming a productive Ruby programmer. Topics include:

  • Installing Ruby on your favorite operating system
  • Running Ruby using the interactive Ruby shell (irb) and writing Ruby program files
  • Using Ruby's documentation system to get help
  • Installing external Ruby libraries using RubyGems
  • Troubleshooting common problems

Ruby Language Constructs
If you're already programming in another OO language, some of Ruby's constructs may feel familiar. But Ruby has some pleasant surprises, as well. Topics include:

  • Expressions and variables
  • Numbers, string, and symbols
  • Loops and conditional expressions
  • Arrays and hashes
  • Classes, modules, and structs

Object-Oriented Programming
Ruby is an object-oriented programming language. It's also a dynamic language. But what does that really mean and how does it change the way you write programs? We'll show you! Topics include:

  • Using built-in Ruby classes
  • Defining your own classes with state and behavior
  • Creating unique objects
  • Telling objects what to do by calling methods
  • Modeling class-level inheritance relationships
  • Sharing code with mixins

Object-Oriented Design Principles
Defining classes and using objects is a good start, but along the way you'll also need to consider the overall design of your program. Can you make changes without ripple effects? Can you easily test the code? Can someone else use the code as a library? Topics include:

  • Encapsulation
  • Separation of concerns
  • Polymorphism
  • Don't Repeat Yourself
  • Tell, Don't Ask

Blocks and Iterators
Blocks are a fundamental and powerful aspect of the Ruby language. You'll find blocks used throughout good Ruby programs. And many of the methods found in the Ruby standard library itself take blocks. To be an effective Ruby programmer you must master blocks! Topics include:

  • Calling built-in methods that take blocks
  • Writing your own methods that yield to blocks
  • Implementing custom iterators
  • Effectively using blocks in your programs

Organizing Ruby Code
Once you've conceptually organized your program into classes and modules, you'll want to further organize it for reuse, unit testing, and distribution. Topics include:

  • Creating a Ruby project structure
  • Separating source files for easier reuse and testing
  • Namespacing to avoid naming clashes

Ruby has great support for interacting with the external world, whether it be through files, an interactive console, command-line input, or even the web. You'll need some form of I/O in your application, but once you learn Ruby's I/O libraries you might also start rewriting one-off scripts in Ruby, too. Topics include:

  • Reading data from files
  • Writing data to files
  • Creating an interactive console prompt
  • Handling command-line input

Unit Testing
The Ruby community places a high value on testing, and it's for good reason. Testing gives you the courage to make changes, and as a result you're more productive. Topics include:

  • Writing and running unit tests with RSpec
  • Test-driven development and the red-green-refactor cycle
  • Stubbing methods to control tests
  • Refactoring code, safely!

Finally, you'll likely want to package up your Ruby code and share it with your friends… or the world! Topics include:

  • Conforming to RubyGems conventions
  • Writing a GemSpec
  • Building a RubyGem
  • Publishing a RubyGem to a public server

Ruby Programming Idioms
Writing a Ruby program that works isn't always the same as writing a good Ruby program. To master Ruby—to write compact, readable, and flexible Ruby programs—requires that you learn the idioms and culture of the Ruby community. That's what this course is all about: becoming truly fluent in Ruby!

“The course is great! It really teaches you how to think like a Ruby developer. I've been learning Ruby on my own over the past few months, but seeing all the different parts come together as an app has been more than helpful. A lot of stuff that I've previously read about just clicked after watching the videos. At the end of each chapter I felt like I had a good understanding of what I had just done and the reasons why I had done it.”

Matt Halliday

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 programmer:

  • Mac, Windows, or Linux Computer
    Ruby 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 Ruby programs.

  • 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.

“The course is fantastic. I always thought I learned well from just reading books and coding on my own, but I learned MUCH more from watching the videos and doing the assignments. The two of you were excellent instructors and a lot of fun. I am now much more confident in my abilities and understanding.”

C.R. Myers

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 encourage more folks to discover the joy and rewards of programming in Ruby!

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.

If you learn Ruby, you can master Rails!

Video Workbook Code Cheats
Videos Exercises Example Code Cheat Sheets
Support Access Badge Alumni
Mailing List
Proof of
Alumni Status
& Discounts

$159 per student • $119 for alumni