In this second article of a two-part series, we demonstrate TurboGears, another open source MVC-style Web application framework based on Python. This article shows how to use TurboGears to create a Web-based shopping application and concludes with a comparison between Turbogears and Django.
I’ve heard a lot of comments that Django vs Rails are basically Python/Ruby equivalents (with some differences of course). But in reading the comparison between TurboGears and Django, it seems to me that TurboGears and Rails are more similar than Django and Rails are. (I haven’t used TG or Django, though I do use Rails. Django looked interesting but doesn’t seem to have as much momentum behind it as Rails – which doesn’t mean it’s worse, but more momentum and usage does generally translate into better support, more extensions/plugins, and most importantly, more documentation. But TG seems very promising and on par with Rails for those who prefer Python over Ruby.)
Here’s an interesting comparison between TG and Rails:
http://wildmanshore.blogspot.com/2006/01/turbogears-vs-rails.html“&…
And a video presentation comparing several web frameworks:
http://programming.reddit.com/info/2xrf/comments
Right now I’m doing a lot of work in Python because of my job (not web-related though), and I’ve seen the one video about TurboGears on their website, which absolutely blew me away.
I’ve been seriously thinking about setting up a test server at the house and trying to get the hang of TurboGears. Anyone out there actually working with it?
I just finished up a medium sized TG project for my company. Initial development was great, although digging around for documentation sucked a bit. Support has been a giant pain in the rear.
I doubt I would use it again.
I’ve tried both TurboGears and Django, and neither of them comes close to Pylons, which seems to be a generation ahead of these frameworks. The most popular website currently powered by Pylons is bittorrent.com
Pylons started as a port of Mason, the Perl framework used in fly by night sites such as amazon.com and del.icio.us, but is now so far ahead of Mason that no meaningful comparison can be made now between the two, in no small part thanks to the fact it is Python and not Perl.
http://www.pylonshq.com/
Pylons > TurboGears > Django
Thanks. Pylons looks nice, but i’ll wait for 0.9 (see http://tinyurl.com/g5zb7 (google groups)), which looks a lot cleaner.
Turbogears is good. I’ve done a project in both the 0.8 and 0.9a series.
Django is aimed at CMS and by all accounts, does a great job of that. Turbogears is a more generalized framework, which is what attracted me to it in the first place.
I like Turbogears, but I have a few problems with it. It’s way underdocumented. The developers are busy writing code and the documentation has seriously suffered. There is one book in the works which is scheduled for release on Oct 27.
I also feel like it is overdesigned in some ways. The turbogears ‘widgets’ feel like they are reinventing the html spec in python. I spent more time fighting to get them to do what I wanted than I would have spent writing the html myself.
Although I did not know Ruby, I recently decided to try Ruby on Rails. And although TG still does some things better, overall I far prefer Rails. It is more straightforward and hence, flexible. It’s at 1.1, whereas TG hasn’t hit 1.0 beta yet.
And after TG does hit 1.0, there are still major things to be addressed in 1.1. Deployment is not very flexible, especially for multiple apps. The ORM is limited and sees little or no continued development. These problems are going to be fixed. But it is going to require ripping out the ORM (SQLObject) and application server (Cherrypy) and replacing them with SQLAlchemy and Rhubarb Tart. Ouch! (Especially since TG was supposed to have been ‘best of breed’ tools coming together into one megaframework.)
Plus it is a synthesis of existing parts and, I think, feels a bit Frankensteinish compared to Rails.
Plus there is a wealth of documentation and books for Rails. (“Agile Web Development With Rails” is excellent, and a new version is almost ready. I bought the beta version as pdf.)
This all probably sounds like I don’t like TG. I actually do. But I’d give it at least a year for stabilization, polish, and DOCUMENTATION, DOCUMENTATION, DOCUMENTATION!
Edited 2006-07-13 22:48
“Pylons > TurboGears > Django”
and
Quixote > Pylons > …
Well, at least for me.