Ruby is an imperative, object-oriented programming language that can be used on all platforms. It has an easy syntax with predefined blocks for loops and conditions. Variables do not require data types and keywords follow basic English. Ruby considers everything an object and makes object creation and inheritance simple. The language supports classes with methods, variables, and single inheritance. It has global, instance, class, block, and pseudo variables. Ranges provide a special feature to iterate over a range of continuous values.