jLibrary Web beta

Después de varios meses colaborando con Martín Pérez, ya está online el cliente web de jLibrary, aunque todavía en beta por faltarle algunos ajustes. Es la primera aplicación web basada en jLibrary, además, se puede ver que la web del proyecto está publicada con la misma aplicación, con un repositorio específico para ello.

Esta aplicación, que aunque no llega tener toda la funcionalidad del cliente de escritorio, se echaba de menos por tener un cliente ligero para acceder desde un navegador. Además puede dar una idea de cómo utilizar jLibrary como core para otros desarrollos en entornos web.

En cuanto a funcionalidades:

  • Se pueden navegar por los directorios y categorías de un repositorio, podemos ver el contenido de los documentos html y descargarnos cualquier tipo de documento.
  • Realizar búsquedas sobre el contenido de los documentos de un repositorio
  • Una vez autentificados con los usuarios creados para ello(por ejemplo kevin/kevin) en el repositorio demo, dentro del directorio PlayGround, se pueden crear directorios, crear documentos html, hacer uploads de documentos, asignar categorías y relacionar documentos.
  • Suscribirse por RSS a un directorio
  • Además se puede conectar desde el cliente de escritorio.

Para quien tenga curiosidad, están publicadas las características técnicas, tanto del servidor dónde se hospeda la aplicación como de algunas generales de la aplicación.

El cliente web, se distibuirá con la próxima versión de jLibrary, por lo que se agradece que contactéis con nosotros en caso de encotrar algún bug o simplemente para darnos feedback. Para contactar con nosotros lo podéis hacer en demo(arroba)jlibrary(punto)org o en la web del proyecto en sourceforge.

Ha sido mi primera aportación al mundo open source, del que tanto me he aprovechado:), y realmente es una experiencia que recomiendo:

  • Me ha servido para aprender un poco de freemarker, maven, spring, al principio de mi colaboración a usar JSF... y aplicar algunas otras que ya conocía.
  • El ver como gente de cualquier parte del mundo se interesa por el proyecto en el que colaboras, que al final de todo es lo que nos debería satisfacer como desarrollardores, que algo en lo que participas resulte útil, y espero que cuando salga la próxima versión de jLibrary sea el caso.
  • Trabajar con Martín "mano a mano", que es un fuera de serie.

Bug con IE 6 y LiveValidation

Este dolor de cabeza en forma de bug hacía bastantes días que lo tenía, utilizando la librería LiveValidation para validaciones con javascript con IE 6.

Pues resulta que cuando intentaba crear una nueva validación a un textarea concreto en un formulario, me daba un error:

LiveValidation::getElementType - Element must be an input, select, or textarea!.

A base de "debuggar" el código de la librería vi que al final la causa era porque ese textarea tenía un id=description, y al hacer la comprobación de si el elemento con ese id es un input, un textarea o un select devolvía un meta por el meta name=description... del header.

La solución tan sencilla como cambiar el dichoso id y seguidamente informar a los autores de la librería sobre el bug.

Curso avanzado sobre diseño de sitios web accesibles

Acabo de leer un correo que me han mandado desde el ICH, informándome de que quedan 90 plazas para su curso avanzado sobre diseño de sitios web accesibles. El curso se realiza vía online y es gratuito, y está orientado a trabajadores por cuenta ajena y autónomos.

Se parece mucho al curso que ya hice el año pasado con ellos, quizás hayan extendido en algo el curso, al menos parece que han puesto como última unidad didáctia una parte práctica. Pero personalmente me da la sensación que no deberían llamarlo avanzado, probablemente acabe siendo un buen curso introductorio pero no mucho más.

Por otro lado, ya que hablo sobre accesibilidad, también aprovecho para comunicar que Dani Torres y Javier Prenafeta van a impartir un seminario sobre la nueva legislación sobre accesibilidad web y sus implicaciones técnicas.
Esto será el día 31 de enero a las 19:00, en el local de Hispalinux en Zaragoza.

Lista sobre ecosistemas de software

Hace algo más de un mes que Manuel Recena anunció que había creado una lista de correo sobre ecosistemas de software basados, principalmente, en herramientas de código abierto.

En un principio su idea era crear una lista de correo de maven en español. Pero me parece muy interesante que se ampliara la temática, ya que habiendo tocado un poquito de maven espero empezar a "jugar" con herramientas de integración continua y, de esta forma, tengo un lugar de referencia dónde encontrar gente con experiencia en estas herramientas en caso de atascos/dudas.

Recomendaciones para invertir en tu portfolio de conocimiento

Últimamente no he escrito demasiado, las principales razones: un final de año en el trabajo que ha absorvido la mayoría de mi tiempo, acabar unas prácticas para la universidad y ésta última semana de merecidas vacaciones :), que he conseguido desconectar casi del todo, he empezado a leer el libro The Pragmatic Programmer.

En el primer capítulo(A pragmatic philosophy) habla, entre otras cosas, de invertir en tu portfolio de conocimientos, nuestra experiencia y nuestro conocimiento son nuestros activos más importantes, y da algunas recomendaciones de cómo hacerlo. Y aprovechando que se acaba el año me los pongo como propósitos para 2008.

  • Conocer un lenguaje cada año: Diferentes lenguajes resuelven de diferentes formas los mismos problemas, de esta manera, puedes tener un punto de vista más amplio para resolver un problema. Este año espero tener tiempo para empezar con Ruby(RoR) y con Groovy(Grails).
  • Leer un libro técnico cada 3 meses: En principio recomiendan leer sobre tecnologías con las que trabajas normalmente, pero también que cuando las domines realmente, cambies y estudies otras diferentes a las que estés acostumbrado. Veremos cuando acabe éste libro, que libros interesantes hay por ahí.
  • Leer también algún libro no técnico: Hay que recordar que los ordenadores los usan las personas, como no soy demasiado aficionado a la literatura me dejaré recomendar.
  • Asistir a clases: A ver si tengo tiempo(y me seleccionan) para asistir a algún curso del CTA, no conozco muchos más que puedan resultarme interesantes.
  • Participa en grupos de usuarios locales: Con intención de hacerlo activamente, por aquí esto está complicado, están hispalinux y cadius, que serían lo más parecido, pero que yo sepa nada de puramente para programadores. Aunque de forma online, seguiré participando activamente en todo lo que pueda en JavaConGanas, que podría ser lo más parecido a ésto.
  • Experimenta en diferentes entornos: A ver si este año por fin me cambio a usar Linux como mi SO principal, y en casa pruebo a fondo con IDEA y NetBeans.
  • Mantente actualizado: Sigo portales como javaHispano, infoQ y TheServerSide además de bastantes blogs que tocan temas de actualidad TI ¿Recomendaciones?.
  • Mantente conectado: Para encontrar gente que domine alguna tecnología, para esto ya utilizo sitios como los foros de javahispano, forosdelweb... Además de buscar información en internet, para esto además de los buscadores, mis contactos en del.icio.us me ayudan muchísimo:P.

Aparte de todas estas recomendaciones, que no son pocas, me apunto dos más.

  • Aprende/Mejora tu inglés: Esto no lo comentan en el libro más que nada por que los autores son anglosajones :), pero los que no dominamos demasiado el idioma debemos de hacer un esfuerzo en mejorar. Evidentemente la mayoría de documentación/libros aparecen en inglés primero y en muchas ocasiones no se llegan a traducir nunca, además así no nos limitamos a comunicarnos sólo con hispanohablantes.
  • Colabora en algún proyecto open source: De ésta forma, además de aumentar tu portfolio de conocimentos, aumentas tu experiencia. También tiene alguna otra ventaja, como licencias gratuitas de herramientas de pago para utilizarlas en proyectos open source.

Bueno, ahora ya sólo me queda desearos a todos un feliz 2008, y cuidado con la resaca ;)