A couple of weeks ago I decided to learn Ruby to take advantage from the most acclaimed framework of last years: Ruby on Rails. My background of web application developer was PHP-only, so I didn’t know any framework such as Cake or Zend. In the last months every time I started a new project I felt afraid because my code used to get dirty after some hundreds of lines, probably because mere PHP and MVC-pattern were no best friends. When I was going to start to learn Cake, I have been stopped: “Learn Rails!”, said a voice in my head. And after only a week I can say that I have to buy it [the voice, E.d] a beer, but maybe it’s not enought.
From a developer with a “relatively deep” Java and C-related background, I love Ruby because it’s strongly typed and meanwhile there’s no static type checking. I love its light syntax and every character that I don’t type on my keyboard against to other more verbose languages like Java or Obj-C. I have not yet played deeply with modules and mixin to realize multiple inheritance, but I will.
But talking about Rails, I’ve to admit: Ruby on Rails is the state of art of all existing frameworks. The speed and smartness to have stuff working is amazing. I think there are only few others languages/frameworks to realize the real AGILE software developing as you can do with Rails. Every line of code you’ll write, it’s predisposed to be tested (with unit, functional and integration tests) with automatic templates and without need of plugins or other stuff. The DRY (Don’t Repeat Yourself) logic is taked to the extreme (maybe too much, the amount of total files is huge!) and every piece of the puzzle fits perfectly.
Coding and coding, I’m amazed every day more of how this framework works and how fast I can build a web application. The road to be fluent in Ruby is long, but I’m excited to learn all can I do.
And as Sam Ruby said:
Consider spending less time talking and more prototyping