Las raíces de la longevidad

Want Great Longevity and Health? It Takes a Village, presenta las cosas que tienen en común las poblaciones que él llama «blue zones», las regiones con mayor longevidad del planeta (que presentan además menor índice de enfermedades asociadas al envejecimiento: cardiovasculares, artitris, psiquiátricas, etc): actividad física moderada a diario, sentido de propósito en la vida, balance vida/trabajo, relaciones intercomunitarias fuertes, dieta basada en legumbres y verduras con baja presencia de carne.

También ha presentado alguna charla en TED:

Estos días me he dado cuenta de que en 2015 he escrito sin proponérmelo un ensayo sobre la vida en una PYME de desarrollo de software del que me siento muy orgulloso. Está en las 7.400 palabras. Para convertirlo en librito convendría incluirle un glosario como anexo, para suplir la falta de enlaces complementarios. También hacer algo de trabajo para homogeneizar la lectura y eliminar la necesidad de los videos. ¿Algún consejo sobre edición, longitud, maquetación, las gestiones para conseguir el ISBN, etc?

5 pasos para una navidad de la abundancia en 2016

Este post es una propuesta de actividad/proyecto para el club indiano a lo largo de 2016. Recupera una inquietud que me surgió hace un par de navidades y que tuve que dejar de lado en éstas. Me gustaría retomarla y me parece que es más divertido con amigos!

La idea fundamental es diseñar productos inspirados en la idea de la abundancia, que nos guste regalar o con los que decorar nuestras casas en navidad. Por ejemplo: árboles de navidad controlados por arduino, una serie de postales sobre la abundancia navideña, broches para vestir durante las cenas, etc. Las posibilidades son infinitas! Al igual que infinitas las maneras de implicarse o las herramientas que se pueden usar: escribir un post sobre los mitos navideños o enviar comentarios, hacer un sketch de arduino para controlar luces y sonido, diseñar una línea gráfica o música para el producto, dedicar un tiempecito a manualidades, etc.

Para organizar los esfuerzos, os propondría una serie de fases:

  1. Las raíces de la abundancia en la navidad (online)
    • Tiempos: hasta Abril.
    • Objetivo: entender la ritualidad y mitología navideña, el origen de los objetos que usamos (árboles, luces, postales, cenas, etc), con un enfoque en la investigación de la abundancia.
    • Qué se necesita:
      • persona/equipo que dinamice la búsqueda de referencias y escritura de posts públicos.
      • los demás, aportaríamos en forma de comentarios, nuevas elaboraciones sobre las propuestas del dinamizador, etc.
    • Resultado:
      • aprendizaje general.
      • un ebook con las investigaciones que le correspondería comercializar a la persona/equipo dinamizador.
  2. Los objetos de la abundancia I (online + encuentro)
    • Tiempos: Abril / Junio.
    • Objetivo: ideación de productos.
    • Qué se necesita:
      • persona/equipo que recoja las investigaciones de la anterior fase y explore ideas concretas de productos.
      • persona/equipo que organice un encuentro con uno o varios expertos a principios de verano, que ayuden a elaborar las ideas seleccionadas.
    • Resultado:
      • aprendizaje general gracias al encuentro con expertos donde todo el mundo puede participar.
      • catálogo navideño de ideas locas para la abundancia! 🙂
      • selección de 1 o varias ideas a desarrollar y formación de equipos para desarrollarlas.
  3. Los objetos de la abundancia II (online)
    • Tiempos: Junio / Otoño.
    • Objetivo: elaboración de los productos seleccionados.
    • Qué se necesita:
      • que los equipos desarrollen las ideas.
    • Resultado:
      • prototipo funcional, que le correspondería comercializar a cada equipo.
      • documentación para que pueda ser replicado por otros.
  4. Somero: presentación de prototipos (encuentro)
    • Tiempos: ¿Otoño?
    • Objetivo: presentar en sociedad los prototipos.
    • Qué se necesita:
      • que al menos alguien de cada equipo participe en el Somero!
    • Resultado:
      • recibir feedback sobre los prototipos de gente con muchas ideas
  5. Navidad: testeo en el mundo real! (online)
    • Tiempos: Otoño / Navidad.
    • Objetivo: completar los prototipos y/o tener una pequeña tirada para regalar/decorar nuestras casas.
    • Qué se necesita:
      • que los equipos desarrollen las ideas.
    • Resultado:
      • una navidad de la abundancia!

Una organización así requiere un poco de esfuerzo, es verdad. Pero me parece que es posible hacer algo de lo que nos sintamos orgullosos sin comprometer el resto de nuestra vida y trabajo. Además me parece modular, ya que uno puede tener interés y disponibilidad para participar investigando sobre los mitos (por poner un ejemplo), pero no en las siguientes fases -o viceversa. Aunque es una actividad cultural y de juego, a la vez permite ir generando proyectos que pueden ser comercializables a futuro.

Cómo yo podría participar

La propuesta implica 1 encuentro a principios de verano, a mayores del Somero (¿en Otoño?). Todo lo demás sería online. Creo que es compatible con otras propuestas, donde me veo más participando que dinamizando.

Considero que estoy flojo para hacer una buena fase inicial de mitología/ritos y estoy deseoso por oir que a alguien le apetece liderar esta parte! Para las siguientes fases, yo me puedo comprometer a tirar más, pero evidentemente hay espacio para mucha más gente y equipos.

¿Y vosotros, os véis colaborando en algo así?

Arquitecturas para la participación

Este post cierra la serie que inicié hace unos meses sobre desarrollo de software en una PYME. En el primer post, escribría sobre cómo seleccionar tecnología; en el segundo, sobre un mecanismo para objetivar el diseño y reducir los costes de producción. En este último escribiré sobre cómo la organización del código que escribes habilita relaciones con otros.

Programar es una comunicación entre personas

«Programs must be written for people to read, and only incidentally for machines to execute»

Esta frase extraída del prólogo del mítico SICP es una de las perlas que, entre los hackers, define el buen hacer de la profesión y que pone sobre la mesa toda una declaración de intenciones por parte de Abelson y Sussman: la programación es un nuevo medio de comunicación y expresión de ideas entre personas. De este enfoque se deriva que lo fundamental a la hora escribir programas de software es hacerlo de tal manera que nuestros limitados cerebros puedan navegar rápidamente entre los múltiples detalles, con sus distintos niveles de complejidad.

Al escribir código, un primer nivel de comunicación se daría entre programadores (con otros o con nosotros mismos dentro de unos meses). La buena o mala comunicación de las ideas a través del código tendría un impacto económico que se observaría en los tiempos necesarios para la adaptación, mantenimiento y aprendizaje de un programa. Entender un programa es un acto intelectual donde entra en juego la experiencia previa, la capacidad de relación de ideas y la compresión lectora, pero también la buena maña del que lo haya escrito para hacerlo de un modo inteligible. Al igual que un ensayo, un programa requiere cohesión interna y ritmo para ser entendible.

Un segundo nivel de comunicación se daría entre programadores y analistas del dominio y/o clientes. Ese tipo de conversaciones modela cómo se comporta el sistema y se transmiten al código en forma de estructuras de datos y algoritmos.  Un programa no es más que la declaración de un proceso que tiene entradas y salidas.

El hecho de que el software refleje estas relaciones sociales es conocido desde hace décadas y cristaliza en una de las más populares leyes de la programación, la ley de Conway:

«Any organization that designs a system will produce a design whose structure is a copy of the organization’s communication structure.»

Es decir, las conversaciones, grupos y jerarquías existentes en el proyecto se trasladarán al código de manera inevitable. La arquitectura reflejará tu estructura de comunicación y poder, determinando el tipo de relaciones que puedes tener con tu entorno. Toda una profecía ciberpunk.

Pero … ¿cómo habilita o dificulta relaciones la arquitectura?

Una PYME pequeña funciona como una comunidad: aunque existen roles y división de responsabilidades (diseñador, programador, administrador de sistemas, analista), hay mucho de pluriespecialismo. Además, por el propio tamaño de empresa, en muchas ocasiones existen proyectos que se realizan con otros equipos. Existen arquitecturas o maneras de modularizar el código que te permiten que esa división del trabajo sea más efectiva. Veamos algunos ejemplos:

Diseño orientado al dominio

La programación es fundamentalmente la transcripción de las conversaciones entre programadores y analistas. Es necesario tener un un lenguaje común y existir entendimiento entre ambos para que la cosa salga bien. Una de las prácticas que más me ha ayudado a organizar el código es el diseño orientado al dominio, es decir: organizar el código en torno a la interacción de las entidades que se definen en la conversación analista-programador. Aunque parezca una obviedad, no lo es, tiene sus trampas y se hace menos de lo que parece. El impacto de esta práctica deriva de cómo facilita las conversaciones y el entendimiento del programa.

Separación de API e interfaz

Esta técnica, conocida ya por los pioneros, ha retomado fuerza en la era de la web ubicua y la arquitectura REST. Con este mecanismo de modularización, el API define el acceso a datos y acciones que permiten usar el sistema. El interfaz es un mero usuario del API. Además de beneficios técnicos, esta frontera tiene beneficios sociales: facilita una división del trabajo en aspectos muy distintos de la aplicación, que requieren conocimientos, técnicas y herramientas diferentes. Esto permite que la colaboración diseñador-programador sea más fluida.

Hay 2 ejemplos que ilustran muy bien mi experiencia. En ciertos proyectos donde creamos formularios para la introducción de datos con una aplicación de escritorio, aplicar este principio nos ha permitido que nuestros analistas (repito: analistas, no programadores ni diseñadores) hayan diseñado por sí mismos los formularios que luego los programadores integran en la aplicación. En otros proyectos, hemos contratado a empresas para que nos ayudasen a crear un API mientras nosotros nos centrábamos en el diseño de la interfaz (y viceversa). Ambas situaciones serían muy complejas de delegar (o casi imposibles) si no hubiésemos hecho un uso intensivo de este principio a la hora de desarrollar el producto.

Creación de plugins o módulos

Otra manera muy evidente de crear espacios para la colaboración es permitir añadir nuevas funcionalidades a tu software mediante la creación de plugins o módulos. Este tipo de arquitectura minimiza la barrera de entrada para que nuevos colaboradores puedan ser productivos muy pronto, ya que no necesitan conocer todo el proyecto antes de incluir una funcionalidad, sino que les basta con conocer sólo lo que necesitan.

En nuestra experiencia colaborando con un proyecto empezamos por el desarrollo de pequeñas extensiones o plugins con funcionalidades limitadas. Pasados unos meses, nos sentimos cómodos y con conocimiento suficientes de ciertas partes internas de la aplicación como para modificarlas y enviar mejoras. Los primeros plugins fueron exploratorios, nos permitieron familiarizarnos con el código y el producto; una vez confiamos, nos lanzamos a cosas mayores. Fue precisamente un aspecto técnico (la creación de plugins) el que nos habilitó para iniciar una relación comercial con el proyecto: de no existir esa posibilidad al principio, se nos hubiese hecho muy difícil como PYME invertir todo el tiempo necesario para entender un proyecto tan grande.

Estos son algunos ejemplos de cómo la arquitectura habilita o impide relaciones, pero existen otros miles de pequeños detalles. La modularización del código es fractal, influye en todas las capas de la aplicación.

Conclusión

El programador es, principalmente, un organizador de ideas y un ensayista. Necesita cierta capacidad lógica para analizar y diseñar un sistema, pero también para organizarlo de manera que habilite buenas conversaciones y una división del trabajo efectiva. Necesita entender a las personas con las que trabaja.

Por ello no me parece casual que Kent Beck, el gran recuperador de ideas de nuestra generación, apuntase que uno de los factores con más impacto a la hora de ser un buen programador es la empatía.

 

 

 

William Morris para makers

William_Morris_age_53

«To give people pleasure in the things they must perforce USE, that is one great office of decoration; to give people pleasure in the things they must perforce MAKE, that is the other use of it.»
— William Morris, The lessert arts

Morris en el siglo XIX

William Morris vive entre 1834 y 1896, entre la primera revolución industrial y la segunda.  Es decir, un período donde los beneficios de la primera industrialización no eran visibles pero sí toda su dureza (horas interminables en trabajos alienantes, ciudades no preparadas para la masificación y que se convierten en cultivo para las epidemias, etc). Por entonces, el corazón de Inglaterra es el BlackCountry, donde se ambientan las novelas victorianas de Dickens. Las arterias, son las vías de tren, que estallan en la crisis a mediados de siglo.

Es por ello que la vida de William Morris puede leerse como un resumen de los debates y fuerzas que latían bajo el siglo XIX, una sociedad de incipiente capitalismo industrial y moral victoriana. A lo largo de su vida, trabajó dos ideas básicas: por un lado, una teoría del consumo fundamentada en dotar de sentido y belleza a los objetos de la vida cotidiana; por el otro, una teoría de la producción que se sustentase en la recuperación del placer en el trabajo.

Morris y el consumo

«I do not want art for a few, any more than education for a few , or freedom for a few.»

— William Morris, The lessert arts

A mediados de siglo, culminan los esfuerzos de Henry Cole por organizar la primera exposición internacional industrial y de comercio, «The great exhibition» en 1851, que fue todo un éxito: 14.000 expositores, 100.000 artículos en exposición, 6 millones de visitantes. Aunque la idea es francesa sólo un país con debates sobre libertad de comercio recientes como Inglaterra estaba preparada por entonces para llevarla a cabo. El mismo Cole, veía la exhibición como la muestra de que Inglaterra estaba preparada para el libre comercio y la primera globalización.

Pero para Cole la exposición era también un impulso a lo que él mismo había iniciado dos años antes con la publicación de la revista «Journal of design and manufacturers»: estimular el debate del diseño en la producción en serie. En este aspecto, la exhibición fue polémica. Muchos la consideraron un horror, la confirmación de que la deshumanización del trabajo que supuso la industrialización no podía producir cosas bellas. De fondo, lo que se estaba rumiando era un debate estético: ¿son las bellas artes (pintura, escultura, …) y las artes decorativas (orfebrería, cerámica, textiles, …) la misma cosa? ¿es posible que la producción en serie integre la belleza?

Owen Jones, uno de los pioneros del diseño, decía que la decoración de los objetos no era importante:

«Ornament must be secondary to the thing decorated, wallpapers and carpets must not have any patterns suggestive of anything but a level or plain.»

Era algo que se hacía a posteriori, una vez la pieza está acabada. El barniz.

Morris, sin embargo, consideraba que la búsqueda de la belleza trascendía el arte y las actividades artísticas (pintura, escultura, etc), que el diseño de los objetos importa. Esta declaración es lo que pone a Morris en el árbol genealógico del diseño industrial. Según él, el objeto en sí mismo porta contextos y la relación que tenemos con ellos debe tener significado. La felicidad no estaría en el número de objetos que poseemos, sino en la belleza y significado que tengan. Critica, además, cómo esa diferenciación entre bellas artes y artes decorativas favorece la creación de clases sociales: los artistas, que serían personas intelectuales, gentilhombres y profesionales; los artesanos, que serían mano de obra asalariada que cobran por semanas.

Se consolida así en Morris el deseo de producir objetos bellos, de calidad y duraderos que puedan ser asequibles para todos.

Morris y la producción

De formación arquitecto, la vida de Morris es en realidad la de un renacentista: diseñador de interiores, tipógrafo, poeta, traductor, escritor de novelas de ciencia ficción, pintor, fundador de la Sociedad por la Recuperación de edificios históricos, etc. Aunque quizás por lo que hoy en día más se le conoce es por haber sido uno de los fundadores del movimiento Arts&Crafts. Y todo empezó con una casa.

Con motivo de su boda, consigue reunir a sus amigos para construir una nueva vivienda familiar como regalo a su esposa, la Red House.Philip_Webb's_Red_House_in_Upton

Al acabarla, unidos por el sentimiento cooperativo y el juego que ha supuesto esa creación inician una empresa conjunta de diseño de interiores que todavía hoy existe, y que se consolida en los siguientes años como la Morris&Co. Es en esta compañía en la que Morris puede aplicar las ideas renacentistas del trabajo desarrollando una teoría organizativa que bebe de los gremios medievales:

  • orgullo por el trabajo bien hecho
  • una relación maestro/aprendiz en las relaciones internas
  • productos de calidad, duraderos y con sentido hacia el mercado

Aunque Morris no era un ludita, consideraba aberrantes las condiciones de trabajo industriales que ponían al hombre al servicio de la máquina, desconectaban al artesano de su relación con los objetos y desposeían de placer al trabajo mismo. Tampoco era ajeno a que la industrialización suponía que el capitalista era el que tenía la relación con el mercado, no el trabajador/artesano.

Es decir, la lectura que hace Morris de la industrialización es que supone una pérdida de independencia que la clase media había ganado en el medioevo.

Morris como activista y filósofo

Morris se define a sí mismo como un socialista constructivo, que ofrece esperanza frente al socialismo destructivo que piensa que la situación actual es insoportable y horrible y la manera de superarla es conmover la sociedad a golpes hasta que se tambalee y caiga. Su objetivo es la búsqueda de la abundancia para todos:

El progreso y victoria sobre la naturaleza para generar riqueza es clara en nuestra época. Todos deberíamos ser ricos. Sin embargo existe un gran masa social explotada que no puede acceder a los bienes más básicos y muchos otros que no pueden perseguir sus disfrutes y deseos para los que la civilización es mezquina y torturadora. Los frutos del progreso nos han sido robados, impidiendo el disfrute de las tres esperanzas.

A nivel político, plantea una visión muy moderna que desarrolla principalmente en «Cómo vivimos y cómo podríamos vivir»: la competencia comercial entre naciones lleva a la guerra, la colonización y al desaprovechamiento de recursos. Como alternativa, propone una aldea global con producción y distribución coordinada en calidad/cantidad, libre comercio y movilidad de personas y el renacimiento social basado en el empoderamiento e independencia de la clase media.

A nivel individual, considera que existen 3 facetas principales que nos harán personas plenas:

  • Esperanza del descanso, o de reposar lo suficiente: seremos mejor que las bestias.
  • Esperanza de obtener un buen resultado y disfrutar de lo realizado: seremos mejor que las máquinas.
  • Esperanza por tener placer en el propio trabajo: seremos hombres.

Su programa político podría definirse como la subordinación del trabajo y capital a las necesidades de la comunidad a la que sirve. No producir objetos inútiles o sin sentido, no crear tareas vacías o no gratas.

Morris en los albores del mundo maker

Hay varias lecciones que podemos aprender de la historia de Morris:

  • la clase media como esperanza: si el cambio productivo significa algo es ganar la capacidad de vender productos diseñados por nosotros mismos en un mercado global. Es decir: apostar por la globalización de los pequeños. El enfoque es recuperar la autonomía que se perdió en la industrialización.
  • el diseño en el centro: fue medio siglo después de que Morris apostase por el diseño en los objetos cotidianos, que las modernas escuelas de diseño rusa (Vkutemas) y alemana (Bauhaus) consiguieron imponer su legado. Hoy, como entonces, el diseño es el centro de la producción.
  • productos, no artesanía: si bien el movimiento Arts&Crafts acertó el diagnóstico (integrar el arte en la producción de objetos cotidianos), erró en la receta (quedar al margen de la industrialización y la producción en masa). Fueron empresarios como Thonet, con 50 millones de sillas vendidas entre 1859 y 1930, los que llevaron su arte a las clases populares, siendo la gran tragedia de Morris (y una de las razones por las que abandonó la empresa) que su base de cliente fuesen las clases adineradas. Aunque no eran luditas, sí tardaron en crear un discurso favorable al uso de tecnología e introducirlas en su trabajo, y eso impidió que sus ideas de organización del trabajo y la sociedad tuviesen mayor recorrido.

El mundo de Morris tiene muchas similitudes con el nuestro. Vivimos, al igual que él, en un futuro muy steampunk.