WSGI: Python Web Development's Howard Roark

by Noah Gift

The more I write WSGI code, and read WSGI posts like this one on the Repoze blog, the more I wonder if Phillip Eby didn't invent Python's own Howard Roark in WSGI, when he wrote PEP 333.

Zope Corporation was founded in 1995, according to the, about Zope,page on their website. This means there are a heck of a lot of Python programmers who know a heck of a lot about Python Web Development. If you look at say, Ruby on Rails, which deserves a great deal of respect for what it has accomplished, you will notice it was released to the public in 2004, there is about a decade of experience difference there. In terms of computer science, this is an eternity.

Python now has mod_wsgi, a Zope TM that works inside of WSGI with any other WSGI application, people that spend every waking minute developing an ORM, and new hybrid, WSGI specific, Python web frameworks like Pylons,and,Grok. Not to mention incredibly mature full web applications, like Plone 3.0. Let's also not forget Deliverance, which makes "skinning" multiple WSGI applications, and/or products like Plone trivial. In plain english, all of this stuff works together! As Ian Bicking explains, it is just a bunch of tubes. At this EXACT moment, people have completed the rest of the tubes, that connect the rest of the technologies in Python!

Python Web development reminds me of a very large battleship, which was slowly turning toward the shore, all the while loading the guns with large shells. Well, the ship has turned, the guns are loaded, and now, it is time to see what Python web development can really do in 2008. The perceived weakness of many different frameworks in Python, has now turned into a strength with WSGI, and these host of other technologies all working in harmony. Plus, lets not forget this is Python, perhaps, the most human readable language in existence.

Python has the potential to become the dominant Web Development language in the next couple of years, due to its massive, yet growing, pool of experienced developers, WSGI, the incredible, battle tested Standard Library, tested and proven scalability, with a plethora of concurrency solutions, readability, and outstanding leadership of the core developers. I suppose, armed with knowledge of these new developments, I wonder why anyone would not use Python Web Development for projects in the next two years?

Update: Here is the PyAtl/Repoze Talk, which discusses WSGI/Repoze/Deliverance.

Update: To see why Plone is such a big deal, watch this link, Better Web Application Development, and why having Plone combined with WSGI is almost an unfair advantage for Python


carlos borra
2007-12-21 08:24:43
> I wonder why anyone would not use Python Web Development for projects in the next two years?

Because of "zope sucks" karma.

2007-12-21 12:02:10
My only problem with python web development right now is the difficulty in using comet.
Titus Brown
2007-12-21 15:13:52
It doesn't do much good to have all that power if you can't figure out how to get started. Difficulty of entry and difficulty of WSGI comprehension is a BIG problem. More tutorials, screencasts, and documentation needed; less pontificating :)
Amr Malik
2007-12-21 16:03:36
Thanks to your comment about Howard Roark, I'm watching The Fountainhead on Google Video! gotta love teh internets!
Phillip J. Eby
2007-12-21 16:54:30
Er, what is it that's like Roark, exactly? Offhand, I would guess that Roark would be ashamed of WSGI 1's over-emphasis on backward compatibility. ;-)
Samori Gorse
2007-12-21 17:12:45
@Jack : Do you have a problem with Twisted?
2007-12-22 09:41:24
Titus/I agree, (Note to self, stop work on 97 page diatribe on WSGI), I have a video of the Repoze talk that I plan to digitize today. For screencasts, it would be great to have a bunch of small 5 minute screencasts on WSGI workflows, from products like Plone, to very basic, pedantic, demonstrations like WSGI pickle applications, such as AGlue.


Rational: WSGI is a logical way to express the Python axiom, "There should be one-- and preferably only one --obvious way to do it."

High Self-Esteem: WSGI is a PEP, you can't get more selfish, and confident than that.

Agnostic: WSGI doesn't care what your religion is...i.e. framework, nor would he ever join one.

Blowing up a Shoddy Government Housing Project: WSGI does the equivalent by blowing up the status quo.

Romantic Realism: ideals are achievable, in other words, Python Web Development can be better than what it is today.

Working in a Quarry: WSGI would rather work in a quarry, than, allow crappy standards.

Architect: WSGI is an architect for Python Web Development, i.e. "planning, designing, modeling and overseeing of a building's construction".

Finally, I agree, WSGI 1, was perhaps ashamed of his collectivisim, I wonder if WSGI 2 will be closer to his true nature.

Jim Baker
2007-12-22 14:37:29
Not to mention that WSGI works on Jython in any J2EE-compliant servlet container with Alan Kennedy's modjy ( Of course, that means getting your Python code working on Jython, but there are continuing efforts there for major frameworks. And with Jython, you have all of the Java platform accessible. Sounds like world domination is next for WSGI... ;)