Ruby is a powerful and accessible programming language. It's a great place to start a development career and a wonderful additional language to learn if you already have coding experience!
I wanted to minimize my frustration during programming, so I want to minimize my effort in programming. That was my primary goal in designing Ruby. I want to have fun in programming myself.
- Yukihiro Matsumoto ("Matz"), inventer of Ruby
What is Ruby, then?
Ruby is a backend programming language created in 1993 by Yukihiro Matsumoto, whose quote you've seen above. He's also been quoted as saying Ruby was designed to maximize programmer happiness; delightful, no?
It can be used to create applications alone, or it can be used as part of tools like Sinatra or Ruby on Rails.
Another important aspect of Ruby is that it's object-oriented. We'll explore this concept later in this course in detail, and for now, you can bear in mind that object-oriented languages allow a greater range of programming flexibility.
Let's look at some basic Ruby code; no need to understand its inner workings for now! This exercise is just to show you the readability of Ruby, which is another of its defining traits relative to other software languages.
Read this code snippet from left to right to see if you can figure out what it does:
5.times do print "Ruby is great! " end
This makes it sound like "Ruby is great!" will be printed 5 times, and that's exactly what would happen!
Here's that one line's output:
Ruby is great! Ruby is great! Ruby is great! Ruby is great! Ruby is great!
Ruby is uniquely readable; no semicolons, brackets, and parentheses all over the place.
The Ruby community is particularly transparent and very involved in the world of open-source software. This means many projects are shared and built collaboratively on code sharing platforms like GitHub.
There are also many cool Ruby conferences and meetups, and you should see if there are any in your city or town.
No matter where you are in the world, you can check out Ruby events in your area here.
Ruby on Rails
A common question from Ruby beginners is, "What's the difference between Ruby and Ruby on Rails?"
Ruby on Rails is a framework that allows quick construction of dynamic web applications. Often called Rails for short, it powers many websites large and small, like Airbnb, Kickstarter, and more!
Ruby is the programming language itself that powers the Ruby on Rails framework.
Imagine a house that's under construction. Rails is the structural skeleton of the house, and Ruby is the brick that fills in the structure. 🏠
Understanding Ruby is crucial in order to understand Rails, so if your ultimate goal is to become a Rails developer, you're in the right place! Starting with basic Ruby will make understanding Rails will be much easier.
Go ahead and install Ruby, as well as Ruby on Rails while you're at it! We won't use Rails in this course, but at least you'll be set up with it for future use.
Instructions are here: http://guides.railsgirls.com/install