Ruby jest dynamicznie typowanym i obiektowym językiem programowania ogólnego przeznaczenia. Pierwsza wersja została stworzona w połowie lat 90-tych przez Yukihiro Matsumoto. Inspiracją do stworzenia Ruby były języki Perl, Smalltalk, CLU, Eiffel, Ada i Lisp. Ruby łączy ich największe zalety dbając jednocześnie o czystą i ekspersywną składnię. Ruby wspiera wiele paradygmatów programowania: funkcyjny, obiektowy oraz imperatywny.
Pierwsza implementacja Ruby została stworzona w języku C, jednak wraz ze wzrostem popularności Rubiego zainteresowali się nim tacy giganci jak Sun (obecnie Oracle) oraz Microsoft dzięki czemu powstały m. in. JRuby działający na wirtualnej maszynie JAVA oraz IronRuby stworzony dla frameworka Microsoft .NET. Co więcej wiodący język platformy .NET - C# od wersji 3.0 zaczął czerpać ze składni Ruby wprowadzając wsparcie jego niektórych unikatowych cech.
Ruby posiada cechy, których oczekuje się od nowoczesnych języków programowania:
Jedną z największy zalet Ruby jest przejrzysta składnia nierzadko sprawiająca wrażenie, że kod napisany w Ruby jest pseudokodem. Ruby podobnie jak Perl kładzie nacisk na to, aby napisane programy były jak najmniejsze, ale w przeciwieństwie do Perla również czytelne i łatwe do zrozumienia.
Oto przykład programu wyświetalającego liczbę słów zawierających małą lub dużą literę 's'.
>> ["Starware", "ruby", "rails", "solaris", "linux", "support"].select { |s| s.downcase.include?("s") }.size => 4
Ruby rozwijany jest jako darmowe i otwarte oprogramowanie dostępne na licencjach Ruby i GPL.
Prawdziwa eksplozja popularności języka rozpoczęła się wraz z pojawieniem się frameworka Ruby on Rails. Jednak Ruby znajduje zastosowanie niemal w każdej dziedzinie, używany jest chociażby przez NASA, Motorolę, Google czy Lucent. Aktualnie Ruby znajduje się w pierszej dziesiątce najbardziej popularnych języków programowania wg indeksu TIOBE.