Web Frameworks
Alberto Valverde
alberto en toscat.net
Jue Ago 7 17:29:53 CEST 2008
> de un reportaje a GvR en
> http://www.techworld.com.au/article/255835/-z_programming_languages_python?pp=2
>
> Q: A lot of current software is about writing for the web, and there
> are many frameworks such as Django and Zope. What do you think about
> current web frameworks based on Python?
>
> GvR: For a few years there were definitely way too many web
> frameworks. While new web frameworks still occasionally crop up, the
> bar has been set much higher now, and many of the lesser-known
> frameworks are disappearing. There's also the merger between
> TurboGears and Pylons.
Bueno, aquí Guido se ha equivocado: *Nunca* nos hemos planteado fusionar
TG y Pylons. Ni Ben ni James por un lado, ni Kevin ni Mark ni yo por otro.
Sinceramente, no sé a que se debe esta confusión generalizada pero por más
que lo intentamos desmentir sigue sonando el eco... cosas de las dinámicas
de red supongo. Espero no haber cometido una herejía que fuerze mi
destierro por haber desmientiendo al Dictador... ;)
> No matter what people say, Django is still my favorite -- not only is
> it a pretty darn good web framework that matches my style of
> developing, it is also an exemplary example of a good open source
> project, run by people who really understand community involvement.
Ahí no se equivoca. Se podría mejorar en ciertos aspectos, no hay nada
perfecto, pero básicamente estoy totalmente de acuerdo. Pero... Guido
prefiere Django, no es ningún secreto... sinceramente, ¿y? ¿Es un
argumento de peso (a parte de para convencer a algún jefazo)? ¿Debo basar
las decisiones *tecnológicas* de mis proyectos en lo que prefiera Guido?
No me convence, lo siento. Supongo que se debe a que tiendo a intentar
justificar de alguna manera racional las herramientas que uso, eligiendo
lo más pragmaticamente posible la que mejor se adapte al problema en
cuestión.
No me gusta jurarle fidelidad a ningún patrón de cargas en un
semiconductor, ni verme limitado por mi propia decisión de explorar
herramientas alternativas que puede me sirvan mejor.
Como ya he comentado, he usado Django varias veces y no me cuesta
reconocer que para ciertas aplicaciones es la mejor herramienta. Sin
embargo, para otras sencillamente *no* lo es (aunque parezca mentira). Por
ejemplo, he visto y trabajado en varias aplicaciones Django con diseño de
base de datos que me atrevo a bautizar como "made in django", es decir,
con una estructura más enfocada a que quede bonito en el Admin en vez de
una estructura eficiente que te ayude a ahorrar código a base de crear
buenas abstracciones. Gran parte de la culpa se la echo a su ORM pues *por
diseño* (googlea Active Record vs. Data Mapper) no es posible mapear
ciertos esquemas de base de datos. Sí, hay veces que no necesitas más...
pero cuando lo necesites y te veas privado de otras herramientas
sencillamente por no haberlas investigado...no me gustaría heredar tu
webapp ;)
(por cierto, la seguna persona en casi todo lo que escribo no se refiere a
tí en concreto, no es un ataque personal. Es una figura literaria... hmm,
no sé, sé que tiene nombre pero no me acuerdo, soy de ciencias.)
Aunque cueste creer, ni fue el primer framework en python [1] ni es la
panacea que debe sobreponerse a los demás. Es más, si las alternativas
desaparecen bajo su sombra perderemos todos: los que las necesitamos y los
que las necesitan pero no lo saben ;)
Salud,
Alberto
[1] Fue zope, al cual raramente se le muestra el respeto que merece,
mientras ellos miran con cierta curiosidad y asombro como reinventamos una
y otra vez los problemas que ellos ya han resuelto hace tiempo. Cada vez
menos eso sí, por ejemplo, en TG2 estamos integrando bastante de su
infraestructura a medida que la desacoplan (transaction, zope.interface,
repoze.tm, repoze.who...)
_______________________________________________
Lista de correo Python-es
http://listas.aditel.org/listinfo/python-es
FAQ: http://listas.aditel.org/faqpyes
Más información sobre la lista de distribución Python-es