[Catalyst] Why Catalyst instead of Ruby on Rails?
Philip Edelbrock
phil at edgedesign.us
Sat Nov 12 01:34:42 CET 2005
Sebastian Riedel wrote:
>
> Rails tries to be a end-to-end solution, shipping with a template and
> orm system, very tightly integrated.
> Catalyst is all about TIMTOWTDI, you decide which components to use
> (even multiple ones in a single app).
>
> Maybe there will be tighter integrated frameworks based on Catalyst in
> the future. :)
>
> Another point is extendability, Rails is actually just starting with
> plugins, Catalyst was built from the ground up with extendability in
> mind, you can change every single bit!
>
Yeah, Rails is pretty tight and sort-of preconfigured to handle the vast
majority of 'average' web tasks simply. The up-side is that there is
less to worry about, and less to do to get things done. The down-side
is that if you get outside the boundries of what they expect, you can
get into trouble. This leads to the 'drink the kool-aid' situation of
trading that simplicity for a potential lack of support to something
you'll need down the road. I've been rather surprised that we haven't
run into more roadblocks. The only serious one was the lack of support
to encrypt mail, but that's something the mail sub-system can handle
anyway (using procmail or something), or we could have written something
ourselves in Ruby (but don't really seem to need to).
The 'drink the kool-aid' also can be applied to the philosophies and
assumptions suggested by Sebastian. You have to trust that Dave and
David (the Rails guys) have done the correct thinking for you. This is
a rare case of the software tool actually needed to be used a
preconceived way to be largely effective. Most programmers are used to
being the philosophers, but you need to give that up for Rails and
perhaps to a degree for other frameworks including Catalyst.
Oh, a couple other little observations: There are some medium to largish
sites out there in Rails (the project I'm on could conceivably be the
largest to date when it launches?), but watch out for the argument that
(large site) Basecamp is written in Rails and therefore other large
sites can also be done in Rails. Basecamp wasn't written in Rails,
Rails was written from what came out of Basecamp.
If I were a noob to both Ruby and Perl and wanted a MVC framework for
typical web development, I'd tend to lean towards Rails (for good
reasons, I think). If I were needing more flexibility, more resources
to draw from, am familiar with Perl, and willing to do a little extra
leg work to have that flexibility, I'd go with Catalyst.
As a last note: I'm a little harsh on Rails in this thread. I'm having
a blast with Rails, and it's a well written package with a lot of great
thinking behind it. What I don't like is that it's over-sold to be the
end-all-be-all solution, as well as having a lot of marketing and hype
'synergy' behind it that fills it's mailling list with noobs.
Phil
More information about the Catalyst
mailing list