Ruby is a dynamic, interpreted, object-oriented language, similar to Python, Perl, and PHP. It is distributed under an open-source license and runs under many platforms. While the language is nearly 20 years old, it has only recently become popular for such tasks as Web development, server scripting, configuration management (powering both Chef and Puppet), text manipulation, and database programming.
This course is meant for experienced programmers who wish to learn the Ruby language. It introduces the core data types, and introduces how to write methods, classes, and modules. It introduces the standard library that comes with Ruby, as well as the large collection of “gems,” packages that can be downloaded, used and integrated into Ruby programs. We also discuss automated testing, text processing with regular expressions, and communication using a variety of network protocols.
Participants in this course can expect to learn the Ruby language, its basic data types, and its unusual object model. The course will not teach Web development, but will concentrate on the core Ruby language and how it can be used in a variety of ways.
The course contains a large number of hands-on exercises, such that participants will write real Ruby programs by the time they are done.
The course uses the latest version of Ruby (1.9.3), which works on Windows, Macintosh, and Unix/ Linux systems. The course will be taught using Linux; some basic familiarity with the Linux command line will be helpful.