John Nagle <[EMAIL PROTECTED]> writes: > My main concern is with glue code to major packages. The connections > to OpenSSL, MySQL, and Apache (i.e. mod_python) all exist, but have major > weaknesses. If you're doing web applications, those are standard pieces > which need to work right. There's a tendency to treat those as abandonware > and re-implement them as event-driven systems in Twisted. Yet the > main packages aren't seriously broken. It's just that the learning curve > to make a small fix to any of them is substantial, so nobody new takes > on the problem.
There is an attitude widespread in the Python community, maybe inherited from Extreme Programming, that when writing some subsystem it's enough to implement just enough functionality to satisfy the application's immediate needs. Then if the application needs more functionality from the subsystem later, go back and add it. That's fairly reasonable when the application and subsystem are being done by the same people and there's not such a learning curve. But it's unwise for libraries. For all Java's ugliness, when the Java library developers want to implement some protocol like SSL, they take the specification for the protocol and they implement it completely. Python's library modules are very often missing stuff, as you've pointed out. In the specific examples of OpenSSL, MySQL, and Apache, the modules involved aren't even part of the Python stdlib, the way JSSE and JDBC are part of the Java stdlib (I guess that doesn't apply to Tomcat though). -- http://mail.python.org/mailman/listinfo/python-list