The goal of Ruby is to make programmers happy. I started out to make a programming language that would make me happy, and as a side effect it’s made many, many programmers happy.
I hope to see Ruby help every programmer in the world to be productive, and to enjoy programming, and to be happy. That is the primary purpose of Ruby language.
Ruby is a dynamic object-oriented, general-purpose programming language. It was designed and developed in the mid-1990s by Yukihiro "Matz" Matsumoto in Japan. Matsumoto, often referred to as "Matz", first developed the idea for Ruby in the early 1990s. From Matz's post to the ruby-talk mailing list in 1999:
I was talking with my colleague about the possibility of an object-oriented scripting language. I knew Perl (Perl4, not Perl5), but I didn't like it really, because it had the smell of a toy language (it still has). The object-oriented language seemed very promising. I knew Python then. But I didn't like it, because I didn't think it was a true object-oriented language — OO features appeared to be add-on to the language. As a language maniac and OO fan for 15 years, I really wanted a genuine object-oriented, easy-to-use scripting language. I looked for but couldn't find one. So I decided to make it.
Matz designed Ruby in order to make programmers happy. He developed a programming language that would be simple to use, elegant to write, but capable of building vastly complex things. A few of his own thoughts on Ruby sum it up best:
Make Ruby natural, not simple, in a way that mirrors life.
Ruby is simple in appearance, but is very complex inside, just like our human body
The Ruby community is characterized by respect for one another and a love of programming. Rubyists have a saying: "Matz is nice, so we are nice", or MINSWAN. Matz made a nice language to please programmers. Matz is nice to programmers, so we are nice to each other. The Learn community takes this principle to heart. We respect one another and the hard work that we are doing to learn how to code. We support one another to overcome obstacles to our learning. When another Learner asks a question, we respond respectfully and with a positive attitude. We don't judge or criticize each other. When we provide feedback to each other on the work that we're doing, it is consensual, actionable, specific, and kind. Learning to code, which you're doing here and will continue to do over the entire course of your programming life, is hard. We don't want to make it even harder on each other by failing to adhere to the MINSWAN principle. Remember, we are all on a journey to learn to love to code together.
You can read more about why we teach ruby.
View MINSWAN: Matz and the Ruby Language on Learn.co and start learning to code for free.