# Ruby Programming Tutorials : About Ruby In A Nutshell

Ruby is a programming language created by someone named Yukihiro Matsumoto, as known as 'Matz'.  Matz is a computer scientist from Japan who is a member of the compiler and programming language laboratory called *Ikuo Nakata Research Lab*. 

Ruby was first released/published on December 21, 1995. Matz made this programming language because according to him there is no programming language that really satisfies him.  After working for so long, finally the creation of this ruby ​​language is complete.

Here is what Matz said about ruby :

>I knew many languages before I created Ruby, but I was never fully satisfied with them. They were uglier, tougher, more complex, or more simple than I expected. I wanted to create my own language that satisfied me, as a programmer. I knew a lot about the language’s target audience: myself. To my surprise, many programmers all over the world feel very much like I do. They feel happy when they discover and program in Ruby. 

Actually, what makes ruby ​​so satisfying?  (This is my personal opinion) 
1. Ruby's syntax is very simple.  The simplicity of its syntax is similar to that of Python.  Of course this is a very good thing. 
2. Ruby is an object-oriented programming language.  When compared to other programming languages, ruby ​​is the 'most object-oriented' language.  In fact, mathematical operations such as +, - and so on are also methods in the Ruby language. 
3. Again, ruby's syntax is very, very, very simple.  Even in some cases we don't need to use brackets like in python.
4. Ruby has a web framework (namely Ruby On Rails) that is used by many people around the world. 
5. There are many ways to process strings (I'll explain this later) 

The things above are enough reasons for me to learn ruby.


# What You Will Learn Here 

If you've ever learned java, C, C++, and most other languages, you're probably going to have a hard time to print text on the screen. 

 The following is an example program to display `Hello World` in various programming languages. 

```java
class HelloWorld {
    public static void main(String[] args) {
        System.out.println("Hello, World!");
     }
}
``` 

You will find the same complexity in C++:
```c++
#include <iostream>
int main() {
    std::cout << "Hello World!";
    return 0;
}
``` 

Unlike the 2 languages ​​above, Python is easier to understand.  Here's an example: 
```python
print("Hello World")
``` 

Okay, easy enough.  However, there is an even easier language.  Yep, that's Ruby.  Here is an example: 
```ruby
puts "Hello World"
``` 

Do you see that? Ruby doesn't require parentheses, which in Python, parentheses are mandatory. And this applies not only to the print command, but to almost every line of Ruby code. 

Then, to ask for input, ruby ​​only needs the code `gets`, even without the brackets. 
```
answer = gets 
#or
answer = gets()
```

Jika pada python kita perlu method sqrt(x) untuk menghitung akar kuadrat dari bilangan, Maka pada Ruby kita tidak perlu melakukan itu. Kita bisa menghitung akar kuadrat bilangan hanya dengan menghitung pangkat setengah dari bilangan tersebut. 

If in python we need the sqrt(x) method to calculate the square root of a number, then in Ruby we don't need to do that.  We can calculate the square root of a number simply by calculating the power of a half of the number.

Interesting, right? see you in the next article
