From: Matt Todd Date: 2006-08-28T10:06:46+09:00 Subject: Re: Pros/Cons of Turbogears/Rails? > Looks like you mixing comparisons. > > > Ruby: > > + More mature system. More stable? More features? > > uh, no, Python predates Ruby by a good bit > Rails might be "older" than Turbogears but it still JUST went 1.0 > officially. > It can't be called "mature' by any defintition. Python itself predates Ruby only three years. > > + Much better documented. This is a biggie. > > Rails has no documentation, period. The authors acknowledge this > openly. Rails has plenty of documentation, it's just that the quality of the API isn't as good as everyone wishes. That's actively being worked on, with funds raised by the Caboose folks, and plenty of community participation. However, there are plenty of materials on Rails itself, including Agile Web Development with Rails from the Pragmatic Programmers which is itself an awesome resource. > > I was initially leaning towards Rails due to maturity, > > but the most recent version of TurboGears seem to have > > fixed a lot of the "ad hoc" feeling I got from previous > > versions. But I'm still very much up in the air. > > again, Ruby can't be considered 'mature' by any definition. As far as speed is concerned, I know Ruby isn't the fastest out there, but is not slow. That is, you can tweak things to make Rails run really fast. There is plenty out there documenting how to set up Mongrel with Apache2.2 and mod_proxy_loader or Pound or whatever the hell you want. Basically: you can make Rails very fast. And as far as SQLObject, the ActiveRecord library is very good, and produces the SQL for you. It works with a number of RDBMSes, including SQLite, MySQL, and, my favorite, PostgreSQL. ActiveRecord is also connected to Migrations which allows you to handle revisions in the schema, and actually generating/modifying your databases without SQL at all. Also, ActiveRecord has the distinct quality of not requiring you to specify what columns the table has: it finds this out for you. As far as templating goes, I've found that the _concept_ of Rails' templating system was a bit jarring, but in practice it's actually quite beautiful and easily understood. I think it's so easy a design team wouldn't have any problems picking it up (if they can function logically). For me, the only reason to use the Python-based TurboGears would be a specific Python library. And, given that, I'd probably go with Django. Cheers, M.T.