Ruby Studio
with Dave Thomas and Chad Fowler
On-Site Training
- Your Developers
Your Location
- +
- Our Instructors
& Courseware
- =
-
Focused Training Just for Your Team!
- Ideal for teams of 8+ developers
Contact Us for a quote.
Learn how to write object-oriented programs in Ruby— and have fun doing it!—in this 3-day, hands-on training course.
- Are you planning to start a Rails or JRuby project, or are you already using them but need a better understanding of Ruby?
- Looking to update your programming skills with the language that's taking the industry by storm?
- Tired of programming in your day job's language of choice, and need to rediscover the joy of programming?
If you're programming for fun or profit, learning how to program in Ruby now is a smart investment.
Who Teaches the Course?
Dave Thomas and Chad Fowler. This course is taught by programmers for programmers. Learn directly from two authors of the definitive books on Ruby:
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. As a co-founder of Ruby Central, he is a leading contributor and frequent speaker in the Ruby community. Chad is the author of Rails Recipes and CTO of InfoEther.
“I liked the guru instructors, the vast amount of info, and exploring multiple ways of doing things.”
—Cody Lewis
Who’s It For?
Programmers. The course is taught by programmers for programmers. It's a hands-on programming course, not lots of dry theory. You'll be writing Ruby code to solve many example problems, for fun and profit.
This course is right for you if
- You have experience with another programming language: Java, C#, C/C++, PHP, Perl, Python, Lisp, Smalltalk, etc.
No previous experience with Ruby or object-oriented programming is required.
“Having hands-on examples and being able to see the examples [live code by the instructors] was a great help in furthering my understanding.”
—Devin Riley
What Will I Learn?
How to Write Ruby Programs with Style. We'll teach you how to write clean, elegant programs the Ruby way.
Getting Started
Ruby has a rich set of
libraries and programming tools. Setting up your working environment
properly will give you a solid foundation to work from.
- Installing Ruby and the RubyGems package management system
- Running Ruby programs: invoking the Ruby interpreter, using the interactive Ruby shell (irb), using Ruby libraries
- Using RubyGems: how to find gems, how to use them, and where they're installed
- Accessing, writing, and generating documentation using RDoc and ri
Ruby Language Constructs
When you begin
programming in Ruby, you'll notice some constructs that are familiar
from other programming languages. But Ruby includes some pleasant
surprises, as well.
- Loops and conditionals
- Strings and numbers
- Arrays and hashes
- Regular expressions
- Blocks and closures
- Iterators, including Enumerable
- Exceptions
Object-Oriented Programming
Ruby is an
object-oriented programming language, but what does that really mean
and how does it change the way you write programs? Let's understand
how objects can help us write better programs.
- Object-oriented programming concepts: objects, classes, methods, composition, inheritance
- Object-oriented design in a dynamic language: mechanisms unique to Ruby, modules, mixins
Organizing Ruby Code
Once you've conceptually
organized your program into classes and modules, you need to
organize it on disk for easy use and packaging.
- How to split code into separate files: scripts, classes, and modules
- Where to find all the stuff on your system: standard libraries, gems, site_ruby, etc.
Testing
Ruby has a strong culture of testing,
and your programs will thank you for it.
- Writing and running tests with the Test::Unit library: assertions, test cases, test fixtures
- Test automation using Rake
Network Programming
It's a networked world, so
we'll learn to write simple programs that connect to Web servers and
download and process data.
Scripting with Ruby
In addition to being an
object-oriented language for building robust applications, Ruby is
also a great scripting language for automating tasks around your
home and office.
- Using stdin/stdout, files, and other standard input and output libraries
- Executing external processes
- Text processing
Common Idioms and Troubleshooting
Throughout
the course we'll show you common Ruby idioms, tips and tricks, and
techniques for quickly diagnosing problems.
“Learning on my own, I missed many of the important details about how Ruby is implemented and why the code should be written a certain way. [In the Studio], the instructors walked us through particular problems to illustrate the programming process for solving them.”
—Zeke Ricci
What Do I Need?
This course is taught on site at your location. As such, you'll need the following:
- a room to comfortably accommodate your team
- a laptop projector and screen
- a whiteboard or flipchart with markers
- laptops (or desktops) on which each attendee can complete the hands-on exercises, and access rights on those machines to install the required software
