Tutoría de Seaside
Ramon Leon escribió un post detallando la construcción de un Wiki básico usando Seaside. Pruébenlo.
Ramon Leon escribió un post detallando la construcción de un Wiki básico usando Seaside. Pruébenlo.
Ja, das ist richtig. Acht und zwanzig Jahre alt.
Hoy cumplo 28 años. Muchos o pocos ya no sé. El caso es que hay una velita más en el pastel. Pero fue un buen año.
Hace un año estaba soltero, sin hijo, sin trabajo fijo, vivía con mi mamá y mi primo y endeudado a más no poder. Ahora estoy casado con una mujer maravillosa, tengo un hijo hermoso, vivo en un depa, tengo trabajo fijo (aunque a veces aburrido) y sigo endeudado. Además me corté el cabello completamente y estoy pelón.
En resumen puedo decir que fue uno de los mejores años de mi (corta o larga) vida. Y eso sí hay que celebrarlo.
En un rato más Aline y Tristán vienen por mi y nos vamos a comer una rica pasta y un buen vino.
Así que:
“Feliz cumpleaños a mi”
![]()
Al fin he logrado convencer a Aline de dejarse atrapar por el lado oscuro (o sea la tecnología :)) de la fuerza. Está estrenando blog en http://aline.leugim.com.mx y está muy interesante. Temas: filosofía, arte, libros, cine, erotismo (de Eros, no de porno) entre otras cosas. No dejen de visitarlo.
¡Lo más sorprendente de este cambio es que hace unos días hasta dijo que quería un iPhone! Ja. Ni siquiera yo había pensado en tener uno. Las sorpresas que se lleva uno. ![]()
Seaside es un framework sorprendente. No hace falta más que ver los demos y ejemplos existentes. Pero es una lata encontrar documentación adecuada. La existente esta dispersa, atrasada, muy específica o muy básica. Es la mayor deficiencia de Seaside. El principal problema es que mucha documentación está hecha para versiones antiguas de Seaside, que usan WAHtmlRenderer en lugar de la más reciente y recomendada WARenderCanvas
Aquí van algunos de los mejores links que he encontrado:
¡A leer!
Les paso un link, vía Lukas Renggli, a un artículo sobre Seaside que salió publicado en la revista IEEE Software:
Seaside: A Flexible Environment for Building Dynamic Web Application.
El 14 de septiembre se publicó el libro Squeak by Example. Hoy lo terminé. Es fantástico. El lenguaje es impresionante. El modelo teórico en el que está basado es absolutamente asombroso Todo es un objeto. ¡Todo! Y si creías que sabías programación orientada a objetos porque programabas en Java, C++ o C#, déjame romper tu burbuja. No es así. Lo digo por experiencia propia. Me he dado cuenta de que he vivido engañado.
Los lenguajes de programación, como los lenguajes naturales, vienen en muchas variedades, cada una de las cuales tiene distintas características que los hacen, en mayor o menor medida, aptos para expresar ideas.
En el caso de los lenguajes naturales, hay varios grupos que definen características comunes entre ellos. Uno de esos grupos es el formado por las lenguas romances (español, francés, italiano, etc). Otro grupo contiene a las lenguas del norte de Europa (alemán, Sueco, holandés), por no hablar de las lenguas orientales (japonés, chino, coreano, etc). No hay que olvidar las lenguas nativas de los distintos pueblos y naciones antiguas (las islas del pacífico, las lenguas indígenas de latinoamérica, las lenguas de las tribus de indios de norteamérica). En fin, no soy lingüista ni mucho menos y este es terreno peligroso si entramos en detalles.
El punto importante es la amplia variedad de lenguajes existentes, cada uno de los cuales expresa con mayor o menor precisión los conceptos de la mente humana.
Hace tiempo que intento terminar un proyecto alterno que estoy haciendo con un amigo. Es una aplicación web. Ya saben, lo tradicional: PostgreSQL, Java, Struts, Tomcat. Eso no es importante, sobre todo a la vista de los últimos posts donde explico mis razones para dejar atrás ese tipo de tecnología (me refiero a Struts). Lo importante es que desde el inicio decidí que iba a separar completamente la presentación de la aplicación, de manera que el producto se pudiera personalizar (cambiarle el tema) si así lo prefería el cliente.
Si alguien me hubiera dicho que eso iba a ser toda una aventura, no lo hubiera creído.
Leyendo el blog de Ramon Leon encontré un excelente artículo listando algunas de las aberraciones que he encontrado en el código que he tenido que modificar y algunos que yo, me da pena decirlo, use en algún momento, como poner prefijos a las variables para indicar su tipo (la culpa es de Pascal).
Algunas citas memorables, enfatizado por mi:
Don’t comment closing tags.
if(foo == bar){
//bunch of code
//bunch of code
//bunch of code
//bunch of code
//bunch of code
//bunch of code
//bunch of code
//bunch of code
//bunch of code
//bunch of code
//bunch of code
//bunch of code
//bunch of code
} //end if(foo == bar)
this is beyond ignorant, you should be shot.
¡Ja ja, nada más cierto!
O, dirigido al mundo de Java:
XML is for configuration files and data transport, not for general purpose programming.
Para alegrarse el día
En el post anterior detalle mi búsqueda de nuevas opciones en frameworks para desarrollo web en Java. Los finalistas fueron Wicket y RIFE. Mencionaba también que estos frameworks son distintos de los “tradicionales” en que son basados en componentes y en que manejan todo el estado de la sesión con el usuario del lado del servidor.
¿Pero que significa que sean basados en componentes? De entrada es una nueva manera de pensar las aplicaciones web. En lugar de modelar una aplicación web como un conjunto de páginas relacionadas que la conforman, comenzamos a pensar en elementos más pequeños pero a la vez más poderosos.