Ruby- ն դինամիկ, ռեֆլեկտիվ, ընդհանուր նշանակության ծրագրավորման լեզու է։ Այն նախագծվել և զարգացել է 1990 թվականի կեսերին Ճապոնիայի Յուկիխիրո «Մաթ» Մացումոտոյի կողմից։
Նրա հեղինակի համաձայն, Ռուբինն ազդեցություն ունեցավ Perl, Smalltalk, Eiffel, Ada և Lisp ծրագրավորման լեզուների վրա։ Այն աջակցում է բազմաթիվ ծրագրավորման պարադիգմների, ներառյալ ֆունկցիոնալ, հրամայական։ Այն նաև ունի դինամիկ տիպային համակարգ և ավտոմատ հիշողության կառավարում։
Մատսումոտոն ասել է, որ Ռուբիի միտքը ծագել է 1993 թվականին։ 1999 թվականի գրառմանը ` նա նկարագրում է լեզվի մասին իր վաղ գաղափարներից մի քանիսը:
Ես խոսում էի իմ գործընկերոջ հետ,օբյեկտի վրա հիմնված սկրիպտային լեզվի հնարավորության մասին։ Ես գիտեի, Perl ծրագրավորման լեզուն(Perl4, այլ ոչ թե Perl5), բայց այն ինձ դուր չեկավ, քանի որ այն ունի խաղակիքների լեզվի հոտ։ Օբյեկտի վրա հիմնված լեզուն կարծես խոստումնալից էր։ Ես գիտեի Python: Բայց ինձ դուր չեկավ, քանի որ ես չէի կարծում, որ դա օբյեկտի վրա հիմնված լեզու էր։ — OO- ի առանձնահատկությունները կարծես ավելացան լեզվին։ Որպես լեզուների մոլագար և ՕՕ 15 տարվա երկրպագու, ես իսկապես ցանկանում էի իրական օբյեկտի վրա հիմնված, հեշտ օգտագործման սցենարական լեզու։ Ես փնտրում էի, բայց չկարողացա գտնել։ Ուստի որոշեցի ստեղծել։
Մատսումոտոն նմանեցնում է Ռուբիի պարզ դիզայնը, Lisp լեզվին, իր առանցքում, Smalltalk նման օբյեկտի համակարգով, բլոկներ, ոգեշնչված բարձրակարգ գործառույթներով և գործնական օգտակարությամբ նմանեցնում է Perl-ին: