FRIEND: Hey Simone, I want to start learning Rails.
ME: Really?
FRIEND: You know, I have been working in PHP and Symfony for a while and now I want to try something new.
ME: That's cool.
FRIEND: Could you help me studying Rails?
ME: Sure. But if you really want to learn Rails, you need to start from Ruby.
FRIEND: I worked with PHP and several other languages. Is Ruby really that difficult?
ME: Learning the Ruby syntax is not that difficult. Thinking like a Rubyist is the real challenge. If you really want to appreciate Ruby, you must understand the Ruby ecosystem and the philosophy behind the language.
FRIEND: Ok. Could you teach me that?
ME: I can start giving you some directions, then you'll have to start working on it.
ME: I'm going to prepare a brief introduction to Ruby. I'll try to extract the most important features of the language, keeping an eye on Rails since that is your ultimate goal.
FRIEND: Cool. How long it will take.
ME: Let's schedule one full day. I'll show you the presentation and we'll start digging into Ruby. At the end, we'll try to summarize everything by giving a look at Rack and creating a small MVC application using the awesome Sinatra framework. It is not Rails, but it's definitely a good starting point. We can't concentrate too much concepts into a single session.
FRIEND: I agree.
FRIEND: See you on Saturday, I can't wait to start playing with Ruby.
This is that presentation. Enjoy Ruby!
This is a ShowOff presentation (https://github.com/schacon/showoff)
If you want to see it, you need to install showoff
and all its dependencies. The most simple way is to use bundler
.
$ gem install bundler
Clone the project and install the dependencies.
$ git clone https://github.com/weppos/ruby-4-rails.showoff.git
$ cd ruby-4-rails.showoff
$ bundle install
Then run showoff
it in this directory
$ showoff serve
Now you should be able to go to http://localhost:9090 to view the presentation.
Ruby 4 Rails is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License.