Ruby Sitemap - Page 1 2016-09-26

A Beginner's Guide to Ruby Programming Language
What type of language is the Ruby programming language?

Flows
A short tutorial on using the Shoes layout manager, using stacks and flows. To effectively use any GUI toolkit, you have to understand its layout manager (or geometry manager). In Qt, you have HBoxes and VBoxes, in Tk you have the Packer and in Shoes you have stacks and flows.

Dimensions
A short tutorial on using the Shoes layout manager, using stacks and flows. To effectively use any GUI toolkit, you have to understand its layout manager (or geometry manager). In Qt, you have HBoxes and VBoxes, in Tk you have the Packer and in Shoes you have stacks and flows.

What's a Stack? What's a Flow? --The Shoes Layout Manager
A short tutorial on using the Shoes layout manager, using stacks and flows. To effectively use any GUI toolkit, you have to understand its layout manager (or geometry manager). In Qt, you have HBoxes and VBoxes, in Tk you have the Packer and in Shoes you have stacks and flows.

The Main Window is a Flow
A short tutorial on using the Shoes layout manager, using stacks and flows. To effectively use any GUI toolkit, you have to understand its layout manager (or geometry manager). In Qt, you have HBoxes and VBoxes, in Tk you have the Packer and in Shoes you have stacks and flows.

Overflow
A short tutorial on using the Shoes layout manager, using stacks and flows. To effectively use any GUI toolkit, you have to understand its layout manager (or geometry manager). In Qt, you have HBoxes and VBoxes, in Tk you have the Packer and in Shoes you have stacks and flows.

Flows of Stacks, Stacks of Flows
A short tutorial on using the Shoes layout manager, using stacks and flows. To effectively use any GUI toolkit, you have to understand its layout manager (or geometry manager). In Qt, you have HBoxes and VBoxes, in Tk you have the Packer and in Shoes you have stacks and flows.

What is Cloud Computing?
What is cloud computing? Interviews with industry experts help us define cloud computing, software as service, platform as service and more.

Benefits and Risks of Living in the Cloud for Ruby
What is cloud computing? Interviews with industry experts help us define cloud computing, software as service, platform as service and more. Page 2.

Using Haml with Sinatra
How to use Haml to create Sinatra views and layouts.

Using Haml with Sinatra - A Quick Tutorial
How to use Haml to create Sinatra views and layouts.

A Quick Haml Tutorial
How to use Haml to create Sinatra views and layouts.

Installing Haml
How to use Haml to create Sinatra views and layouts.

A Quick Haml Tutorial
How to use Haml to create Sinatra views and layouts.

A Quick Haml Tutorial
How to use Haml to create Sinatra views and layouts.

Using Haml with Sinatra
How to use Haml to create Sinatra views and layouts.

Using Sinatra in Ruby - Introduction
How to get started in Sinatra, including how to use actions, parameters, ERB and views.

How to Use the Rack Application
In the previous article, you learned what Rack is. Now, it’s time to start using Rack and serve up some pages.

Using the Command Line
How to use the command line interface on Windows, Linux and OS X to run Ruby scripts and use the interactive Ruby program.

Using the Command Line
How to use the command line interface on Windows, Linux and OS X to run Ruby scripts and use the interactive Ruby program.

Using the Command Line
How to use the command line interface on Windows, Linux and OS X to run Ruby scripts and use the interactive Ruby program.

Everything You Need to Know About Variables
Variables are named references to objects in memory. Their several variants (local, instance, class, constant, etc) each have their own subtleties.

Global Variables
Global variables are not often used in Ruby, however, you should at least understand their usage should you ever encounter them.

Local Variables and Bindings
Ruby has a no-surprise take on local variables, they're handled similarly in most programming languages. However, Ruby implements them differently than stack-based languages.

Using the Command Line in Ruby - Tutorial
How to use the command line interface on Windows, Linux and OS X to run Ruby scripts and use the interactive Ruby program.

Generating a Rails Project
Generating a Rails project from which to build an application.

Guide to Creating a URL Shortener in Rails
The following is a list of articles that will show you how to write, style and deploy a URL shortener (like TinyURL) application in Ruby on Rails.

Graphical User Interfaces: Installing Tk
Directions of how to install the Tk GUI and its Ruby bindings on Windows, Linux and Mac OS X.

Making a Text Adventure Game in Ruby
Text adventure games were a very popular game genre on minicomputers and microcomputers from the 1970's through the 1990's. This article series will take you through each step of making a text adventure game in Ruby.

Running Scripts
Editing Rails projects in Vim effectively.

Creating a Blog with Ruby on Rails Tutorial
Part one of the Ruby on Rails blog tutorial focuses on creating a Rails project and scaffolding a basic blog post data structure.

Run the Migration
Migrations allow you to incrementally build your database schema.

Using rails.vim
Editing Rails projects in Vim effectively.

Installing rails.vim
Editing Rails projects in Vim effectively.

Editing Rails Applications in Vim
Editing Rails projects in Vim effectively.

Jumping Between Files
Editing Rails projects in Vim effectively.

Tip of the Iceberg
Editing Rails projects in Vim effectively.

How to Install Ruby on Linux Operating System
How to install Ruby on the Linux operating system.

ARGF, a Shortcut for Scripts
A common task for command line scripts is to read all files listed on the command line, and Ruby has a shortcut for that: the ARGF object.

Iterating Over Strings
It's not a very common thing in Ruby. You have more sophisticated string tools (such as split or scan), but there are times when you'd want to iterate over the characters in a string. Unicode complicates this matter, but Ruby makes it simple.

Net:SSH--Transferring Files with Net::SCP
SSH is not just for running commands, it's a general conduit for encrypted communications between two hosts. One common use for SSH is to transfer files using the SCP protocol over SSH. You can use SCP in your Ruby programs with the Net::SCP library, which is a supplement to Net::SSH.

Transferring Files with Net::SCP--Recursive Uploads and Downloads
SSH is not just for running commands, it's a general conduit for encrypted communications between two hosts. One common use for SSH is to transfer files using the SCP protocol over SSH. You can use SCP in your Ruby programs with the Net::SCP library, which is a supplement to Net::SSH.

Transferring Files with Net::SCP--Downloading Files into Memory
SSH is not just for running commands, it's a general conduit for encrypted communications between two hosts. One common use for SSH is to transfer files using the SCP protocol over SSH. You can use SCP in your Ruby programs with the Net::SCP library, which is a supplement to Net::SSH.

Getting and Printing Strings
How to read and print strings in Ruby.

Getting and Printing Strings
How to read and print strings in Ruby. Page 2.

Static URLs
How do do various types of URL matching in Sinatra.

Hiding Handlers
How do do various types of URL matching in Sinatra.

Splats
How do do various types of URL matching in Sinatra.

Regular Expressions
How do do various types of URL matching in Sinatra.

User Agents
How do do various types of URL matching in Sinatra.

Named Parameters
How do do various types of URL matching in Sinatra.

Named Parameters Through Block Parameters
How do do various types of URL matching in Sinatra.

Net:SSH--Transferring Files with Net::SCP
SSH is not just for running commands, it's a general conduit for encrypted communications between two hosts. One common use for SSH is to transfer files using the SCP protocol over SSH. You can use SCP in your Ruby programs with the Net::SCP library, which is a supplement to Net::SSH.

Net:SSH--Transferring Files with Net::SCP
SSH is not just for running commands, it's a general conduit for encrypted communications between two hosts. One common use for SSH is to transfer files using the SCP protocol over SSH. You can use SCP in your Ruby programs with the Net::SCP library, which is a supplement to Net::SSH.

Transferring Files with Net::SCP---Progress Bars and Feedback
SSH is not just for running commands, it's a general conduit for encrypted communications between two hosts. One common use for SSH is to transfer files using the SCP protocol over SSH. You can use SCP in your Ruby programs with the Net::SCP library, which is a supplement to Net::SSH.

Ruby on Rails Blog Tutorial - Allowing Comments
Part four of the Ruby on Rails blog tutorial shows you how to create a comments table to allow users to comment on your blog posts.

Scaffolding the Comments
Part four of the Ruby on Rails blog tutorial shows you how to create a comments table to allow users to comment on your blog posts.

Displaying the Comments
Part four of the Ruby on Rails blog tutorial shows you how to create a comments table to allow users to comment on your blog posts.

Next Iteration
Part four of the Ruby on Rails blog tutorial shows you how to create a comments table to allow users to comment on your blog posts.

How Routes are Matched
How do do various types of URL matching in Sinatra.

Net:SSH--Executing Programs with Net::SSH
Running programs with Net::SSH is simple enough. The Session object gives you two convenient methods with which to accomplish this task.

What is Sinatra?
Sinatra is a web framework. Simply put, it's a library that allows you to write web applications with a minimum of red tape.

Sinatra URL Matching
How do do various types of URL matching in Sinatra.

SimpleCov - Simple Code Coverage in Ruby
SimpleCov provides simple fire and forget code metrics for you Ruby and Ruby and Rails projects.

Hashes
Hashes are an integral part of Ruby. You will (probably) never see a non-trivial Ruby program that does not use Hashes extensively.

Methods of Sorting Arrays in Ruby
One of the most common tasks when dealing with arrays is to sort them. Luckily, Ruby makes this simple and flexible.

Method for Mapping the Values of an Array
Iterating over arrays isn't the only trick up Ruby's sleeve. Having the ability to map arrays (and other enumerable collections) is a powerful feature.

Installing Ruby on Snow Leopard with RVM
So, you've gotten your shiny new Mac and you want to get right into Ruby programming, where how do you install it? The first thing you should know is that it's already installed. OS X 10.6

Using Git With Ruby on Rails
You don't have to use version control, but you should be. In the past, version control software has been large, clunky, required servers and really was only used when working in groups. But with Git, it's so easy that you really have no excuse, you should be using version control.

XSS (Cross-Site Scripting) Vulnerabilities in Ruby on Rails
Every web developer has to worry about security. There are attackers poking at your site all the time, and the last thing you want them to find is a vulnerability. But Ruby has your back, and has largely mitigated XSS attacks.

Advanced Hash Usage
There's more you can do with hashes than simple key value stores. One of the biggest hash 'tricks' is to emulate keyword parameters.

Storing Key/Value Pairs in Ruby - Structs and OpenStructs
Storing key/value pairs in Ruby doesn't always need to be accomplished by using a hash. You can also use the Struct and OpenStruct classes.

Agile Development
The principles of Agile Development and how agile applies to Ruby on Rails.

What Is the Ruby on Rails Web Framework?
Learn about the concepts of Ruby on Rails, a Model-View-Controller framework for creating database-driven websites in Ruby.

Using Attributes With Ruby
There are two basic things you can do with an object: call a method on it and access an attribute. Ruby doesn't make a distinction between these things, but it does give you some tools to make some methods act like attributes.

Instantiation and the Initialize Method
Ruby objects are instantiated using the Class.new method, and initialize using their own initialize methods.

Substrings
Using and manipulating strings and substrings in Ruby.

Rails Application Flow
When you program with any framework, you relinquish flow control in favor of convenience. The following is a description of what happens to a request as it passes through Ruby on Rails.

Creating a URL Shortener in Rails
URL shortening is a useful feature for any Rails application. Making it easy for people to share links to your content is always a good thing.

Importance of Strings and Substrings in Ruby
Using and manipulating strings and substrings in Ruby.

Using Strings
Using and manipulating strings and substrings in Ruby.

Split and Join - Using Strings in Ruby
Using and manipulating strings and substrings in Ruby. Page 4.

Substitutions Using Regular Expressions
Using and manipulating strings and substrings in Ruby.

Quick and Rough Rails 4 Blog Tutorial
What do you do when a new version of Rails comes out? Build a blog, of course. The blog is kind of the hello, world application of the web application world.

What's New in Rails 4?
Now that Rails 4 is out, let's see what's new.

What is the Difference Between alias and #alias_method?
What is the difference between the alias keyword and the alias_method method? Why are they both there?

Getting Your First Page
When you use a web browser, your browser is said to be the

Getting a Page via a POST Request
When you use a web browser, your browser is said to be the

Mouse and Keyboard Input in Gosu
Games are, by definition, interactive. Gosu makes this interaction straightforward with a simple interface for detecting and reacting to key and mouse button presses.

Key and Button Constants
Games are, by definition, interactive. Gosu makes this interaction straightforward with a simple interface for detecting and reacting to key and mouse button presses.

Event-Oriented Input
Games are, by definition, interactive. Gosu makes this interaction straightforward with a simple interface for detecting and reacting to key and mouse button presses.

Querying Input
Games are, by definition, interactive. Gosu makes this interaction straightforward with a simple interface for detecting and reacting to key and mouse button presses.

Mouse Input
Games are, by definition, interactive. Gosu makes this interaction straightforward with a simple interface for detecting and reacting to key and mouse button presses.

The Mechanize Agent
When you use a web browser, your browser is said to be the

3 Practical Ruby Scripts for Twitter
Exploring and knowing the Twitter API is fine, but what do you do from there? Here are 3 practical scripts to help you follow followers on Twitter, update your Twitter account via an RSS feed and to be notified of your friend's new Tweets as they come in.

Generating Random Numbers in Ruby - Kernel#srand
It's often useful in games, simulation and unit testing to generate random numbers, Ruby provides easy access to a pseudo-random number generator.

Distributed IRC Bot
The following is a number of articles written exploring EventMachine by creating an IRC bot with distributed plugins. The topics cover a wide range of topics.

Download the One-Click Installer
A visual walkthrough on installing Ruby on Windows.

Visual Tutorial: Installing Ruby on Windows
A visual walkthrough on installing Ruby on Windows.

The Start Menu
A visual walkthrough on installing Ruby on Windows.

Interactive Documentation and Prompt
A visual walkthrough on installing Ruby on Windows.

Running Ruby Programs From the Command Line
A visual walkthrough on installing Ruby on Windows.

Worked Example: Number Guessing Game
A number guessing game is written, and each of its features explored.

What is the Ruby Programming Language?
New to Ruby? Or even to programming? Find out what Ruby really is (and isn't) and why you should (and shouldn't) use it.

Run the One-Click Installer
A visual walkthrough on installing Ruby on Windows.

Scite Editor
A visual walkthrough on installing Ruby on Windows.

Spotlight on RubyGems: Builder
The Builder library is a Ruby Gem that uses a meta-language to generate HTML, XML or CSS markup.

Installing jRuby With RVM on OS X
As with most flavors of Ruby, the easiest, cleanest and least painful way to install jRuby is with RVM, the Ruby Version Manager. And although jRuby is different than MRI, the official Ruby interpreter, it can be installed just as easily, arguably easier.

Installing jRuby With RVM on OS X
As with most flavors of Ruby, the easiest, cleanest and least painful way to install jRuby is with RVM, the Ruby Version Manager. And although jRuby is different than MRI, the official Ruby interpreter, it can be installed just as easily, arguably easier.

CSV Example - How to Parse CSV in Ruby
A crash course on what CSV is, what it is used for and how it is parsed. A method for parsing CSV files using only Ruby's built-in string methods is presented and discussed.

CSV Example: Format Strings and Printing the ASCII Table
Now that all the data has been parsed from the CSV and sorted, it's time to print out the ASCII table. Format strings are used to print the data while staying in the lines, and a few tricks are used to make the ASCII table a bit more pretty.

The Case Equality Operator
The case equality operator is key to understanding how case statements really work, and is overall a useful operator when you want to make

Using Boolean Operators in Ruby
While simple boolean expressions will get you pretty far, you'll soon find yourself wanting to act on more than one condition. For that you'll need boolean operators.

What is Bundler?
Bundler is a gem dependency manager for Ruby.

How Does Ruby Compare to Python? - Ruby vs Python
How do Ruby and Python compare in terms of features, form and function?

Getting Started With Bundler for Ruby Gems
The basics of using Bundler are very trivial, you can be up and running in just a few minutes.

Installing jRuby With RVM on OS X
As with most flavors of Ruby, the easiest, cleanest and least painful way to install jRuby is with RVM, the Ruby Version Manager. And although jRuby is different than MRI, the official Ruby interpreter, it can be installed just as easily, arguably easier.

Installing jRuby With RVM on OS X
As with most flavors of Ruby, the easiest, cleanest and least painful way to install jRuby is with RVM, the Ruby Version Manager. And although jRuby is different than MRI, the official Ruby interpreter, it can be installed just as easily, arguably easier.

4 Ways Ruby is Better Than Your Programming Language
A comparison of Ruby to other programming languages, including Perl, Java, Python and PHP.

String Substitution in Ruby
Splitting a string is only one way to manipulate string data. You can also make substitutions to replace one part of a string with another string. For instance, in an example string

OptionParser--Parsing Command-line Options the Ruby Way
Ruby comes equipped with a powerful and flexible tool to parse command-line options, OptionParser. The class is an alternative to GetoptLong for analyzing command line options.

Use OptionParser to Parse Commands in Ruby
Using OptionParser to parse command line options is a preferable alternative to GetoptLong or looking through ARGV manually. But how do you use it?

Using the 'Split' Method in Ruby
String manipulation using the split method in Ruby. Split strings into a list of substrings.

Using Glob With Directories (Dir.glob) in Ruby
In the previous article in this series, we discussed the basics of the Dir class. Particularly useful was the Dir.for each method for iterating over all files in a directory. However, this only goes so far. What if you want to iterate over only some files (for example, just XML files) in a directory?

Garbage Collection
Garbage collection is the process of freeing unused objects. It's a hallmark of many high level languages, including Ruby.

Instance Variables in Ruby
Instance variables are some of the most common and important variables types in Ruby. They begin with the at sign (@) and allow objects to track their internal state.

The Case Statement in Ruby
The case statement is a control structure that is usually quite limited in other programming langauges. However, it's quite powerful and flexible in Ruby.

Aliasing a Method in Ruby
Aliasing is a powerful Ruby feature that allows more than one method to be referred to by multiple names. This can be used to give a programmer more expressive options or to create copies of a method, allowing you to change the behavior of a class.

Command-line Arguments in Ruby
Use command-line arguments to pass parameters to your Ruby scripts from the command line.

How to Create Arrays in Ruby - A Basic Guide
This article explains and teaches how to use a arrays as a way to store multiple variables in one data structure.

Comments for Ruby Code - Usage, Single and Multi-Line
Use comments to annotate your Ruby code.

Accessing Ruby Environment Variables
Using environment variables in Ruby.

Using JSON: The JSON Gem - Ruby
It's easy to jump into parsing and generating JSON in Ruby with the json gem. It provides an API for parsing JSON from text as well as generating JSON text from arbitrary Ruby objects. It's easily the most used JSON library in Ruby.

Manipulate and Submit Form Objects in Mechanize
Manipulating and submitting forms is about as easy as you could imagine in Mechanize. As expected, the form objects (such as check boxes, buttons and text fields) have methods like

Understanding 'String Literals' in Ruby
The basics of strings, string interpolation, single and double quotes, escape sequences and alternate string literal syntaxes.

Ruby
Ruby. Page 2.

Splitting Strings in Ruby - the String#split Method
Unless user input is a single word or number, that input will need to be split, or turned into a list of strings or numbers.

How to Create and Use Hashes in Ruby
This article explains and teaches how to use a associative arrays (hashes) as a way to store multiple variables in one data structure.

How to Use Loops in Ruby - While, Until, Each, Times Loops
Loops, including while and include loops, are one of the most commonly used constructs in computer programs.

While, Until, Each and Times Loops in Ruby
Loops, including while and include loops, are one of the most commonly used constructs in computer programs. Page 2.

Is the "Require" Method Overlooked in Ruby?
The 'require' method is the reusable code mechanism in Ruby. It allows you to import other source files into your programs.

Using Logger Library: How to Write Log Files in Ruby
How to use the logger library to create and write to log files in Ruby.

Running and Executing rb Files Using the Command Line
Learn how to use the command line interface on Windows, Linux and OS X to run Ruby scripts and use the interactive Ruby program.

Running Ruby Scripts--Executing rb Files
Learn how to use the command line interface on Windows, Linux and OS X to run rb files and use the interactive Ruby program. Page 2.

Using Pipe Characters
Ruby. Page 3.

The Interactive Ruby Prompt
Ruby. Page 4.

How to Install Ruby
How to install the Ruby interpreter on Windows, Linux and OS X.

How to Install Ruby One-Click Installer on Windows
How to install the Ruby interpreter on the Windows operating system.

Learn the Ruby Programming Language
This site will teach you the Ruby programming language. We'll teach you with simple, step-by-step tutorials so you can follow along.

Text, Textarea, Password and Hidden Fields
Ruby. Page 2.

Checkboxes and Radiobuttons
Ruby. Page 3.

Buttons and Submitting Forms
Ruby. Page 4.

What is a Rack Application?
There’s a lot of talk about Rack , but unless you’re a framework author yourself, you rarely see it. So what is Rack? And why, as an application developer, should you care about it?

Installing Ruby Version Manager on Linux
Installing the Ruby Version Manager (RVM) on Linux

Installing RVM on Linux
Installing the Ruby Version Manager (RVM) on Linux

Installing RVM on Linux
Installing the Ruby Version Manager (RVM) on Linux

Installing RVM on Linux
Installing the Ruby Version Manager (RVM) on Linux

Installing RVM on Linux
Installing the Ruby Version Manager (RVM) on Linux

Installing RVM on Linux
Installing the Ruby Version Manager (RVM) on Linux

Tainted Objects
Ruby. Page 2.

What is Tainted Data?
In large programs, especially when heavy abstraction is involved, it's sometimes impossible to tell where your data is coming from. Consider the following situation: a server application takes user input from a client and does some processing. It then offloads some of this processing (for example, resizing an image file) to an external program using the backtick operator. The command passed to the operating system is partially comprised of input from the client, which cannot be trusted. A p

Sanitizing and Untainting
Ruby. Page 3.

Setting up the Model
Part four of the Ruby on Rails blog tutorial shows you how to create a comments table to allow users to comment on your blog posts.

Preparing the Comments Controller
Part four of the Ruby on Rails blog tutorial shows you how to create a comments table to allow users to comment on your blog posts.

The Comments Form
Part four of the Ruby on Rails blog tutorial shows you how to create a comments table to allow users to comment on your blog posts.

Building Incrementally
Building Rails applications incrementally.

Scaffolding
Scaffolding is used to quickly create resources for your web application.

What the Scaffold Generator Created
Scaffolding is used to quickly create resources for your web application.

Start the Server
Ruby on Rails is designed to work well with webservers such as Webrick or Mongrel for easy development.

What's Left To Do?
Part one of the Ruby on Rails blog tutorial focuses on creating a Rails project and scaffolding a basic blog post data structure.

A Simple Middleware App
One of Rack’s greatest features is the ability to easily plug in middleware applications.

Default Rack Middleware
One of Rack’s greatest features is the ability to easily plug in middleware applications.

Write Your Own Middleware
One of Rack’s greatest features is the ability to easily plug in middleware applications.

How to Use Rack Middleware
One of Rack’s greatest features is the ability to easily plug in middleware applications.

Progress Bars with the ruby-progressbar Gem
How to use the ruby-progressbar gem to display progress bars on the command line.

Blog


http://ruby.about.com/od/


Variables
Variables are named references to objects. Ruby has a variety of variable types and scopes.

Comparisons: Ruby Vs. The World
If curious about Ruby, you might be interested to know how it stacks up against your current language of choice. While this isn't a metric of how

Collections: Arrays, Hashes and Enumerable
Most languages have the concept of a

Strings
How to use, process, parse and manipulate strings in Ruby.

Files and Directories
How to access files and directories in Ruby.

Control Flow
Control structures alter the execution path (the

Object Oriented Programming
Ruby is an object oriented programming language in the purest sense of the word. Everything in Ruby is an object, and every object has a class. It's difficult to program anything but the smallest scripts without touching on object oriented programming.

New Features in Ruby 2.1.0
Ruby 2.1.0 provides a number of new features, including a few under the hood changes you should know about.

Ruby on Rails 3 Tutorials
A series of articles that will teach you Rails. A variety of articles are presented, including introductory articles, informational articles and walkthroughs to create complete sites.

Ruby on Windows the Easy Way: With Linux
Many developers are stuck on, required to use or simply want to use Windows. However, it's not the most friendly of development environments. But you can fix this by running Linux on top of Windows using virtualization.

Bundler
Bundler is a program that manages gem dependency versions. It will make your your Ruby programs have all the gems they need and the same versions as they were developed for.

Advanced Ruby
These pages deal with some of the more advanced concepts of Ruby and are geared toward intermediate and advanced programmers. The covered concepts will build upon the more basic features of Ruby, a discussion of which can be found in Beginning Ruby.

Ruby Regular Expression Tips: Quick Extraction
Regular expressions are a powerful and often cryptic feature for processing text. Ruby provides a quick way to handle this often cumbersome tool and extract a specific part of a string.

Beginning Ruby
If you're just getting to know Ruby, these articles will tell you what you need to know to get started. From a basic explanation of the programming language to comparison to other programming languages to descriptions of descriptions of Ruby's basic features, you'll get to know Ruby.

Ruby Challenge: Palindrome
A palindrome is any word or phrase that's the same backwards as it is forwards. Your challenge is to create a method that, when given a string, will detect all english language palindromes.

RubyGems
Learn how to install and update RubyGems and find out the uses and strengths of specific gems as they're examined in our Spotlight on Gems.

A Few of my Favorite Gems
We all have our favorite gems. These are gems that we either use very often, or we loved using so much we find reasons to use them. The following is a list of some of my personal favorite gems in no particular order.

SimpleCov
Code coverage metrics tell you which lines are (and more importantly which lines aren't) covered by your tests. SimpleCov is a fire and forget solution that produces easily navigable HTML files breaking down your test coverage line by line.

Ruby Challenge: Pig Latin
Pig latin is a word game with some simple rules that turn the phrase

Text Adventure Games
Text adventure games were a very popular game genre on minicomputers and microcomputers from the 1970's through the 1990's. This article series will take you through each step of making a text adventure game in Ruby.

Distributed IRC Bot
The following is a number of articles written while exploring EventMachine. Along the way (or, rather, as a reason to look at EventMachine in the first place), an IRC bot with distributed plugins is created.

Writing a 2048 Clone in Ruby
In this series, we'll create a complete 2048 clone in Ruby, from scratch. We'll discuss the algorithm and all details involved in implementing that algorithm in Ruby. We'll be using a two dimensional array, rotating that two dimensional array and doing many other array operation.

Tutorials
This sections contains Ruby scripts and short tutorials on how to perform specific tasks, the challenges presented by the tasks and information about the related libraries and/or gems available to help you accomplish each task.Here you will also find the answers to reader questions, complete with detailed explanations and code examples.

Ruby Challenges
Whether you're just starting out, or whether you want to take a break from the monotony of making the same program over and over again, a challenge might be just what you're looking for. The following are a series of challenges designed to both teach you Ruby and exercise your skills.

Challenge: The Fizz Buzz Test
The fizz buzz test is a basic programming task designed to weed out unqualified applicants to programming jobs. Never mind qualifications, job history or education, just see if the applicant can compose a simple program. Surprisingly, a large percentage of applicants can't complete this task and this makes the interviewer's job much easier. So what are you in for taking this test? The answer is: not much.

Doing Things Wrong: Number Guessing Game Part 2
Doing things wrong in Ruby: to to (and how not to) write a number guessing game in Ruby.

Doing Things Wrong: Number Guessing Game Part 1
Doing things wrong in Ruby: to to (and how not to) write a number guessing game in Ruby.

Assigning Keyword Arguments from the Constructor
A common Python idiom of assigning instance variables from keyword arguments is examined.

The Double Bang Operator: !! in Ruby
The Double Bang Operator: !! in Ruby, is this a good way to convert an object to a boolean?

Ruby 2.2's New Garbage Collector
Ruby 2.2 comes equipped with a new incremental garbage collector that should improve interactive performance.

Cloud Computing and Ruby
Why are cloud computing and Ruby on Rails a good match? Let's hear what Hampton Catlin, author of HAML and Wikipedia's head Ruby/mobile architect has to say!

10 Great Resources to Learn Ruby for Free
Sometimes the old adage rings true: the best things in life are free. If you've wanted to learn a little Ruby, but haven't been able to fit a programming course into your budget, don't worry. There are a number of places on the Web to begin your learning, without sacrificing money or quality.

Securing Ruby Code
With increasing numbers of large-scale projects being written in Ruby, programmers need to know how to secure their code. There are several entire classes of vulnerabilities unique to web applications. As Rails is often the only publicly accessible Ruby code running, here we will define and discuss the security issues facing Ruby and Ruby on Rails.

Automation with Net::SSH (Secure Shell)
Net::SSH is a way for Ruby to interact with SSH (Secure Shell) protocol. It relies on the OpenSSL library for encryption.

Question and Answer
How do you do X in Ruby? Why does doing Y raise an exception? Here, you will find the answer to many such questions.

The Ternary (or "Conditional") Operator
The ternary (or

Combining Arrays in Ruby
There are a number of ways to combine arrays in Ruby.

Blog
Blog. Ruby.

JRuby
JRuby is a Ruby implementation that runs on the Java Virtual Machine. It features fast execution speed and integration with the Java environment. Here you'll find articles about all aspects of JRuby.

Ruby on Rails 4
Ruby on Rails 4, released in 2013, is the next point release for Ruby on Rails. It fixes a number of things, adds functionality and keeps the ball rolling forward.

Automation of Windows using FFI
Ruby is not real at home on Windows, however JRuby has a great FFI system that can be used to easily (after a fashion) control and automate Windows applications.

Creating a Reddit Clone with Rails
In this series, we'll create a clone of the popular social news site Reddit.com. The site will be fully functional and as we'll make few sacrifices (such as the complex ranking algorithms), the final product will function more or less exactly like Reddit.

Using IPAddr to Test Subnetworks
Using the built in IPAddr library to test if an IP Address belongs to a certain subnetwork.

Error - Undefined Method "to_sym" for nil:NilClass
Problem: Seemingly at random, you've encountered the error undefined method `to_sym' for nil:NilClass, or a similar error message for any method name other than to_sym.

Download RubyInstaller
In the past, the Ruby “One-Click Installer” was the primary choice for installing Ruby on Windows. However, the One-Click Installer fell into disrepair and was eventually abandoned. Something new was needed, and thus, RubyInstaller was born.

Run the Installer
In the past, the Ruby “One-Click Installer” was the primary choice for installing Ruby on Windows. However, the One-Click Installer fell into disrepair and was eventually abandoned. Something new was needed, and thus, RubyInstaller was born.

See What’s Installed
In the past, the Ruby “One-Click Installer” was the primary choice for installing Ruby on Windows. However, the One-Click Installer fell into disrepair and was eventually abandoned. Something new was needed, and thus, RubyInstaller was born.

Install an Editor
In the past, the Ruby “One-Click Installer” was the primary choice for installing Ruby on Windows. However, the One-Click Installer fell into disrepair and was eventually abandoned. Something new was needed, and thus, RubyInstaller was born.

Installing a Ruby Development Environment on Windows
In the past, the Ruby “One-Click Installer” was the primary choice for installing Ruby on Windows. However, the One-Click Installer fell into disrepair and was eventually abandoned. Something new was needed, and thus, RubyInstaller was born.

What's New in Ruby 1.9.1? -The Lambda Operator
Among the new features in release of Ruby 1.9.1 is the Lambda operator, a shortcut used to make nameless methods. Learn how to use this feature introduced in Ruby 1.9.1.

Installing Gems from Git Repositories
How to install gems from git repositories.

Running Git Bash
Installing command line tools such a Git on Windows is often difficult. Not only do you have to find a Windows port or attempt to compile the tool yourself from C source code, you also have to deal with the Windows command line. The Windows command line is, to say the least, a little lacking. Windows users are in luck here though, the MSysGit project solves both these problems.

Download the Git Installer
Installing command line tools such a Git on Windows is often difficult. Not only do you have to find a Windows port or attempt to compile the tool yourself from C source code, you also have to deal with the Windows command line. The Windows command line is, to say the least, a little lacking. Windows users are in luck here though, the MSysGit project solves both these problems.

Open the MSysGit Homepage
Installing command line tools such a Git on Windows is often difficult. Not only do you have to find a Windows port or attempt to compile the tool yourself from C source code, you also have to deal with the Windows command line. The Windows command line is, to say the least, a little lacking. Windows users are in luck here though, the MSysGit project solves both these problems.

Installing Git on Windows
Installing command line tools such a Git on Windows is often difficult. Not only do you have to find a Windows port or attempt to compile the tool yourself from C source code, you also have to deal with the Windows command line. The Windows command line is, to say the least, a little lacking. Windows users are in luck here though, the MSysGit project solves both these problems.

Run the Git Installer
Installing command line tools such a Git on Windows is often difficult. Not only do you have to find a Windows port or attempt to compile the tool yourself from C source code, you also have to deal with the Windows command line. The Windows command line is, to say the least, a little lacking. Windows users are in luck here though, the MSysGit project solves both these problems.

Using RVM Gemsets in Ruby - Easy Tutorial
One of the most powerful, useful and often overlooked features of RVM is the gemset. A gemset is a separate gem directory, so the gems in one gemset don't conflict with the gems in another gemset.

Install XCode
So, you've gotten your shiny new Mac and you want to get right into Ruby programming, where how do you install it? The first thing you should know is that it's already installed. OS X 10.6

Install Git
So, you've gotten your shiny new Mac and you want to get right into Ruby programming, where how do you install it? The first thing you should know is that it's already installed. OS X 10.6

Set up Git For GUI Programs
So, you've gotten your shiny new Mac and you want to get right into Ruby programming, where how do you install it? The first thing you should know is that it's already installed. OS X 10.6

Install RVM
So, you've gotten your shiny new Mac and you want to get right into Ruby programming, where how do you install it? The first thing you should know is that it's already installed. OS X 10.6

Add RVM to Your Bash Environment
So, you've gotten your shiny new Mac and you want to get right into Ruby programming, where how do you install it? The first thing you should know is that it's already installed. OS X 10.6

Install a Ruby
So, you've gotten your shiny new Mac and you want to get right into Ruby programming, where how do you install it? The first thing you should know is that it's already installed. OS X 10.6

Test it Out
So, you've gotten your shiny new Mac and you want to get right into Ruby programming, where how do you install it? The first thing you should know is that it's already installed. OS X 10.6

Using the Command Line
How to use the command line interface on Windows, Linux and OS X to run Ruby scripts and use the interactive Ruby program.

Using the Command Line
How to use the command line interface on Windows, Linux and OS X to run Ruby scripts and use the interactive Ruby program.

Using the Command Line
How to use the command line interface on Windows, Linux and OS X to run Ruby scripts and use the interactive Ruby program.

Using the Command Line
How to use the command line interface on Windows, Linux and OS X to run Ruby scripts and use the interactive Ruby program.

Using the Command Line
How to use the command line interface on Windows, Linux and OS X to run Ruby scripts and use the interactive Ruby program.

Using the Command Line
How to use the command line interface on Windows, Linux and OS X to run Ruby scripts and use the interactive Ruby program.

NameError: uninitialized constant Object::Something
Problem: You encounter an error reading NameError: uninitialized constant Something or NameError: uninitialized constant Object::Something (with various class names in place of Something).

Thread Pools
Thread pools are a common pattern in many programs: the need to run M tasks, but only wish to run N of them in parallel at a time.

Installing Bundler
Creating Ruby gems has always been a bit of a pain. When you get right down to it, it's not a hard thing to do, but it's easy to forget how if you don't do it often enough. There are quite a few gems to help you write other gems, but if you're using Rails 3, there's already a gem on your system that does this: Bundler.

Generating the Project Directory
Creating Ruby gems has always been a bit of a pain. When you get right down to it, it's not a hard thing to do, but it's easy to forget how if you don't do it often enough. There are quite a few gems to help you write other gems, but if you're using Rails 3, there's already a gem on your system that does this: Bundler.

Fill In The Blanks
Creating Ruby gems has always been a bit of a pain. When you get right down to it, it's not a hard thing to do, but it's easy to forget how if you don't do it often enough. There are quite a few gems to help you write other gems, but if you're using Rails 3, there's already a gem on your system that does this: Bundler.

Add Code
Creating Ruby gems has always been a bit of a pain. When you get right down to it, it's not a hard thing to do, but it's easy to forget how if you don't do it often enough. There are quite a few gems to help you write other gems, but if you're using Rails 3, there's already a gem on your system that does this: Bundler.

Install or Publish the Gem
Creating Ruby gems has always been a bit of a pain. When you get right down to it, it's not a hard thing to do, but it's easy to forget how if you don't do it often enough. There are quite a few gems to help you write other gems, but if you're using Rails 3, there's already a gem on your system that does this: Bundler.

How to Make Deep Copies in Ruby
It's often necessary to make a copy of a value in Ruby. While this may seem simple, and it is for simple objects, as soon as you have to make a copy of a data structure with multiple array or hashes on the same object, you will quickly find there are many pitfalls.

Two Dimensional Arrays in Ruby
We'll use a two dimensional array to represent the 2048 game board, but how do we create a 2D array in Ruby?

Analyzing the Game of 2048 Before We Start
Before we start coding, we take some time to look at the game of 2048.

AJAX With Sinatra
In this article we take a look at how to use jQuery and Sinatra to implement an AJAX interface.

Setting up a Rails Development Environment
Before you can dive into Rails development, you need a few things. Things like a competent editor, a web browser with a dom inspector, and the git version control utility. Get these things out of the way before you go full steam ahead.

Quick Tip: Last Result in IRB
There's a really quick way to get the result of the last expression evaluated in IRB.

What do the Experts Have to Say About Cloud Computing?
What is cloud computing? We let the experts explain cloud computing in their own words.

Padrino
Ruby.

Ruby Programming FAQs
The FAQ section answers your Ruby coding questions with detailed task analysis and code examples.

Game Programming
Ruby.

NoSQL Databases
Ruby.

Installing Ruby on Windows, Mac and Linux
Instructions for installing Ruby on Windows, Linux and Mac OS X.

Using the Git Version Control Tool with Ruby
While Git is not written in Ruby, nor is it a tool used exclusively by Rubyists, Git is the source code version control software used by many Rubyists. Git and Ruby are a natural fit, allowing you to manage small and large personal projects, as well as to collaborate with others quite easily. Git is also the heart of the popular source code sharing website, GitHub.

Ruby and Ruby on Rails--Book Reviews
Reviews of Ruby and Ruby on Rails books.

Ruby's Basic Features: Blocks, Loops, Arrays & more
Like any other programming language, Ruby has a number of basic features that make up the code. Learn what these features are and how to use them in your code.

Sinatra
Ruby.

Shoes
Compared to other GUI toolkits, Shoes is a bit unconventional. Originally written by the always interesting

Learn Ruby for Free--Profiles of RubyTutorials on the Web
Learn more about where to learn more about Ruby with these profiles of some of the most popular online Ruby tutorials.

Named Regexp Groups
Ruby 1.9 introduces the concept of a named capture group. These named groups can be defined at the beginning of a regexp statement using a trick that tells for the regexp engine to look for exactly 0 instances of the group. Later, the group can be recalled using the g element, followed by the name of the group. You can think of named capture groups as subroutines inside of a regular expression.

New Features in Ruby 1.9.x
With the new release of Ruby 1.9.x, there are some changes and new features to learn in order to migrate code. Here we will introduce you to these changes and use code examples to show you how to use Ruby 1.9.x.

Test-Driven Development on Rails
Ruby.

Rack
Rack is a minimal interface between web applications or application frameworks and HTTP servers.

Rapid Game Prototyping with Gosu
Game programming in Ruby with the Gosu library.

SSH (Secure Shell) in Ruby
SSH (or

The Mechanize 2.0 Handbook
Mechanize is a library for automated interaction with web sites. For all intents and purposes, it acts like a web browser with no user interface. It downloads web pages, can click on links, fill out and submit forms, store cookies, etc. Mechanize is useful for automated crawling, testing and scraping of web sites.

What is Cloud Computing?
What is cloud computing and how does Ruby fit into it? We posed that question to a number of industry experts to come up with some answers to these questions and more.

Glossary
The glossary contains definitions of the Ruby programming terms, phrases and symbols used on About.com's Ruby site.

Graphical User Interfaces
Here you'll find tutorials on building Graphical User Interface applications using the various GUI libraries available to Ruby programmers. Includes directions about using Tk, Qt and GTK libraries.

Networking
Ruby can be used with a variety of networking protocols to download web pages and send email. These pages will address how to use HTTP, SMTP and raw sockets to implement your own networking protocols.

Reviews
This page will provide Ruby programmers with reviews of Ruby-related products and information about upcoming conferences, events and symposiums.

Ruby on Rails
Tutorials and informative articles introducing the fundamental concepts and programming possibilities of the web framework Ruby on Rails.

Ruby Version Manager (RVM) - Installing Multiple Versions of Ruby
Ruby Version Manager (RVM) is a tool that allows you to install multiple versions of Ruby. It allows you to have multiple versions of the same interpreter, as well as multiple interpreters such as jRuby, MacRuby, Ruby Enterprise Edition, etc. And, for many, RVM has become the preferred way to install and keep a single version of Ruby up to date.

Test-Driven Development
Test-Driven Development (TDD) is an important part of the Ruby ecosystem and doing things

Convoluted Constructions
A

Serialization
Serializing an object is to convert an object to a byte stream and either store that object for future loading, or sending to another program to be loaded there.

Using an HTTP Proxy
When you use a web browser, your browser is said to be the

Logging what Mechanize Does
When you use a web browser, your browser is said to be the

Retrieving a Tagged Release
Once you have releases tagged in the repository, it will be useful to retrieve tagged releases. For example, I want to see if a bug was present in version 0.3, so I'll want to retrieve version 0.3 and run it. Git, of course, makes this easy.

NoSQL and Document Oriented Databases
Chances are, you've spent your entire database life with relational databases. Data gets organized into columns, and stored in rows. You manipulate data with SQL (Structured Query Language) and there's really no other way to do it. There are competing SQL servers out there (MySQL, SQLite, etc), but they all more or less operate in the same way. But there's much more out there than SQL databases, especially with all the new software in the past few years.

What is RVM?
RVM is the Ruby Version Manager. It allows you to install and manage several different versions and implementations of Ruby on one computer, including the ability to manage different sets of RubyGems one each.

Installing Git on Linux
There are multiple ways of installing Git on Linux. Depending on which Linux distribution you're using and whether it provides binary packages for Git, you can either install a binary package or install from source.

Adding Files to a Repository
How to add files to a Git repository.

Eval: Running Code on the Fly
Most non-compiled languages have some kind of eval function, which will take a string and execute it as code.

How to Display Your Ruby Version in Your Bash Prompt
With RVM installed on your system, it's easy to have many versions of Ruby installed. And, especially if you switch between them often, it's easy to forget which Bash command prompt is using which Ruby version. You can solve this by putting your Ruby version in your Bash prompt.

Constants in Ruby
Like just about every programming language every conceived, Ruby supports constants. A constant is a variable whose value cannot be changed. However, in Ruby, this has some caveats.

Using Temporary Files
There are many hidden pitfalls when using temporary files. Ruby's Tempfile class solves many of these.

Working with Directories
Learning how to work with files is one of the first things new Ruby programmers learn. However, how to work with directories of files is something that's often skipped or only lightly touched upon. Ruby does have some powerful mechanisms for working with directories though.

Spotlight on Gems: Trollop
In a previous article we discussed how to parse command-line options with Ruby's default OptionParser class. While this does work quite well, it's quite verbose. Trollop is a great library that solves these problems.

Block Variable Scope
The release of Ruby 1.9.1 brings new features to be learned,among them are the changes in block variable scope. Learn the new syntax for block variable scope introduced in Ruby 1.9.1.

A Quick Introduction to DataMapper
DataMapper is a

Riding Shotgun with Sinatra
Now that you can write controller logic and views and Haml, you can start putting together some more complex application. There's one very annoying thing though: Sinatra does not reload its code whenever you make a change. If you make a change, you have to stop and restart the server. This is just an extra step and generally an annoyance. This where shotgun comes in.

Test Driven Development in Ruby--Unit Tests in TDD with Rails
Learn the basics of writing and running unit tests for test driven development in Rails.

Testing Validations
Learn the basics of writing and running unit tests for test driven development in Rails. Page 2.

Running Test::Units Rake Task
Learn the basics of writing and running unit tests for test driven development in Rails. Page 3.

Writing a Unit Test
Learn the basics of writing and running unit tests for test driven development in Rails. Page 4.

Running the Test
Learn the basics of writing and running unit tests for test driven development in Rails. Page 5.

Creating and Distributing Gems with Bundler
Creating Ruby gems has always been a bit of a pain. When you get right down to it, it's not a hard thing to do, but it's easy to forget how if you don't do it often enough. There are quite a few gems to help you write other gems, but if you're using Rails 3, there's already a gem on your system that does this: Bundler.

Serialization in Ruby: Marshal
Serializing an object is to convert an object to a byte stream and either store that object for future loading, or sending to another program to be loaded there. There are several common ways to serialize objects in Ruby. The Marshal module is used less often than the other methods, but it's included in the standard library.

Caveats
Serializing an object is to convert an object to a byte stream and either store that object for future loading, or sending to another program to be loaded there. There are several common ways to serialize objects in Ruby. The Marshal module is used less often than the other methods, but it's included in the standard library. Page 2.

Custom Serialization
Serializing an object is to convert an object to a byte stream and either store that object for future loading, or sending to another program to be loaded there. There are several common ways to serialize objects in Ruby. The Marshal module is used less often than the other methods, but it's included in the standard library. Page 3.

Parsing IRC Messages
Parising IRC messages using named capture groups.

Named Groups
A novel feature of the Ruby regular expression engine can be used to easily parse text.

Note - This Article is Obsolete
A visual walkthrough on installing Ruby on Windows.

Optional Method Parameters with Hashes
Using hashes to simulate optional named parameters in methods.

Capturing the Return Value of an External Program
Ruby makes it easy to run external programs and capture their output. Using the built-in

On 'case' and 'class'
While dynamic programming and duck typing often make it a bad idea to do so, it's sometimes useful to do different things based on the type of a given variable.

Test Driven Development in Ruby--Assertions
The Test::Unit library comes with a variety of assertions to make writing tests much easier. Learn what the assertions are for Test-Driven Development and when to use them.

Can Git Add Empty Directories?
Can I add empty directories to Git repositories?

NameError: undefined local variable or method `a' for #
Problem: You encounter an error reading NameError: undefined local variable or method `a' for # or NameError: undefined local variable or method `a' for main:Object (with various identifiers in place of 'a').

The Intent and Impact of Cross-Site Request Forgery (CSRF) Attacks
There are a number of reasons that someone would want to launch a CSRF attack and each has its own unique impact. If your Ruby on Rails code is vulnerable to these attacks, your site's security could be at risk.

Error Messages: Couldn't find without an ID
Problem: You've encountered the error message Couldn't find Page without an ID while trying to run find on an ActiveRecord class.

Mechanize Error: Mechanize::UnsupportedSchemeError
The error Mechanize::UnsupportedSchemeError is raised when Mechanize tries to fetch a page using an unsupported protocol scheme, such as ftp or gopher. Mechanize supports only the file, http and https schemes.

Quick Tip: Install Gems Faster
Some larger projects, especially Ruby on Rails, come with quite a bit of documentation. This is good, documentation is good, but the code that processes this documentation (RDoc) into HTML and ri format is not exactly speedy. On slower computers, or with larger projects, the time this takes becomes and annoyance.

Control Structures
Control structures alter the path the Ruby interpreter takes. They include conditional expressions such as if, if/else and case, and the various loops.

Tutorials
Simple step-by-step guides for learning how to program in Ruby. These tutorials will take you through everything from how to run a Ruby script to creating a

XML
Learn XML processing techniques with Ruby and examine the available XML libraries, parsers and generators.

Creating a Window in Gosu
First step to any game: create a window for drawing. This will also initialize the Gosu library, so it'll be ready to poll for input, play sound, etc. This article will also introduce the basic framework for games that will be used in all further articles.

Installing Gosu
While Gosu does require native compilation, the developers thankfully require pre-compiled packages for all platforms. On Windows, Linux and OS X, Gosu can be installed with a single gem command.

Reloading RVM
RVM is a moving target. It's still under regular development and in order to get the most current versions of Ruby, you'll need to upgrade to the head version of RVM. This is the version checked out directly from its GitHub repository.

Updating RVM
RVM is a moving target. It's still under regular development and in order to get the most current versions of Ruby, you'll need to upgrade to the head version of RVM. This is the version checked out directly from its GitHub repository.

Installing Git
RVM is a moving target. It's still under regular development and in order to get the most current versions of Ruby, you'll need to upgrade to the head version of RVM. This is the version checked out directly from its GitHub repository.

Install 1.9.2
If you already have a Ruby like 1.9.2-rc2 installed with a number of gems and want to upgrade to 1.9.2-p0, the following steps will get you there. As expected,RVM makes this quite easy.

List Known Rubies
If you already have a Ruby like 1.9.2-rc2 installed with a number of gems and want to upgrade to 1.9.2-p0, the following steps will get you there. As expected,RVM makes this quite easy.

Reload RVM
If you already have a Ruby like 1.9.2-rc2 installed with a number of gems and want to upgrade to 1.9.2-p0, the following steps will get you there. As expected,RVM makes this quite easy.

Upgrade RVM Itself
If you already have a Ruby like 1.9.2-rc2 installed with a number of gems and want to upgrade to 1.9.2-p0, the following steps will get you there. As expected,RVM makes this quite easy.

Copy Your Gemsets
If you already have a Ruby like 1.9.2-rc2 installed with a number of gems and want to upgrade to 1.9.2-p0, the following steps will get you there. As expected,RVM makes this quite easy.

Test It Out
If you already have a Ruby like 1.9.2-rc2 installed with a number of gems and want to upgrade to 1.9.2-p0, the following steps will get you there. As expected,RVM makes this quite easy.

How to Install Ruby on OS X
How to install Ruby on Apple OS X

Features of the Ruby Programming Language
Learn about the basic features of Ruby. From Loops to Exceptions, these articles will explain the basic programming features of Ruby and how they are used.