At Except we have over a dozen computers running Ubuntu being used as developer workstations. Most of our developers work in Python, so often there is a real need to install cutting-edge software, and too often the instructions go something like
$ sudo easy_install <package>
and down that road lies madness. (more…)
Una de las mejores presentaciones acerca de por qué la “arquitectura de componentes” de Zope 3, es decir, la parte más básica de las librerÃas de zope 3, que no tienen nada que ver (necesariamente) con aplicaciones web sino que son mucho más generales, es tan buenÃsima: Let’s discuss the matter further » Using Zope Adapters
Gracias a Jon Stahl por el link.
Trabajé en (y conseguà hacer cerrar) dos bugs en el PythonBugDay: uno medio bodrio de un error en el setup.py, y otro que me gustó mucho de agregarle rfind a mmap. De paso le agregué un parámetro opcional end, para que se porten igual que los de str.
Asà que si en el futuo cercano, cuando haya salido 2.6, se les muere el perro, es culpa de Facundo, por invitarme :).
¡SimCity es GPL! Debo haber quemado noches enteras de mi adolescencia construyendo imperios en este juego. Y ahora lo liberan y le ponen bindings para Python. Claramente es un complot.
En el Campamento Python que está organizando Except una de las actividades que estamos queriendo hacer es un deathmatch entre los distintos frameworks. La idea, que en realidad es de cramm, es que en el mes que hay entre acá y allá distintas personas preparen una misma aplicación en su entorno web de preferencia, y usemos el campamento para exponer y comparar las aplicaciones, los entornos, las implementaciones, y los tonos que da la luz al pasar por los pinos y chocar con la cara del expositor.
Asà que si sos fanboy de Django, TurboGears, Pylons, web.py, Zope 3, Grok, Plone, o cualquiera de los frameworks para hacer aplicaciones web en python, lo único que tenés que hacer para el 15 de febrero es hacer esta aplicación. No trabajar, no estudiar, no comer, no dormir. Un blog. Multiusuario, extensible, con comentarios, tags (categorÃas), y temas (emm… que le puedas cambiar la pinta sin saber programar). Y que las URLs sean bonitas, porque estamos en el siglo XXI.
La idea es poder mostrar lo mejor de cada framework, asà que las presentaciones pueden ser individuales, grupales, o colectivas; pueden usar todo lo que usarÃan para un proyecto “real” (es decir, lo que fuera parte del commons, del acervo de cada proyecto). La presentación no deberÃa tardar más de 7 minutos, porque la mayorÃa del tiempo va a ser usado para preguntas, respuestas, y reÃrnos del código. Coordinen via la lista de correos, asà tenemos una sola presentación por entorno y no pasa a ser “yo hago mejor django que vos”.
En un esfuerzo de producción conjunta, la familia Lenton-Dailly ha decidido auspiciar con un dÃa sábado casi entero del papá de la misma al próximo Python Bug Day. ¡Ueeeh!
Plone is slow. Sure, it does an awful amount of work for every request, but it really shows: in a standard install of Zope and Plone on nice hardware with plenty of memory, getting Plone’s index page takes about 250ms. Other, less complex objects such as CSS files or images take about a tenth of that. Unfortunately, as Plone’s default skin is amazingly complex (and for good reasons), you need to fetch anything between 10 and 50 objects out of the database before your browser stops looking busy. You can’t serve more than a couple of concurrent users with that.
Fortunately setting up a reasonable bit of caching is really trivial, should require no extra software, no recompilation, no nothing, and you can see speedups of more than 25×. Here’s how! (more…)