WordPress

Además de List Category Posts, también desarrollé el plugin para WordPress UserAgent-Spy. Es el plugin que uso para mostrar los navegadores, sistemas operativos y dispositivos de los usuarios en los comentarios.

Hacía tiempo que quería retomar su desarrollo, pero siempre lo iba dejando de lado por otras cosas. Finalmente me decidí y volví a él. Tengo que admitir que me costó bastante.

En primer lugar, al igual que List Category Posts, este plugin empezó de un script super básico a crecer poco a poco. El modelo de crecimiento fue al estilo “monstruo de Frankestein”, donde iba metiéndole código por un lado y por otro para alcanzar distintas funcionalidades. El resultado final fue obviamente el esperado: ¡UN MONSTRUO!

Frankenstein WordPress

Frankenstein WordPress

Mirar el código de hace un buen tiempo me hizo pensar que o bien he aprendido mucho en este tiempo, o era un programador horrible en ese momento. En verdad no son mutuamente excluyentes, así que puedo aceptar que ambas afirmaciones son ciertas. Si bien ahora sigo pensando que hay miles de mejoras para hacerle al código, aprolijé bastante por todos lados.

También intenté documentar un poco más. No entendía mi propio código, y tenía ganas de agarrar la máquina del tiempo, buscarme en el momento en que  escribí esas cosas, y pegarme una patada voladora atrás de la oreja.

En fin, después de un buen rato de pelea, salió a la luz UserAgent-Spy 1.2. Para el usuario final hay pocos cambios:

  • Ahora detecta dispositivos Apple, Blackberry y HTC. Al haber retomado, espero poder agregar más dispositivos e información en breve.
  • Detecta PCLinuxOS. Solo porque quería agregar al menos un sistema operativo más. PCLinuxOS está mencionado en los comentarios de la página del plugin, así que lo agregué.

Los cambios más importantes están a nivel de código, ahora se entiende un poco más. Por otro lado, voy a hacer lo mismo que hice con List Category Posts: continuar el desarrollo en GitHub.

Como plataforma para desarrollo colaborativo de software open source, GitHub es la solución ideal. Ya he recibido Pull Requests de otros usuarios en LCP, y el sistema de tickets para bugs, pedidos de nuevas características, etc. es muy bueno. Así que de ahora en más voy a llevar el desarrollo desde ahí, exportando versiones nuevas al repositorio SVN de WordPress.

Comentario aparte: que viejo se siente Subversion.

Se sintió bastante raro ver que la última modificación al código había sido en enero del 2010. No parece haber pasado tanto tiempo. El plugin ya tiene 4 años de desarrollado, y desde entonces siempre estuvo instalado acá en Picando Código y otros de mis blogs. Por eso no me hubiera imaginado que pasaría tanto tiempo sin actualizarlo, y más importante, que volvería a meterle mano. Pero ahora que “volví a la programacíon” mi idea es no dejarlo tan abandonado nuevamente.

Si quieren ayudarme con el desarrollo del plugin, pueden usarlo, probar navegadores, sistemas operativos y dispositivos distintos que no sean detectados, e informarme. Cualquier aporte de código también es bienvenido, y esto resulta mucho mas fácil teniéndolo en GitHub. Espero tener nuevas versiones más seguido, y no que la próxima actualizarlo sea en 2014 🙂

13 comentarios en este post

Feed de comentarios
  1. Avatar

    Dark Musician 2 mayo. 2012 - 10:18

    Felicitaciones por retomarlo. Siempre me ha parecido una gran funcionalidad.

    PD1: Probando desde Android
    PD2: También deberías pensar en un tema móvil para el blog.

    Safari 533.1 Android
    • Avatar

      Fernando 2 mayo. 2012 - 15:41

      ¡Gracias!

      Respecto a Dolphin, lo tuve en cuenta, incluso lo uso mucho en mi Android, pero hay un problema en la detección. Su useragent es:

      Mozilla/5.0 (Linux; U; Android 2.3.4; es-us; XT316 Build/V4.26F) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1

      De ahí puedo sacar que es un WebKit de Apple, sobre Android, y “Mobile Safari”, pero no sé si eso identifica únicamente a Dolphin.

      Respecto al tema móvil para el blog, está en la lista de “cosas por hacer”. Ya tendré tiempo para dedicarle a eso 🙂

      ¡Saludos!

      Firefox 12.0 GNU/Linux
    • Avatar

      Fernando 2 mayo. 2012 - 15:38

      Gracias por el comentario, el PlayStation Vita será detectado en la próxima versión del plugin 🙂

      PD: ¿Qué navegador usaste desde el iPhone?

      Firefox 12.0 GNU/Linux
  2. Avatar

    SpamLoco 2 mayo. 2012 - 19:55

    Hola, este es otro comentario.

    Los estoy haciendo desde Ubuntu/Firefox pero cambiando el agente con la extensión User Agent Switcher 😛

    Safari 6533.18.5 Mac OS

Responder a rodolfo alejandro

Clic para cancelar respuesta.

Notificarme los nuevos comentarios por correo electrónico. Tambien puedes suscribirte sin comentar.

Toasty!