Hagamos un “scrap”

Recuerdo que cuando empecé a estudiar teoría de integración de aplicaciones, encontré una técnica que explotaba el HTML que se generaba en una página web para utilizarlo en un sistema destino.

En resumen, se hacía un programa para recorrer el HTML, encontrar la información requerida (por ejemplo, las últimas noticias que se muestran en la web de marca.com) y utilizarla en otro sistema (por ejemplo, una web que resume noticias de diferentes medios)

Es muy probable que si la web origen cambia su diseño, estructura y/o ubicación,  el programa fallará y el sistema destino no podrá obtener la información requerida.

Esta técnica se llamaba screen scrapping, y una solución al problema mencionado era la construcción e implementación de un servicio.

Les cuento esto pues últimamente estoy conversando con muchos desarrolladores y un tema que casi siempre sale a relucir, es que si necesitan alguna información, pues “hacen un scrap” y listo.

No les puedo compartir si me comentaron de su arquitectura o si consideraron algún criterio de disponibilidad (ok, muchas veces no tienen claro esos aspectos) pero quedé sorprendido (pues las modas vuelven y ahora vienen con herramientas muy interesantes) y a la vez preocupado (por la estabilidad de algunas web y/o apps que se ven muy interesantes)

De todo esto, les comento que cada vez que escucho algunas formas de trabajo, termino pensando en que es genial que las modas se repitan (y en el caso del scrapping, vuelvan repotenciadas), pero a veces siento que me estoy volviendo viejo al preocuparme por aspectos que parecen básicos pero están siendo “olvidados” debido a las facilidades brindadas por las nuevas tecnologías, las cuales me parecen MUY buenas 🙂

too-old

Fuente: RedBubble

Saludos,
JD

Reunionitis

Siempre pienso que la naturaleza de las reuniones es un tema un tanto relativo y otras un tanto controversial, ya que, a algunas personas les parece muy productivo definir una reunión para cerrar pendientes y a otras les parece una pérdida de tiempo juntarse para definir próximos pasos que supuestamente todos conocen.

Antes de continuar, definamos a la reunionitis como la enfermedad por estar o querer estar en una reunión, sea físicamente o por teléfono y a veces con agenda establecida para un trabajo de una o dos horas.

 

reunionitis

 

Continue reading

Los sistemas tienen vida y debemos respetarla :)

Luego de mi última publicación y de algunas conversaciones al respecto, confirmé que:

  1. Un post no cubre todo lo que puede pasar por nuestras cabezas
  2. No hay verdades absolutas
  3. Siguen –y seguirán– existiendo los dueños de la verdad

Lo que también me quedó claro es que de cierta forma hemos perdido sentido o peor aún, hemos olvidado la naturaleza de un proyecto de desarrollo de software.

Sí, es cierto que hace mucho escribí sobre lo que se entrega al finalizar un proyecto, pero luego de reflexionar sobre ello, creo que vale la pena aclarar que las soluciones o productos que se entregan, respetan un ciclo de vida, el cual desde mi punto de vista se descompone en actores, procesos y actividades.

Para esto, consideré las siguientes premisas:

  1. Todo proceso conlleva a un conjunto de actividades.
  2. Un actor puede estar involucrado de manera general a un proceso o de forma particular a una o más actividades.
  3. Para efectos prácticos, aplicación, sistema, producto y solución representarán lo mismo 🙂

Hasta el momento, mi propuesta se refleja en este diagrama:

ciclo-vida-aplicaciones

Continue reading