Last Updated : November, 2017
Ruby is a general purpose, dynamically typed and reflective, object oriented programming language that was created in the 1990s by Yukihiro Matsumoto.
The original intent when creating ruby was to create a true Object Oriented scripting language. Which at the time, in Matsumoto's optinion, didn't exist. Ruby was designed to be simple at it's core, but with an object system that was fully integreated into the language, and not tacked on as a glorified addon.
At the core of ruby is the desire for programmer productivity and fun. Ruby's core focus is on the programmer not the machine. Therefore ruby attempts to remove as much confusion as possible from the programming process by utilizing a simple, readable syntax and deeply integrated object orientation.
How Ruby Runs
Generally all ruby code is run using an interpreter, although with some implementations of ruby it is possible to compile the code and run it on a virtual machine.
The most popular ruby interpreter is called MRI which stands for Matz's Ruby Interpreter. Unfortunatly there is no official Ruby Language Reference, so generally the Matz interpreter is seen as the language standard.
Ruby utilizes a garbage collector and it's syntax is very minimal and simple.
One reason Ruby has become so popular is due to the Ruby on Rails web application framework. Rails is extremely easy to use which is why it's the framework of choice for tons of large companies like Github, Twitch and Hulu.
Choosing an IDE
Many developers choose to write Ruby using a basic text editor, but there are also more specilized integrated development enviornments, some of the most popular include RubyMine, Aptana RadRails and Vim.