Ruby on Rails - What is that? |
|||||||
| created: 01.18.2008 | updated: 04.26.2009 |
|
|||||
|
Chances are you have many people have actually used a project or a program that uses rails without knowing it. For instance, those who are members of Linkedin.com, a professional oriented social networking site; or those who use their Linden dollars to trade on the stock exchange belonging to the utopian world called Second Life. Well, ruby on rails is an open source web application framework that is prefabricated to assist those who intend to build their database-driven web sites. It’s called “open source” application because one is not required to have a licence to use it, unlike many other proprietary programs such as Windows OS. It is like a skeleton upon which web builders can then start moulding in the shape that they want. Ruby on Rails is also referred to as RoR, or simply Rails. The word Ruby denotes the programming language that is credited to Yukihiro Matsumoto, a Japanese computer scientist who first introduced it to the world in 1995. With Rails, a developer can build application much faster and more robustly than when using other languages. And any database-driven application that you may want to fill with some popular plug-ins like Flickr, a photo sharing site owned by Yahoo!, or Google Maps can be done quite easily. There is little doubt that Rails has managed to recruit a large number of followers, which is evidenced by a large number of programmers and system managers who have gone gaga over Rails. Sometime in 2004, a young Danish programmer released his first version of Rails. That first application was built with a new framework was a web-based project tool management for 37Signals, a company belonging to the founder. The tool was referred to as Basecamp. Its rising popularity is perhaps attributable to the fact that the framework is broad enough to support applications of any size and at the same time being very user friendly. Still there are those who feel that the application is unfit for large developments. But the fact that a site such as Linkein.com can use the application may have something to do with its fitness for purpose. Admittedly, Ruby is still a relatively new to the web development space compared to other languages. Further, Rails came to the market at a time when PHP was gaining popularity as a benchmark for setting up small to medium sized applications. And since rails is an obvious threat to some of the other established applications, attacks on its effectiveness can perhaps be expected, though those familiar with it strongly feel that such attacks are far from being credible. Rails share some features with struts, CakePHP and webworks in that they use a Model/View/Controller design paradigm which is an architectural design jargon used in software engineering industry. The people who first embraced Rails despite the fact that they were more conversant with other languages other than Ruby were mostly drawn from Java or PHP. While the defectors from PHP were lured Rails because of its structure as well as to spend less time customising standards for each and every application, the Java drifters were attracted by what they saw as the friction of the then existing java frameworks and their components. One of the mantras of rails is Don’t Repeat yourself or DRY (the other one being Convection over Configuration) and thus a developer only had to do something once. Rails saved developers the angst by applying default standards to a new project and then combining all the subcomponents to come up with a standardised interface to the developer. Rails have several components that include Active Record, Action Pack, Active Resource, Active Support and Active Mailer. These are basically libraries which the developers use and they need not specify database columns names in class definitions, for instance, because all these are captured in Active Record and so Ruby will simply retrieve it for the developer. There are hiccups though, and it is relatively costly to find a good rails host worth of the name. Most hosting companies are so much used to PHP and Perl and may find Rails unfamiliar. There are cases of servers crashing because of being loaded too much with Rails custom installs. Traditional shared hosting companies usually pull off Apache/FastCGI stack and hope that few clients use the bandwidth that they are actually entitled to use. Thus if they host Rails, which operates on a demanding and dedicated environment the servers would be overloaded, and perhaps crash, annoying many disappointed customers. Thus a PHP server is ill suited for the purpose. When choosing hosting options, one considers several factors, chief among them the number of hits per day. For 2,500-5000 hits a day you will need a dedicated server, while anything below you might find shared server more cost effective. The best way to find a good host for RoR is to read hosting reviews and decide for yourself and at the same time educate yourself about which host is right for you. |


