Ruby on Rails - What is that?
Information
Technology lingo
often gets an average person confused. And those in the know
don’t help
either, for they keep going on about some of these terms as if they are
commonly used adverb. Take the expression Ruby on Rails. There are
quite a number of people who would confess as never having heard about
it. So what is it and what is its purpose?
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.
|