Ian Bicking: the old part of his blog

Re: Respecting The Programmer

When doing a real-world project with Zope, I found out that the only programmer in the (very good) team who got actual work done was the programmer who had read through the whole source tree of Zope, and supporting integration modules such as LDAP, Oracle etc etc. This was because unless you really get value from doing all your work from scratch and not reusing someone else's application servers and other components, you had to use modules coded by amateurs in just such a bad manner you suggest in this article. No Javadoc, no interfaces, no decent documentation. On larger projects where you don't code everything yourself, Python lacks so many of the advantages of other systems that it's not even funny. Never touching the stuff again, except when doing something it's actually suited for, system administration scripts.
Comment on Respecting The Programmer
by A. Mike


Zope is not the example I would use to show off what can be done with Python. It's always been a disappointment to me, and many other people in the Python community. Though honestly, that has a lot to do with the fact it has been seen as The Way To Do The Web in Python; in part because it was over-sold by early adopters, and because there's no single compelling alternative. Zope just isn't a good platform (at all) for doing traditional database-backed websites, and it's going to be disappointing to use it that way.

But, really, it should be a lesson. Python can be hard to understand like anything else. It can be misdesigned like anything else. In the case of Zope, I think it's a matter of having been too ambitious. It's a terrible shame that an example of those flaws is also the most popular Python web programming platform. But there are alternatives.

# Ian Bicking