Ruby Programming

Online Video Course

Learn how to pragmatically write and design Ruby programs in this
step-by-step, project-based course.

You'll discover how to build your own Ruby program from beginning to
end, incorporate Ruby principles and techniques in your design, write
your own Ruby gem, and make sense of the “magic” behind Rails. All of the topics and syntax in this
course work seamlessly with both Ruby 2.0 and 1.9.

Videos

Exercises

ExampleCode

CheatSheets

SupportMailing List

PerpetualAccess

Alumni Status& Discounts

“The course is outstanding! The best I've ever taken. Rails is
so much less mysterious now that I'm learning Ruby the right
way.” — Tony Barone

“The course is great! It really teaches you how to think like
a Ruby developer.” — Matt Halliday

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

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

$169 per student

Step-By-Step, Project-Based Approach

Videos, Exercises, Hands-on Projects. In our popular online
format you'll learn through a unique mix of watching, coding, reading,
experimenting, and ultimately, building a Ruby program from idea to
publishing a gem.

25 Engaging Videos: HD-Quality and DRM-free
The videos are a combination of guided instruction, live-coding,
discussions, and animated visuals to deepen your understanding. To get a
feel for the video format, watch the first few
videos. The total video duration is nearly
5 hours divided into 5-20 minute increments. Watch them
when and where it's convenient for you. All the videos are licensed for
individual use, downloadable, DRM-free, and available in full 1280x720
HD resolution.

Hands-On Exercise Workbook (21 Chapters))
Each video has a corresponding chapter in an online workbook where you
apply what you learned in the video through a series of exercises
completed on your own computer. Check out the exercise format by working through the first few exercises. Of course all the solutions are provided and the workbook content is
easily searchable, so you always have a reference library at your
fingertips!

Well-Designed Source Code For Two Ruby Programs
To fully engage your brain and cement the concepts, you'll apply
what you learned in the video to a slightly different program in the
workbook. Students tell us this is one of the best parts of our courses!
Not only it is more fun and interesting, you'll also have two
full-featured Ruby programs to draw from at the end of the course.

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

Helpful Support Mailing List
Post questions, get answers, share insights, discuss Ruby topics,
and connect with other students who are pursuing similar goals.

Instant and Perpetual Access
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.

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

Money-Saving Alumni Status and Discount
After purchasing your first online course, you immediately become a
Pragmatic Studio alumni and get 25% off all subsequent
Ruby and Rails 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

“I've learned more from your Ruby course than any
other course or tutorial I've taken on Ruby.”

Andrew Fowler

Learn & Become More Confident With Ruby

For new Ruby and Rails programmers who want to learn Ruby, or
become more confident with Rails, this course is designed just for you!

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

Learn to Write Object-Oriented Programs, The Ruby Way

Build a complete Ruby program from scratch. In this course,
you'll learn how to write elegant, expressive object-oriented programs using
all the strengths of Ruby. Topics include:

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:

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:

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

Input/Output
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!

Distribution
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!

“I tried ALL the other schools and tutorials and they all gave me
enough info to be totally confused. I learned so much in your course!
It is worth its weight in gold!”

Karl Neumann

Build a Ruby Program You Can Be Proud Of

All you need is 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

We'll Help You Become A Better All-Around Ruby Programmer

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.

“Signing up for this course is the best decision I've made
when it comes to online training. The hands-on exercises really
helped reinforce the ideas and make the concepts easy to grasp.”

Related Courses

Reviews

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

“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

“Our new hires are loving your online Ruby and Rails courses. In
the past, our senior engineers taught new team members Rails on their own. But now with
your courses, we are getting new engineers up to speed much easier and faster.”
Eirik Holm, AppFolio

“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. They have already given me more confidence in my coding
skills.”
Carlos Interone

“Wonderful course! The video explanations were some of the
best-paced lessons I've experienced. 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

Alumni & Teams

If you've attended a public Pragmatic Studio event or purchased an online
course, log in to your account to
automatically get the 25% alumni discount on Ruby and Rails courses.

If you have a team of 5 or more developers, contact us about discounted team licenses.

Course Access

To access our online courses, each student needs their own individual
account. All the course material, including videos, exercises, and source
code is copyrighted and licensed for individual use only.
Please support our small business by encouraging others to purchase their
own copies!

Refund Policy

We try very hard to make the descriptions of our courses accurate, and to give you
representative excerpts before you buy. Despite this, we know that sometimes a course
isn't what you expected. If you are not satisfied with a course, contact us within
30 days of purchase and we'll gladly issue a full refund.