I ran across the PyWebOff today at work.
PyWebOff is a compare-and-contrast exercise to evaluate the strengths and weaknesses of some of the major Python web application frameworks.
They’re using CherryPy, Quixote, Twisted, WebWare and Zope in effort to build the same web application. I’m sure this isn’t a huge topic of conversation in your everday lives, but is in mine. I work with Quixote, WebWare and Zope (or any one of them) pretty much constantly. (See Quixote v. WebWare: Part I, Part II.)
Nerd stuff follows.
He likes CherryPy. It sounds neat to me, but I probably won’t pursue it at all… given the other three goddamned application servers I have to deal with.
He gives Quixote + Durus some props, but they’re obscure in places. I agree w/ the obscurity issue for new users, but—objectively—I’d have to say Quixote does a better job than WebWare. I’ll be learning about/working with Durus soon (yay?)
He’s having problems with Twisted. I have no interest in Twisted whatsoever.
WebWare gets a cool reception from him, but nothing glaring. He’s not all that impressed, and I think that may have something to do with jumping straight from WebKit to MiddleKit. I’ve never used MiddleKit (well, never got it working), but WebKit is pretty kick-ass in my opinion. By the way, my instructions for installing WebWare on OS X are friggin’ immaculate. I tested them against OS X Server 10.3.8 this week, including the bootstrap, and… basically I kick ass. :)
He hasn’t posted anything about Zope yet. Zope is great at what it does; I’ve been using it for years. But, as it’s been under development for so long, its creators and developers are taking it in a direction closer-and-closer to addressing an “enterprise” issue: content management. Like I said, it’s great with the integrated database (ZODB) and everything… but not necessarily the best Python appserver solution for building ground-up, dynamic websites. Then again, it’s easier to find a commercial Zope webhosting service than it is to find one that allows you to build your own shit from source and dick about with httpd.conf.
It’ll be interesting to learn what this guy concludes is the “best” framework for his particular target application. In my opinion, the three I’ve worked with all kick ass in their own way, with their own “personalities”, if you will.