Rails vs. TurboGear
October 21, 2005 § Leave a comment
about DARC, they all told me I should check out TurboGears as an alternative to Ruby on
Rails. I don’t really care one way or the other — the “R” in DARC
could stand for “REST” as well as “Rails” — but here’s my
take:
“There’s more ‘there’ in
TurboGears than in Rails.”
But, that
may not be a good thing. Click [Read More] for more detailed thoughts from an
admittedly superficial perspective (after watching the 20min wiki
video).
wrong problem. Use AHAH
(aka JAH)
instead…
* Kid : This I like. Just do the pieces that are
important: “for, if, variables”
* CherryPy: Half-right. Good: query-based. Bad:
method-oriented ala XML-RPC, not URI-based like REST. But perhaps that’s easy to
fix if I understand it better.
* SQLObject: I don’t know. Maybe this is better as
it gives your more control, but I feel like I have to understand SQL to use it
properly.
In short, Rails preserves the
illusion better, and seems a better semantic match to the sort of ad hoc RESTy
things i want to do. However, that doesn’t mean it is
really
better; maybe the illusion will break down very quickly as I do more advanced
stuff. On the other hand, if Rails attracts enough high-clue users, I bet
they’ll be able to figure out how to make it robust over time. That depends
more on governance of the codebase than technical factors,
though.
However, I dispute the general
statement that “Rails isn’t innovative.” Well, sure, it isn’t “new” anymore
than the iPod is a “new” way to do digital music. But that misses the point —
innovation isn’t about about what inventors do, it is about what consumers
discover *they* can do. And that’s the innovation I see here: the experience of
Rails is much more iPod-like — the technology fades into the background, so you
can make rapid progress (at least up to a point) without having to actually
understand the theory. Well, except Ruby
theory…
I really just want a RESTkit
that does all the CRUD stuff from a database via XHTML Basic Microformats, and I
handle everything else via AHAH and CSS. I suspect that this would be easier to
create in Rails, but easier to use in TurboGear (largely due to Python’s greater
approachability). Ideally someone will do both so we can find out. Or maybe I
just need to learn Django …
Leave a Reply