Bitly Shortener Plugin para Grails

A raíz de mi colaboración trabajando con UniversalPlaces, surgió la necesidad de integrar el acortador de urls de bit.ly. Principalmente para aprovechar las estadísticas que da este servicio alrededor de los enlaces compartidos, teniendo además uplac.es como dominio propio para este uso.

Lo desarrollé en un plugin que usamos internamente a modo de core, donde tenemos funcionalidad común. Porque, entre otras cosas, había que implementarlo en el buscador de hoteles en playas, en el portal de playas y en otro buscador vertical que saldrá a la luz próximamente.

Durante la semana pasada saqué un rato un par de noches para extraer la funcionalidad y escribir la documentación para poder publicarlo a modo de plugin de grails. No es gran cosa, pero quizás a alguien le ahorre un poco de trabajo :).

La documentación en inglés está en el README del repositorio en github, pero la dejo aquí en español:

¿Qué es?

Un plugin para grails que encapsula el método shorten de la API de bitly, para acortar urls.

Instalación

grails install-plugin bitly-shortener

Configuración:

En el Config.groovy se debe configurar el login de usuario de bitly, el apiKey de ese usuario; y si corresponde el dominio que se quiera utilizar.

bitly.login = "danilat"
bitly.apiKey = "R_FooBar"
bitly.domain = "j.mp" //optional

Cómo usarlo:

Hay 2 artefactos de grails que se pueden utilizar, un servicio bitlyService:

def shortened = bitlyService.shorten("http://www.danilat.com")
shortened.statusCode // 200 si la petición ha ido bien.
shortened.statusText // "OK" si la petición ha ido bien.
shortened.url // Nos da la url acortada si todo ha ido bien.

Y un taglib bitly:shorten:

${bitly.shorten(url:'http://www.danilat.com')}

<bitly:shorten url="http://www.danilat.com" />

Taller Spring I/O 2012: Modulariza tus aplicaciones Grails

Este año volveré a estar por el Spring I/O (16 y 17 de Febrero 2012 en Madrid), en esta ocasión dirigiendo el taller Modulariza tus aplicaciones Grails :

Gracias a los plugins de grails liberados a la comunidad, podemos aprovechar el esfuerzo hecho por otros desarrolladores y reutilizar el trabajo que han hecho. El sistema de plugins de grails da múltiples puntos de extensión para la plataforma: permite añadir comandos nuevos a la CLI, servicios, clases de dominio, extender dinámicamente algunos comportamientos... En el taller sacaremos partido del sistema de plugins de grails para reutilizar trabajo entre distintas de nuestras aplicaciones, veremos algunos ejemplos y desarrollaremos un plugin a modo de ejemplo.

Básicamente, mostraremos de forma práctica como reutilizar código en nuestros proyectos del día a día, más allá de liberar plugins que sólo tengan sentido ser liberados para el resto de la comunidad.

Este año volverán a ser 2 días de charlas y talleres, un eventazo a un precio de risa. Como podéis ver en la agenda, hay buena cantidad y calidad de ponentes, incluida alguna rockstar internacional entre ellos.

Cualquiera que trabaje o le interesen tecnologías alrededor de los ecosistemas Spring, Grails o Groovy debería asistir a este evento; o también a quienes les interesan cosas relacionadas con Mongodb, Scala, ElasticSearch, RabbitMQ o incluso temas de cloud computing.

Pero seguro que lo mejor está por los pasillos, durante los cafés y las comidas... o, por descontado, en la fiestaca del jueves :).

Nos vemos en el Spring I/O!

Mis objetivos para 2012

Pues nada, aquí estamos otra vez, un año más viejos y marcando objetivos de nuevo por culpa del Bonilla.

Primero un repasillo a lo que pienso más destacable de 2011:

  • Veo que de todo lo que me planteé el año pasado, sólo he cumplido con volver a ir al gimnasio. Físicamente estoy muchísimo mejor de lo que me andaba sintiendo en los últimos tiempos.
  • Laboralmente ha estado bastante bien. He trabajado en proyectos de largo y corto recorrido. El trabajo me ha llegado "sólo", no he tenido que salir a vender. Supongo que algo habré hecho para adquirir cierto prestigio, me llegan proyectos por diversas fuentes y algunos los he pasado en mi red de contactos.
    De todos modos, se ha hecho patente que gestiono fatal las expectativas de mis clientes, cosa que me ha llevado a tener algunos problemas y no todos han terminado bien del todo...
  • A principios de año un pequeño grupo de profesionales IT montamos Cachirulo Valley. Un grupo que poco a poco ha ido creciendo hasta un colectivo "core" de 7 personas (programadores, maquetadores y diseñadores); a cuyas actividades se acerca gente de perfil profesional diverso y donde pretendemos ayudar a madurar el ecosistema IT/emprendedor de Aragón a base de compartir conocimiento (bueno, y algunos lo usamos como excusa de irnos de cañas :)).
  • Ganamos el AbreDatos 2011 presentando elDisparate. Con un equipo un tanto atípico formado por Mamen, Agustín, Toño y el menda; el experimento no salió mal del todo :)
  • Me hice el camino de Santiago en bici, desde Jaca. Una aventura de más de 800 kilómetros que tenía en mente hace tiempo, y este verano se dieron las condiciones para llevarla a cabo al fin.
  • Aparte de asistir a muchos eventos y co-organizar algunos eventos y grupos locales; he participado como ponente en bastantes saraos: En el Spring IO, en una mesa redonda de Open Data en la EOI, en theevnt con 2 charlas, en un taller de cachirulo valley, en el Greach y en las Cachirulo Tech Talks (enmarcadas en la Libre Software World Conference).

Objetivos para el año que viene:

  • Mejorar mi inglés
  • Mejorar mi metodología de trabajo y venderme mejor. Básicamente interiorizar más "método" de trabajo a nivel técnico, organizarme mejor para ser más productivo, y quizás empezar a vender todo el conocimiento que he ido acumulando estos años en materia de creación de productos/servicios/empresas en internet.
  • Sacar 2 o 3 sideprojects que tengo por ahí a falta de un empujón, que no darán rentabilidad pero que me apetece que sean públicos. Que como "artista" del software (que no artesano) me gusta enfrentar mis cosillas con "la crítica" :D.
  • Conseguir tiempo y centrarme para sacar en un nuevo producto serio. Ando con varias ideas para desarrollar algo nuevo que pueda dar rentabilidad: desde temas de ecommerce hasta aplicaciones móviles, pasando por algún pequeño SaaS...
  • Este año volver a trabajar como programador itinerante, una experiencia que desgraciadamente no he podido experimentar de nuevo en 2011.

Y como decimos en mi pueblo: Feliz an nou! :).

International Open Data Hackaton 2011, en Zaragoza

Este sábado 3 de diciembre se celebra un Open Data Hackaton a nivel mundial.

¿Qué es?

Es una reunión de ciudadanos en ciudades de todo el mundo para escribir aplicaciones, liberar datos, crear visualizaciones y publicar análisis utilizando datos públicos abiertos con el fin de apoyar y animar a adoptar políticas de datos abiertos por parte de los gobiernos locales, regionales y nacionales de todo el mundo.

hacker

En Zaragoza lo hemos convocado en la oficinas de UXlearn. Plaza San Pedro Nolasco 1, 3E.
Por ahora somos poquitos y nos vendría bien que algunos más desarrolladores, diseñadores, bibliotecarios, estadísticos, periodistas y cualquier ciudadano en general; se animaran a participar de cualquier modo.

Personalmente no tengo una idea clara de qué desarrollar, ni que fuentes de datos se podría utilizar, si hacerla "simpática" o "antipática"... estoy abierto a cualquier propuesta :).

En fin, que si alguien se quiere acercar el sábado será más que bienvenido, pero casi mejor que se apunte antes en el wiki del OpenDataDay.