Guido van Rossum und Web-Frameworks

Guido van Rossum fragt nach Webframeworks - an sich nix spannendes. Er hat halt bisher damit nix gemacht und will sich mal informieren. Stellt einige Behauptungen auf, die nicht ganz stimmen (z.B. das Djangos Templatesprache ähnlich zu PHP wäre), ist aber bei der wohl vorliegenden Kürze des "anguckens" verzeihlich.

Lustig wird es in den Kommentaren zu seinem Beitrag. Berge von Frameworks, die alle nicht fertig sind. Haufenweise Kommentare der Art "nimm XYZ, das ist toll und in den nächsten Monaten wird es bestimmt brauchbar" - ganz besonders häufig kommt das bei TurboGears als Vorschlag.

Sorry, was? Wenn ich ein Web-Framework suche, dann suche ich keines, das in ein paar Monaten benutzbar wird. Dann will ich eines, das jetzt und heute benutzbar ist und für das es jetzt und heute klare Aussagen zur Fitness gibt. Wir brauchen wirklich nicht noch mehr Webframeworks die nicht fertig werden.

Ich hab ja nix gegen Vielfalt an Frameworks - das macht das Leben spannend und interessant, weil man nie weiss, ob man auf das richtige Framework gesetzt hat zwinkerndes Gesicht - aber unfertige Frameworks die von ihren Benutzern gepitched werden als wären sie das beste seit geschnittenem Weissbrot gibts wahrlich mehr als genug.

Übrigens benutze ich genau aus diesen Gründen auch Django: das Zeug ist schon geraume Zeit im Einsatz und hat bewiesen, das es für grosse Sites und hohe Last geeignet ist. Es wurde aus echten Anwendungen rausgearbeitet und ist nicht das Nebenprodukt eines unwichtigen Web2.0-Dingens von dem ich außerhalb der TurboGears-Clique noch nie gehört hab. Es wurde auch nicht von einem Kid alleine zusammengedengelt, der sich für den neuen Einstein hält und meint das nur er weiss wie Frameworks zu sein haben. Und es ist auch kein Projekt, das im Prinzip schon seit über einem Jahr tot ist, weil der Autor selber schon längst was anderes macht. Und es wird nur deshalb als 0.9 derzeit bezeichnet, weil API-Änderungen und Aufräumarbeiten in den Innereien anstehen (was bei jedem Projekt das zwei Jahre lang im Lifebetrieb entwickelt wurde angebracht wäre) - nicht weil es nur zu 90% fertig wäre.

Natürlich wird jetzt nach diesem Artima-Beitrag alles auf GvR gucken und warten was er nimmt. Und natürlich springen alle Webframework-Autoren auf und ab und wollen sich bemerkbar machen. Und natürlich wird jedes Wort analysiert und dem anderen unter die Nase gerieben. Und eine ganze Reihe von Projekten werden kurzfristige Schnellschussänderungen machen, weil sie hoffen das GvR ihr Framework wählt. Was alles eine wirklich wahnsinnig sinnvolle Zeitverschwendung ist. Manchmal gehen mir diese Kinder in den OSS Projekten tierisch auf den Senkel.

tags: Programmierung, Python

Guido van Rossum Jan. 28, 2006, 11:07 p.m.

Thanks! I enjoyed reading that.

Armin Ronacher Jan. 30, 2006, 4:09 p.m.

Ich habe gesündigt. Zumindest hab ich das Wort Colubrid in den Mund genommen, aber ich sag gleich, es ist kein Framework ;-)

Und nein, für alles, für was ich ein Framework brauche nehme ich Django.

jens Feb. 1, 2006, 9:16 a.m.

Ich finde es ganz nett, das die Diskussion endlich entstanden ist und das die Frage von einer Prominenten stelle her gekommen ist.
Ich hoffe das dadurch endlich mal was passiert. Vielleicht das sind wirklich mal ein Framework etablieren wird und damit meine ich nicht die großen wie django und Turbogears... Sondern ein minimalistische WSGI Implementierung als Bultin in Python. Wäre auch nett, wenn es direkt Adapter zu CGI, mod_Python, fastCGI und die anderen geben wird.
Das wäre schon mal ein großer Schritt in die richtige Richtung. Darauf können dann die Frameworks aufbauen.

Darüber diskutieren kann man auch im Forum: http://www.python-forum.de/viewtopic.php?t=5060

:)



hugo Feb. 1, 2006, noon

wsgiref wäre durchaus ein Kandidat für Integration in die Standard-Lib, aber so wie GvRs Kommentare bisher sind, klingt das eher nicht so als ob es direkt in die Standardlib kommt. Inwiefern aber ein - selbst minimalistisches - Web-Framework da reingehört, ist eher fraglich. Was sicherlich interessant wäre, wären Schnittstellendefinitionen (ala DBAPI und WSGI) zur einfacheren Integration. Es gibt ja jetzt schon etwas vergleichbares für Template-Systeme, vielleicht gibts noch was in Zukunft für ORMs oder ähnliche Framework-Teile. Es sind ja auch keine Datenbanktreiber selber Bestandteil der Standardlib, aber es gibt eben mit DBAPI eine allgemein akzeptierte API. Das wäre mit WSGI ebenfalls zu leisten und würde schon viele Probleme beseitigen.

Die verschiedenen WSGI-Adapter gibts auch schon - guck mal nach FLUP. Das ist ein recht brauchbarer Satz von Serveradaptern für WSGI. Und andere Adapter entstehen auch an allen möglichen Ecken für andere Serversysteme (z.B. mod_python und twisted).

jens Feb. 1, 2006, 12:34 p.m.

Es gibt ein paar neue Blog Einträge von Guido van Rossum in diesem Zusammenhang:

Django vs. Cheetah: 1-0
http://www.artima.com/weblogs/viewpost.jsp?thread=146606

Web Framework Redux
http://www.artima.com/weblogs/viewpost.jsp?thread=146503