I don’t know if RoR is any better. I have heard that RoR is good for
getting simple CRUD apps up and running. But, I have also heard that
everything in RoR is “magic” i.e. the developer is not really
connected to what is going on beneath the covers. I’m not sure I like
There are many things you’ll “hear” about Rails, as with any web
framework that’s worth anything. Some may have a grain of truth, but
most are just rumors and hearsay.
Is it true that RoR is good for simple CRUD apps? Sure. But, the reason
it’s good for simple CRUD apps is that it’s good for building web apps
Ruby is a general purpose language and Rails is a set of classes and
tools build using the Ruby language. Ruby like any general purpose
language can be used to build pretty much anything your mind can
conceive. Rails simply imposes a set of conventions that help keep your
code clean and organized in order to provide a less fragile application
As far as the developer not being “connected to what is going on beneath
the covers.” The best frameworks are the ones designed to allow a
developer to concentrate on what makes their application unique. As for
me, I care very little about how my data gets translated from objects
and pushed into a database. I want that part to be as natural and simple
as possible. Nearly all application need to do that in some fashion and
is certainly not unique.
My users are going to care even less about how the data gets stored and
retrieved. If I can have a framework give me @people =
Person.find_by_last_name(“Walker”) and give me some Person objects for
anyone with the last name of “Walker” I really could care less about how
that happens under the covers. I figure smarter people than me have
figured out how to make that work well. And, this also applies to the
rest of the framework such as routing and view templates, etc.
Is RoR a framework, or a code generator?
Rails is definitely a framework. More specifically it is a “full-stack
framework.” Meaning it contains everything from the database persistence
and relational mapping to the model objects up to the presentation in
the form of views.
The fact that it has some build-in code generators is just one very
small, but important, aspect of the framework.