Nando Quintana

Ingeniería web y existencialismo doméstico

Archive for Septiembre, 2007

Foliage Sprint: Sprinting Zope3 en Massachusetts

26/09/2007 Sin categoría 1 comentario →

Este lunes ha comenzado un nuevo sprint en Zope3, en Colonial Inn, Massachusetts.

El nombre hace alusión a la temporada otoñal que decora Massachusetts

El objetivo de este sprint es trabajar en aspectos fuertemente relacionados con el core de Zope3, en lugar de dispersar el esfuerzo en extensiones de la comunidad, como puede suceder en otros sprints.


Zope3 Foliage Sprint map - Tagzania

 

¿Qué van a hacer los sprinters?

Entre los programadores asistentes, se encuentra Stephan Richter, quien hace las veces de mentor en algunas de las actividades que se están realizando.

Las tareas que los sprinters han propuesto son las siguientes:

- Simplificación de la interdependencia entre paquetes

Desde que se empezó la refactorización de los módulos en forma de huevos, se detectaron excesivas interdependencias que deberían ser eliminadas, para una distribución más ligera y flexible de Zope3.

En primer lugar se propone crear una herramienta que construya un grafo con las interdependencias entre los paquetes.

Después habría que evaluar y redactar una pequeña propuesta de reducción o eliminación de cada dependencia.

Se podría empezar, dividiendo los zcmls de configuración de los paquetes, para que se pueda referenciar al API de un módulo sin tener que incluir el submódulo “browser”, por ejemplo.

- Crear un listado de paquetes

La tarea consiste en documentar a fondo los paquetes de zope3 del Índice de Paquetes de Python, para facilitar el acceso a la documentación a quien se inicie en Zope3.

- Introspección en la seguridad

A pesar de la potente maquinaria de seguridad que implementa Zope3, se han recibido algunas críticas acerca de la oscuridad sobre qué elementos son públicos y cuales no.

Se propone crear una herramienta que audite un sitio sobre los objetos que están disponibles y los permisos necesarios.

- Implementación de un “navegador de prueba” de verdad

El “test browser” de zope3 no permite probar el código escrito en javascript. Existe una aplicación en desarrollo, comenzada por Benji, que permite controlar un navegador Firefox real.

Existe una extensión de Firefox que permite manejar el navegador a través de una sesión remota, utilizando comandos javascript.

La tarea consistiría en finalizar esta aplicación para dotar a Zope3 de un API de test completa.

- Desarrollo de documentación estática del API de Zope3

Hacer una copia a ficheros del api generada dinámicamente por un servidor Zope.

- Acelerar el arranque de Zope 3

A pesar de que el retoque de las plantilla no requiere reiniciar el servidor, el resto de modificaciones sí.

Con esta tarea, los sprinters se proponen reducir drásticamente el tiempo de reinicio, optimizando la forma en que se parsea el ZCML.

- Varias tareas sobre z3c Forms

A pesar de que formlib es el paquete oficial de Zope3 para formulario, z3c.form está evolucionando muy rápido, siendo ya una eficaz alternativa.

Los puntos en los que se quiere reforzar a este paquete son la internacionalización, la composición de widgets, los widgets basados en sesiones, widgets de objeto y widgets diccionario o secuencia de valores simples.

- Un ZMI modular

El actual interfaz de administración de Zope3 no satisface todas las espectativas de los desarrolladores de Zope3.

El trabajo quiere centrarse en dos casos de uso: 1) configuración y administracion de una aplicación. 2) un zmi pluggable que se adapte fácilmente para poder conseguir una versión personalizada de ZMI.

- Protocolo de publicación Atom

Otras plataformas ya lo implementan y conseguir exportar datos en formato Atom facilitaría, por ejemplo, la producción de APIs RESTful.

- Ejemplo de una aplicación con las mínimas dependencias

Sería muy interesante tener un ejemplo de aplicación ultrasimple, con la opción de hacer login/logout.

Un motor de consultas y un lenguaje de consultas para Zope3

La tarea propone crear un lenguaje declarativo de extracción de datos. El lenguaje debería estar orientado a objetos, y permitir especificar parámetros como los permisos, manipular datos, etc.

El lenguaje debe estar asentado sobre una estable base matemática.

El motor de consultas debe ser modular y estar basado en componentes. Debería alcanzar velociades similares a un motor SQL.

¡Ánimo!

Desde aquí les envio mis ánimos para que afronten con entusiasmo todos estos objetivos y, por supuesto, pasen unos estupendos dias en Massachusetts. :-)

Los otros titulares

21/09/2007 pensamientos, política 2 comentarios →

La actualidad es la realidad encofrada en el vocabulario.

En los medios, está ensayado y es sencillo.

tetris de palabras

En el tetris de nuestros cerebros, la crítica y la duda son filas a punto de completarse.

Las palabras de ese vocabulario son piezas de teris que encajan perfectamente.

La crítica y la duda se completan y “flip”: desaparecen.

El vocabulario de la actualidad

Las noticias tiene un vocabulario tendenciosamente protegido:

Las operaciones militares israelís, son ataques terroristas.

El negocio bancario en España es usura y extorsión.

En España existe la censura y cada vez es más facil y habitual.

La corrupción es rentable y la especulación es una práctica absolutamente despreciable practicada por todos, desde la clase “obrera” hasta la nobleza de más rancio abolengo.

España premia al bufón y se menosprecia al sabio. Lo mejor de la televisión gratuita es el erotismo aunque, en público, la gente prefiere otro tipo de morbo.

Agur,Nando.