[nycbug-talk] Django Web Framework

michael lists at genoverly.net
Mon Jul 2 20:15:39 EDT 2007


On Mon, 2 Jul 2007 15:45:18 -0700 (PDT)
"Peter Wright" <pete at nomadlogic.org> wrote:

> the department in question does not see the need to start training on
> yet another scripting language since they already standardized on
> python for pretty much everything else.  

While this is a little off topic for this list.. I'll stab at it.

First.. what happened to good 'ol Perl?  [grin]

If Python is the in house standard and web framework is the question..
Django, Turbogears, and Pylons are *some* of the top choices.  There is
a *LOT* of discussion about web frameworks in the python community.  You
will also find the inevitable comparison to Ruby on Rails (mixed
opinions) and PHP (negative opinions).

When deciding on python frameworks, there is some discussion among the
camps along the lines of: "Full-stack vs. glue vs. coupling".  Make sure
you read up on the opinions on each before deciding.

Also.. reading up on WSGI, python's "Web Server Gateway Interface" is
suggested.

And.. there is a lot of flexibility when running a python web.  

You can build it as an idependent entity, possibly listening on
127.0.0.1:5000 (or whatever port you choose) and have Apache proxypass
requests.  This is REALLY flexible when scaling. Apache can do what
it is good at: handling traffic.  One could see redundant Apaches,
passing to redundant webapp servers behind the firewall.. with
potentially redundant database servers.

Or you could deploy *within* each Apache process with any of the CGI
family (SCGI, FCGI, etc)

Of course you could remove Apache all together and go lighty!

While I am no expert (bob ipolito and ike can probably claim that) on
Python, I looked at all of the frameworks some time ago.  Each has a
story and a philosphy that you may like or dislike.

The common description of Django is that because of its roots in the
newpaper business, it is suited for content delivery.  It also is know
to cater to newbies, has strong documentation,  and has attracted a
large following. Oh, python creator, GvR, has blessed the project.

But the buzz and enthusiasm has been whithering with some. Opponents
dislike the restrictive feel of the full-stack approach.. and disagree
with some of the core decisions made by the project.  You can read all
everyone's opinion when you do research.  

Turbogears is in a rewrite and will probably be going in a similar
direction as Pylons.  There have been unconfirmed whispers of a merger,
but I will not speculate, rather, leave it to the reader to decide.

Pylons, while newer, is a vibrant project and building nicely.  I like
their BSD-ish approach.. a set of tools that does each job well and
works nicely together. These are loosely coupled so you can swap them
out easily. The 'defaults' where chosen by cherry picking what they
deemed to be the best of breed in each area.  If you do not agree..
swap.  The documentation is behind Django, but it is still good.  The
community is active with mailing lists and a crowd on IRC.


My choice... Pylons.


Some quick links.. but not nearly all of them.

Python web development and frameworks in 2007:
http://jesusphreak.infogami.com/blog/vrp1

Turbogears to be based on Pylons:
http://compoundthinking.com/blog/

Comparison of python web frameworks (watch the email wrapping)
http://nxsy.org/blog/archives/2007/06/19/
unscientific-and-biased-comparison-of-django-pylons-and-turbogears

Comparisons to Pylons (by Pylons):
http://wiki.pylonshq.com/display/pylonscookbook/Concepts+of+Pylons

WSGI
http://www.wsgi.org/wsgi

-- 

michael





More information about the talk mailing list