Categorías
Software y Hardware

Lexi 1.0

Para un programador, reconocer que un software merece la numeración 1.0 significa que ha terminado un ciclo de desarrollo y ha creado una aplicación cuya estabilidad le permitirá responder a situaciones cotidianas que ni siquiera había tenido en cuenta a la hora del diseño. ¿Quién iba a pensar que Lexi terminaría en páginas de distintas lenguas, objetos sociales y hasta tendencias sexuales? Supongo que el momento más fuerte que he tenido con Lexi lo viví cuando supe que lo estaban empleando en un website de pornografía. Me pregunto qué sentirá un padre cuando sabe que su hijo está descubriendo ese mundo tabú. Obvio que el símil no es aceptable desde ningún punto de vista, pero este hecho me dejó algo en qué pensar.

Ver a un hijo hacerse mayor de edad no es fácil; uno tiene esa tendencia paternalista a creer que solo a su lado podrá defenderse, y que siempre volteará en dirección a donde uno está para pedir respaldo con la mirada. Pero Lexi ya es mayor de edad, tal vez desde mucho tiempo atrás, y solo hasta hoy acepté esa realidad. Lexi ha logrado por sí solo cosas de las que apenas me voy enterando.

El siguiente es un recuento por los momentos más importantes de su infancia, y de carambola una lista con algunos sitios donde hacen uso de sus capacidades. Si algún enlace está roto, o si saben de un sitio que use Lexi y quieren que haga parte de esta lista por favor envíen un comentario. Recuerden que Lexi trata en lo posible de integrarse a cualquier  página, así que identificarlo a primera vista no es una tarea fácil. Mimetizarse es precisamente una de sus virtudes.

  • Sitios y usuarios que se han involucrado con el desarrollo:
    • Zonekiller: nunca conocí su website, pero fue el usuario que propuso extender el código de Lexi para que dejara de ser un plugin exclusivo para barras laterales. Ese día Lexi inició su carrera en las grandes ligas.
    • The Tracy Times: uno de los usuario que más retroalimentación ha ofrecido al desarrollo del código.
    • diplotomatic.com: un usuario cuyo aporte llevó este desarrollo a un nuevo nivel de usabilidad.
    • La clave del éxito: la solicitud de este usuario amplió el horizonte de posibilidades de Lexi, porque requirió profundizar en la API de SimplePie.
    • XXX: no publico este enlace por tratarse de un site de pornografía. Fue el usuario que preguntó por la posibilidad de paginar los resultados, solicitud que es en mi opinión (y sin siquiera imaginarlo) uno de los mayores logros de Lexi.
    • soling.se: con este usuario resolví problemas en los URL con caracteres especiales.
    • kurrentli:  el intercambio de propuestas con este usuario hizo que modificara Lexi para facilitar la integración con desarrollos de terceros.
    • hellaz.eu: este sitio aun no está en línea, pero las charlas con este usuario llevaron Lexi a un nuevo nivel. Fue por recomendación suya que trabajé en el uso de las herramientas AJAX de WordPress (para eliminar la dependencia con Minimax), mejoré los CSS e integré los comentarios al esquema de WordPress. Fue justo al terminar estas modificaciones que entendí que Lexi ya estaba listo para alcanzar la versión 1.0.
  • Sitios en los que con sorpresa he encontrado Lexi instalado:

Lexi, eres libre, vive tu vida y enséñale al mundo de qué estás hecho. Tus logros son un orgullo para mi.

Categorías
Software y Hardware

De lectores RSS y Mashup

Un amigo de Detroit usuario de Lexi añadió a sus fuentes un enlace al portal The Detroit News. Con sorpresa descubrió que Lexi no conseguía leer la información del portal de noticias y me escribió para que le ayudara a encontrar alguna solución. En definitiva no pude lograr que Lexi leyera desde la fuente en cuestión, y tampoco pude publicarla en los widgets de RSS de WordPress, así que todo apuntaba a la librería de RSS. La motivación era poderosa. ¿Cómo lograr que una fuente de RSS con problemas para ser leída por la librería de RSS pueda ser publicada en Lexi?

Categorías
Software y Hardware

Plugins por todos lados

La idea detrás de un plugin es -resumiendo- hacer más fácil la vida de los usuarios, aunque eso signifique la muerte de la vida social del programador. Pequeñas modificaciones pueden hacer grandes cambios en toda la lógica de un algoritmo, mandando al trasto con ideas preconcevidas sobre interfaz de usuario, como sucedió en concreto con MudSlideShow y Lexi. Ambos plugins hicieron nuevos ajustes en Minimax y de ahí los cambios se sucedieron en cascada por todos los plugins que hacían uso de la librería Mínima de Ajax. Alguna vez leí que un programador es aquel que dedica días enteros a encontrar la forma de hacer en 1 minuto lo que le toma 10. Me siento identificado con esa frase.

Categorías
Software y Hardware

Lexi y Blogspot

Desde Helsinki, ciudad natal de Linus Torvalds, preguntaron si podían usar Lexi para leer datos desde una página en Blogspot. Luego de hacer unas pruebas me di cuenta con horror que no funcionaba cuando se declaraba el feed sin caché, pero cuando se almacenaba en caché todo volvía a su curso normal. ¿Qué pasaba? Hablando a nivel de código, la diferencia entre la versión con caché y la versión que no usa caché es la librería que cada opción particular implementaba para leer los datos; los feeds almacenados en caché empleaban la librería de RSS disponible en WordPress, y los restantes empleaban un grupo de funciones básicas creadas para este plugin. La razón por la cual hice esta separación es porque con la librería de WordPress no había encontrado la forma de actualizar los datos en un período menor a 10 minutos, así que creé los mecanismos para leer los feeds directamente para estos casos particulares donde hay una alta frecuencia de actualización. Por cuestión de utilidad solo me preocupé por el formato RSS y descuidé las demás opciones. He ahí el por qué Lexi no entendía ciertos casos particulares; Blogspot usa RSS como una segunda opción, porque su formato por defecto es Atom. La solución rápida era por lo tanto leer los datos con la librería de WordPress que, dicho sea de paso y aceptando mi error, debí haber diseñado como opción por defecto a nivel de interfaz desde un principio, pero la versión actual no daba la suficiente claridad al usuario sobre cuándo usar esta opción, así que en el caso propuesto desde Helsinki era seguro que se estaba usado la opción por defecto, es decir el mecanismo sin caché.

Categorías
Software y Hardware

Lexi, ahora en posts, pages y templates

Desde Italia preguntaron si existía una forma de hacer que Lexi publicara resultados en una página o post. En un principio no vi la utilidad que una funcionalidad así podría ofrecer, pero apenas pensarlo unos segundos tuve claro todo el potencial disponible al implementar esta solución.

Expongo unos ejemplos:

  • Un post sobre salud actualizado con un enlace a un RSS sobre el tema.
  • Una página sobre fútbol con datos actualizados de resultados de partidos.
  • Una página dedicada a la paleontología que lea datos desde un blog de arqueología.
  • Una página de juegos con un enlace a novedades.
  • En mi caso personal, una página de uno de los viajes actualizada con noticias de la región a la cual se hace alusión.