del.icio.us Reddit Digg Facebook Technorati Google StumbleUpon Yahoo Diigo Wink

I am fairly competent in PHP but new to Ruby. Like everyone else in the software community, I have been hearing a lot about Ruby and Ruby on Rails but never had given it a go. Today, I decided to get my hands dirty and do a Ruby on Rails project. Followed the tutorial and as advertized, brought up a simple task manager application in about 20 minutes on Ruby on Rails. Most of it required just setting up the database and letting Rails do its magic. I did change a few forms and classes to specify inter-relationships between tables.

However, as soon as I had to start doing more substantial changes, I started to hit the limitation of my knowledge of Ruby. Though I did quickly go through the Ruby manual, I have not programmed extensively in the language.

So, I started to poke around the net for what is available in PHP. I have used the Zend framework but I wanted to find something like Rails. I hit two, PHPOnTrax and Akelos. PHPOnTrax is in version 0.4 and Akelos on 0.7. From the looks of it, Akelos seemed to me to be more mature.

I reimplemented the same tasks application in Akelos. I was very pleasantly surprised. I brought up the tasks implementation in about the same time in Akelos. Even better was that to make further changes was so much easier. Since I am fluent in PHP, reading the code, reading the documentation and modifying the files generated was so much easier and so much faster for me.

My take away was that the value is in the framework and not in the language. Admittedly, Ruby is a more “pure” language in Object-Oriented-ness than PHP but it is just another language. And, by no means, am I saying that a developer should not keep learning new languages. Ruby certainly inspired Ruby-on-Rails and it provided a clean MVC implementation with minimal code and Akelos has borrowed a lot from it. However, for a developer, a good framework on the language in which you have mastery will be more productive than a framwork on a new language. No matter how good the framework, sooner or later you will need to modify the files generated. And then, your mastered language will give you a huge advantage.

del.icio.us Reddit Digg Facebook Technorati Google StumbleUpon Yahoo Diigo Wink