Alchups.com: Los aljibes de San Esteban

En Octubre anunciábamos el lanzamiento de la web Alchups.com, y hace meses que tenía un borrador de post sobre ello que fue cayendo en el olvido, hasta hoy. Sin ser la tipología de proyecto que haga, ni a la que quiera dedicarme a hacer habitualmente, era algo que venía de lejos y es un proyecto que me hizo mucha ilusión que viera la luz.

Hace mucho que empezábamos a hablar con Javier Viudas sobre la necesidad de documentar y dar a conocer todos los alchups (o aljibes) que hay en nuestro pueblo en una web, y al final han tenido que pasar algunos años para que esta idea que teníamos en nuestras cabezas haya podido hacerse realidad. Tenía bocetos en papel hechos y re-hechos desde hacía la tira, y antes de verano pudimos plantearnos desarrollarlo por fin.

Como se explicó a algunos medios comarcales, pudimos ejecutarlo enmarcado dentro del proyecto de limpieza y señalización de las rutas de alchups, gracias a una ayuda de la Diputación Provincial de Huesca al Ayuntamiento de San Esteban de Litera.

Como es de suponer, en este proyecto me tocó hacer un poco de todo: conceptualizar, coordinar y desarrollar.

Para conceptualización estuvimos trabajando con José Luis Lizano. Al tener mucha libertad por parte del cliente, una visión clara del proyecto y una idea bastante aproximada de los contenidos con los que íbamos a poder trabajar; pudimos avanzar bastante rápido directamente sobre bocetos en papel.

Así que partir de estos bocetos él ya pudo hacer el trabajo de diseño visual.

Una foto publicada por Dani Latorre (@danilat) el

En paralelo con Razvan Puscas empezamos a programar, principalmente la parte de gestión de contenidos. El backend lo implementamos con Ruby on Rails ayudándonos de algunas de las gemas habituales como devise, rspec, factory_girl o paperclip. Mientras para maquetar el gestor de contenidos utilizamos Twitter Bootstrap y añadimos mapas de Google Maps.

Cuando ya tuvimos cerrados los primeros PSDs, entró a echarnos una mano para hacer la maquetación de la web pública Guillermo Latorre (antes de ser nombrado CEO :)). Sass, Bourbon, Restive…

Una foto publicada por Dani Latorre (@danilat) el

Con eso quedaba unir el trabajo de todos y finiquitar detalles para empezar con la carga y gestión de contenidos.

La mayor parte de la aplicación encajaba bien con la rails way y resultó muy rápido de implementar, pero además tuvimos que hacer algunas cosillas un poco raras. Para la carga inicial de datos tuvimos que importar ficheros CSV y transformar las coordenadas desde UTM a latitud/longitud. Mientras que para pintar las rutas y el término municipal en el mapa escribimos un parser de KML para luego pasarlo a JSON/JS y poder usarlo con Google Maps.

En cuanto al despliegue, lo tenemos hospedado en heroku y para le almacenamiento de imágenes utilizamos Amazon S3.

Al ser un proyecto financiado con fondos públicos es norma de la casa el hacerlo en abierto desde el principio. Así que el código está disponible para el que quiera utilizarlo o para quien quiera conocer nuestras vergüenzas en más detalle en un repositorio de github. La licencia elegida fue la Affero GPL.

Así que nada, si un día os pasáis cerca de San Esteban de Litera, os propongo ese plan :)

Semanas 398 y 399

Este par se semanas hemos tenido festivo local y por eso no tenía demasiado lío para poder escaparme a Bilbao un año más para asistir a la Bilbostack. Y como siempre me lo he pasado muy bien, es un evento muy social, pero aún así me quedé con las ganas de hablar con alguna gente.

Pude acercarme al fin a unas Geeks Talks, que he perdido totalmente la rutina de ir y dudo mucho de ser capaz de recuperarla en el corto plazo.

Además esta semanas eché una mano en organizar el FridayDojo de Refactoring de Angular y el Zaragozarb con los amigos de Spines. En ambas charlas no se habló tanto de lo geniales que son los respectivos frameworks elegidos en cuestión (por mucho que lo puedan ser o no), si no que se ponía sobre la mesa el tema de cómo “protegerse” de ellos. Y cómo cada uno intentaba conseguir el equilibrio entre tratar de abstraerse y desacoplarse de estos frameworks, con el sacarle el mayor partido a la productividad que prometen a la hora de escribir código.

Hemos seguido trabajando algunos leads pero sin cerrar nada de cierta entidad. Aunque sí cerré una pequeña colaboración para tratar de terminar de lanzar un proyecto que ya está muy avanzado y que lleva ya mucho tiempo atascado, un proyecto basado en Refinery.

En cuanto a los proyectos y colaboraciones en marcha:

  • En Outreach Tool estuve refactorizando algunas cosas, limpiando código, actualizando algunas gemas y modificando parte de la lógica del proceso de compra de la tienda. También aprovechamos mi visita a Bilbao para hacer una pequeña reunión y vernos las caras.
  • Hice algún pequeño cambio en Bichomanía y tuvimos una comida de trabajo para ver cómo nos organizamos en los próximos meses para seguir haciendo pequeñas mejoras.
  • Con Maubic estuvimos, entre otras cosas, de despliegues a staging. Este par de semanas estuve trabajando en tratar de dejar lo más finos posibles los servicios en los que venía trabajando; además de empezar a trabajar en uno nuevo. También estuvimos revisando la cobertura de los tests, viendo algún analizador de código estático y poniéndonos ya serios con el logging en los servicios con vistas a los próximos meses.
  • Nos dieron la aceptación de One-step, así que desplegamos a producción y ya lo dejé facturado.

Buena semana.

Semana 397

Volviendo a la normalidad, ya salió una semana que pude sacar bastantes cosas. Incluido el recopilar las facturas para cumplir con la declaración trimestral.

Estuve trabajando en gestionar leads que fuero llegando después de navidades, respondiendo varios correos y hablando sobre un proyecto que parecía interesante, pero no nos terminó de encajar por varias cosas (tiempos, tecnologías…) y recomendamos a gente que pensamos que quizás pueda ayudarles.

Además estuvimos trabajando (yo la verdad que muy poco) en redactar el presupuesto formal para el posible proyecto sobre el que llevamos un tiempo trabajando.

En cuanto a lo que hay en marcha:

  • Hubo que hacer algún retoque en One-step, también en la configuración del despliegue. Así que volvemos a estar a las espera del OK del cliente final.
  • Con Maubic empecé la semana con poca dedicación dando soporte al equipo. Y acabé volviendo a una dedicación que venía siendo más habitual en semanas anteriores, para implementar y desplegar en staging un nuevo servicio y tener una sesión de trabajo para definir las siguientes tareas a realizar.
  • Continuamos trabajando en los cambios de Bichomanía, quedó pendiente resolver algunos recursos gráficos para poder lanzar los cambios de la home.
  • Como la semana empezó tranquila, aproveché para dedicar algo de tiempo a Mosica. Para coordinar y publicar un post resumen de conciertos en 2015 (como de costumbre, estas cosas dan más trabajo de lo que parece) y dedicarle algo de tiempo a hacer unas mejoras en la aplicación móvil, pero que se quedaron a medias.
  • Tuvimos una reunión para hablar del diseño visual de Outreach Tool, que va a quedar un poco a la espera de tener listos los prototipos de productos físicos.

Buena semana.

Semanas 393, 394, 395 y 396

Un mes sin retro, ahí es nada!! Un mes con la mezcla de un pico de trabajo antes de navidades y el posterior bajón de las propias navidades (festivos, cenas, algún que otro día en el pueblo, votar y otro compromisos varios). Al haber pasado tantos días, y con haber estado a medio gas durante las últimas semanas, voy a hacer una retro bastante somera.

Tuvimos la visita de Xavi y Sergio en Zaragoza, yo estuve con ellos menos de lo que me hubiese gustado, pero pudimos juntarnos algunos ratos. Además aprovechamos su visita para convocar un nuevo FridayDojo, Refactorizando a patrones: el juego de la vida. Siempre es un placer juntarse con los amigos de La CovaNo Flop Squad.

Hicimos cena de autónomos, con menos afluencia que el año anterior, pero a lo tonto nos volvimos a juntar una quincena de personas.

Durante estas semanas también estuvimos de cerveceo cachirulista pre-fin de año, como viene siendo habitual en los últimos años. Dónde siempre aprovechamos a ver y charlar con alguna de la gente que vive y trabaja fuera de Aragón.

Durante estas semanas estuvimos trabajando en una propuesta conjunta, teniendo también reuniones de equipo y alguna sesión de trabajo. Empieza a parecer probable que uno de los proyectos que tenemos sobre la mesa salga para adelante y podamos ponernos con ello de verdad.

Aunque no sea la tipología de proyecto que me encaje, también me estuve planteando en participar en un pequeño proyecto para ayudar a ponerlo online.

Bueno, y al fin también me puse con mi resumen anual. Un ejercicio que me cuesta bastante, pero que me fuerza a ver con perspectiva la evolución del año y a plantearme cómo enfocar el que ha empezado.

Y en cuanto a proyectos:

  • Antes de navidades tocó cerrar varias tareas con el proyecto con Maubic, para podernos ir un poco tranquilos durante esas fechas, ya que iba a haber una demo importante poco después. Desde entonces ando dando soporte y poco más, habiéndome podido centrar en cerrar otros proyectos.
  • Dejamos ya listo el tema del testing funcional, aunque se quedó parado durante las navidades y aún está pendiente facturarlo
  • Terminé con las funcionalidades de ampliación de One-step, lo dejé desplegado en el entorno de pre-producción. Tras resolver un par de bugs que surgieron, ahora estamos a la espera de la conformidad para dejarlo desplegado en producción.
  • Dediqué algo de tiempo a Mosica. Lo más destacable es que por fin tenemos blog (integrado con jekyll en la aplicación rails)
  • También estuvimos trabajando en Bichomanía, para hacer algunas mejoras. De las que todavía nos quedan pendientes algunas cosas de UI, copywriting, etc. para poner todo ello online.

Buena semana.

Un repaso a mi 2015

Acercándonos peligrosamente a mediados del mes de enero, y con varias retros semanales de retraso, aquí ando tratando de acabar de escribir lo que es un repaso de mi 2015. Que creo que dio para bastantes cosas, unas mejores que otras, así que ahí van unas cuantas.

Una de las diferencias con el año anterior es que aumentó la facturación de Biera Solutions. No sólo porque ya facturara todos los proyectos como empresa, si no a costa de dedicar mucho menos tiempo a productos propios y colaboraciones.

Otra es que a diferencia que el año anterior, que el porcentaje de facturación en Aragón apenas pasaba del 10%, este año está por encima del 70%. No sé, no me preguntéis el por qué, mi labor comercial para atraer clientes es la de siempre: ninguna.

Llevamos demasiado tiempo sin conseguir tracción en Minchador, por eso una de las cosas que intenté en varias ocasiones durante el año fue encontrar algún socio comercial, sin éxito. Conseguí que varios restaurantes probaran el servicio y recibí algún feedback bastante interesante. Durante verano estuvimos trabajando en la integración con una startup, pero la colaboración se terminó diluyendo. Y al no conseguir hacer crecer la base de usuarios, el producto no evolucionó lo que me hubiera gustado.

Tenía hacía tiempo un miniproyecto personal en el que consultar los conciertos de Zaragoza que sólo usaba yo, con la ayuda de Guillermo terminamos lanzándolo conjuntamente como Mosica. Voy dedicándole ratos sueltos para experimentar algunas cosas, tanto puramente técnicas como en darle vueltas a la captación de tráfico; pero por el momento no aspira a seguir siendo mucho más que un sideproject en el que trabajar con varios amigos.

Mientras con Nagore decidimos dejar a un lado Mhop llegando a un acuerdo con Furnit-U. Así podíamos centrar más energía en Outreach Tool (en ambos proyectos mi rol es el responsabilizarme del apartado técnico), nos hubiera gustado que hubiéramos podido lanzar la nueva web antes de final de año, pero entre unas cosas y otras se nos fue retrasado bastante. Espero que en los próximos meses lo tengamos ya todo en marcha y empecemos a ver cómo puede evolucionar este proyecto.

En cuanto a trabajos para terceros, bastante variedad, desde temas de consultoría de testing y web scraping, varios proyectos de desarrollo medianos, a un par de colaboraciones a modo de contractor.

Arranqué el año trabajando como contractor para Besepa, tratando de descargar lo posible a Alberto de la parte técnica, pero siempre con su supervisión. Durante la primera mitad del año lo combiné con un par de proyectos pequeños-medianos. Además de empezar con la migración de Bichomanía, proyecto al que aún le voy dedicando tiempos de vez en cuando.

En Junio empecé mi colaboración como contractor con Maubic. Desde entonces el proyecto en el que ando colaborando con ellos es mi principal foco de dedicación, sobre todo durante un par de meses donde mi trabajo allí fue más intenso. En este proyecto, además de programar mucho, me ha tocado hacer algunas cosas de arquitectura y ayudar a introducir herramientas y prácticas de testing. Y en ese tiempo, aparte de un pequeño proyecto y un trabajo de consultoría, trabajamos y lanzamos Alchups, un proyecto que me hacía (y hace) muchísima ilusión.

Además, las últimas semanas del año hemos empezado a definir un nuevo proyecto con un puñado de profesionales con los que tengo unas ganas locas de empezar a trabajar. Tenemos algunas cosas sobre la mesa y espero que podamos hacerlo pronto.

Durante el año hice una cosa totalmente nueva para mi SenpaiDevs, ser mentor (o senpai) de otros programadores en esta iniciativa que montamos con Néstor y Javi. Hacía un tiempo que me apetecía hacer algo así, y aunque nos consumió mucho tiempo y energía, fue una gran experiencia. Todavía estamos dándole vueltas a como enfocar la edición 2016, que queremos introducir algunos cambios pero todavía no tenemos muy claro cómo.

Con CachiruloValley repetimos el Startup Open Space, con un nivel de asistentes igual de interesante que el primer año. Nos organizamos algo mejor, en principio tenemos en mente repetir este año y mejorar varias cosas donde la cagamos un poco. Para este año uno de mis objetivos es que retomemos el ir haciendo algún evento más pequeño y que tengamos un poco de continuidad.

Y hablando de eventos, fui a bastantes menos el año pasado, estuve más recogido: BilboStack, Agile Open Space en Gijón y Software Craftsmanship Barcelona. En cuanto a los eventos locales, con más o menos continuidad he seguido asistiendo/colaborando en las quedadas de Zaragozarb, AgileAragón… además desde SenpaiDevs comenzamos a organizar los FridayDojos.

Por otro lado, el año pasado leí bastante más, un poco de literatura (que ya tocaba) y un buen puñado de libros técnicos: Extreme Programming Explained, DDD Quickly, Backbone.js Testing, Software Architecture Patterns, casi acabado Building Microservices y empezado el Growing Object-Oriented Software.

Y para finalizar, en cuanto a lenguajes de programación, este año he programado muchísimo más de lo que tenía costumbre con javascript. La culpa es de haber empezado a trabajar con node, además de que a estas alturas con tanto framework de frontend y cordova es casi imposible no hacerlo de forma habitual. También he seguido programando mucho con ruby (y rails), que siguen siendo mi elección por defecto para el tipo de proyecto que me llega habitualmente; algo con groovy (y grails) para Minchador y en un proyecto en un entorno más javero; y para dos trabajos puntuales con python (web scraping) y php (trabajo de consultoría).

Así que, aunque no sé si pasada la primera semana del año aún se estila: Feliz an nou!

Semana 392

La semana pasada fui visto y no visto. Además de por los propios días festivos: un par de días por mi pueblo, un par de comidas, etc. lo típico en este tipo de fechas, vamos.

Aún así tuve que hacer hueco para tener una tarde de sesión de trabajo para la preparación de un par de propuestas y alguna actividad más. Me escapé para hacer una prueba de nivel de inglés para un curso gratuito, veremos si entramos en el criterio de orden de inscripción para tener una buena excusa para dejar de procrastinar y ponerme a mejorar mi inglés formalmente.

Aún hubo tiempo para que surgiera una posibilidad de colaboración como contractor para programación frontend, cosa que no puedo plantearme hacer con mis compromisos actuales, además de uno futurible.

Respecto a los compromisos actuales:

  • Dediqué algunos ratos a Mosica para hacer un refactor con vistas a permitir que se puedan recibir conciertos nuevos desde la misma web. Además de algún que otro pequeño ajuste.
  • Mientras en proyectos como Bichomanía o OutreachTool estuve haciendo tareas de coordinación y revisando los respectivos trellos, además de alguna tarea de mantenimiento.
  • En el proyecto con Maubic es donde estuve trabajando más intensamente. Además de estarlo en varias nuevas funcionalidades, dediqué algo de tiempo a tratar de mejorar alguna cosa desde el punto de vista de arquitectura: por un lado mover lógica de un microservicio a otro para simplificar la orquestación; y por otro hacer algunos cambios para mejorar la resiliencia en algunos microservicios aumentando la tolerancia a errores de ciertas dependencias.

Buena semana.

Semanas 390 y 391

Toca hacer resumen de la última semana de Movember (si algún despistado quiere donar aún tiene tiempo hasta el día 9) y la primera de diciembre; mes en el que las cenas y compromisos varios se acumulan. Además de la cena Movember yo ya he tenido un par de cenas y comidas con la excusa pre-navideña estas semanas.

Con la resaca post-cena movember tuvimos FridayDojo de Refactoring Legacy Code, a lo tonto nos juntamos 12 personas. Para el tipo de dinámicas que estamos organizando creo que es un número interesante de personas, surgieron varios diferentes puntos de vista para tener algo de debate y por el momento es un tamaño muy manejable.

Me acerqué a la quedada informal de Agile Aragón sobre retrospecticas (de equipos de desarrollo). Llegué algo tarde, pero el rato que estuve se habló más que nada de las diferentes técnicas que los que estaban ahí habían probado, ya fuera con resultado exitoso o no.

Durante esta semanas también le dediqué tiempo a reuniones para un posible mini proyecto, tratar de coordinar con clientes futuras reuniones y a una sesión de trabajo para preparar un par de presupuestos diferentes de los que esperamos tener respuesta las próximas semanas.

Y acerca de lo que estamos trabajando ya:

  • El tema del testing funcional lo dejé prácticamente listo. Como quieren tener la posibilidad de lanzarlo contra varios entornos y desde diferentes navegadores, implementé una forma de soportarlo; ya sólo falta ver cómo lo enganchamos en su infraestructura con su gente de sistemas.
  • Implementé algunos de los añadidos de One-step y los dejé desplegados en producción. Para ir bien esta semana debería liquidar el resto de funcionalidades y dejarlas desplegadas en el staging.
  • En el proyecto con Maubic estuve haciendo bastante variedad de trabajo. Resolver algunos problemas con servicios desplegados, cambiar y migrar las bases de datos de staging, reescribir parte de alguna funcionalidad y seguir trabajando en funcionalidad nueva. Además se incorporó otra persona para trabajar en el backend, así que estuvimos trabajando bastante juntos; tanto revisando documentación y código, como haciendo un par de sesiones de pair programming.
  • E hice algunas tareas menores de mantenimiento en OutreachTool.

Buena semana.

Semana 389

Tercera semana de Movember, y ya a la vuelta de la esquina la cena que organizamos con La Jamonería para recaudar algunos donativos más para la causa.

Durante la semana llegamos a un acuerdo para el trabajo de consultoría de testing, en el que voy a echar una mano en montar una batería de tests funcionales base. Tuve varias reuniones y cruces de emails para posibles proyectos, alguno con vistas a muy largo plazo, y algún otro bastante más cercano en el tiempo. Y además tocó perder bastante tiempo en algún papeleo.

Vamos, que entre unas cosas y otras me pasó la semana volando y no pude dedicar prácticamente nada de tiempo a lecturas y cacharrear en mis pet-projects.

Y, aparte de trabajar en organizar mis tableros kanban para las peticiones de las últimas 2 semanas, en cuanto a proyectos:

  • Dejé listo el problema que venía dándome mal en Bichomanía. Tenemos algunas cosas a la vista todavía por mejorar, tocará ver cómo nos organizamos y priorizamos todo lo que ha ido surgiendo.
  • Hice el arranque con el tema de testing. En la startup en cuestión trabajan con PHP y yo llevaba mucho sin tocar una línea de PHP, así que dediqué un tiempo a dejar listo mi portátil y arrancar el proyecto con Composer + PHPUnit + Selenium con un test ya preparado.
  • Y mientras con Maubic tuvimos una sesión de trabajo de todo un día para hacer una revisión de vista de pájaro del trabajo para el próximo par de meses. Además, una vez ya definida el API, ya estuve dedicándome al fin el grueso de mi tiempo a implementar parte de un nuevo servicio.

Buena semana.

Semana 388

Segunda semana de Movember, en la que no he ido precisamente sobrado de tiempo, últimamente se me pasan los días volando y se me van quedando muchas cosas en el tintero.

Lo que más me motivó esta semana fue una inception para un proyecto colaborativo, por el momento hemos decidido ir un poco por debajo del radar hasta que tengamos algo que enseñar.

Durante la semana me aceptaron la propuesta para las ampliaciones de One Step y tuve una reunión para la posible colaboración en el tema de testing, todavía tengo que plantear una propuesta económica.

El fin de semana saqué algo de tiempo para el proyecto mascota de integración con toggl. Estuve reorganizando el código y empecé a trastear con React, rehaciendo la UI con varios componentes para con vistas a darle algo de interacción (muy poca).

Sobre los proyectos actuales:

  • A raíz del acuerdo entre mhop y furnit-u estuve haciendo algunos cambios en el gestor de contenidos y en el frontend.
  • Tuvimos reunión con Bichomanía para ver próximos pasos. Estuve tratando de arreglar un bug bastante puñetero que todavía tengo que rematar, y por otro lado empecé a trabajar en una batería de tests funcionales con capybara.
  • Con Outreach Tool seguí haciendo algunas cosillas de coordinación y soporte.
  • Mientras en el proyecto con Maubic estuve mejorando algunas partes de la cobertura de tests del backend, trabajando en algunos ajustes y dando soporte al equipo de frontend. También estuve estudiando la documentación para nuevas funcionalidades, empezando a definir la interfaz del API y adelantando algo de trabajo de infraestructura.

Buena semana.

Semana 387

Ha pasado la primera semana de movember, ya con algo que parece una sombra debajo de la nariz. Esta semana ya de vuelta a la normalidad y fue muy productiva; aunque tocó trabajar bastante también el fin de semana, cosa que no me hace ni puta gracia procuro evitar en la medida de lo posible.

Durante la semana volví a sacar algo de tiempo para el petproject con toggl, ya tengo un despliegue hecho en heroku en el que mis clientes ya pueden ver mi dedicación en el mes en curso.

Esta semana me llegaron otro par de posibles trabajos, en principio bastante manejables y que sí podría abordar. Por un lado un trabajo de consultoría para ayudar a un equipo a montar una infraestructura de tests para que ellos la puedan ir ampliando y mejorando; y por otro una ampliación del proyecto One step para añadir un puñado de nuevas features
propuestas.

Mientras tanto, esto es lo que dio en cuanto a trabajos propios y para terceros:

  • En Mosica finiquité una funcionalidad pendiente desde hacía semanas, tener la página de salas con sus respectivos próximos conciertos. Además estuve dedicándome a mejorar el tratamiento de datos tras la importación de de los datos abiertos de Zaragoza.
  • Hice algunos cambios internos en Alchups, nada que se aprecie en la web. El principal fue pasar de UTM a coordenadas geográficas en lo que se refiere a la geolocalización de los alchups en el gestor de contenidos, ahora todo en la web funciona con medidas en latitud y longitud.
  • Con Maubic estuvimos repasando el tema testing en backend y viendo algunos puntos de mejora a partir de los reportes de cobertura de tests, se nota que tuvimos unas semanas con mucha presión y fuimos menos exigentes de lo que veníamos siendo. También me tocó dar bastante soporte a la gente frontend y hacer algunos cambios a raíz de integrarnos; además estuvimos trabajando el envío de emails transaccionales a usuarios.
  • Dejé finiquitado y desplegado en producción el tema de integración con Delighted, ya sólo nos queda facturarlo.
  • Implementé un pequeño cambio en el proceso de compra en la tienda de Outreach Tool. También dediqué algo de tiempo en coordinar cuestiones de la web nueva.

Buena semana.