Qué caracteriza a un mensaje viral

Hoy me llegó un email procedente de la hija de una amiga. En el correo me decía que mañana tiene un examen. Resulta que los exámenes en algunas universidades europeas han cambiado mucho desde que yo era estudiante. Ahora la prueba consiste en que le dan un problema a un alumno y 72 horas para presentar lo mejor que se le ocurra sobre cómo resolverlo empleando cualquier medio que encuentre a su alcance. Lo cual me parece fantástico porque a fin de cuentas es la forma en la que nos enfrentamos a desafíos reales en el mundo laboral.
Los detalles operativos del caso no los voy a comentar, pero tenía mucho que ver con cómo generar viralidad, que es sobre lo que voy a escribir en este post.

Existen no pocos expertos en marketing y publicidad que opinan que la viralidad es aleatoria y que básicamente no se puede predecir si un mensaje será un bombazo o pasará mayormente desapercibido. Yo tenía una opinión un poco menos pesimista hasta que triunfó Gangnam Style. Lo que queda en pie de las teorías comúnmente aceptadas sobre factores de viralidad es como sigue.

La viralidad de un mensaje depende de su contenido y de la forma empleada para distribuirlo. Factores desglosados a continuación.

Atributos que contribuyen a hacer un contenido viral

Valor social.

El valor social es la medida en la cual el contenido proporciona relevancia social al emisor o utilidad al receptor. La relevancia se adquiere porque el contenido sea:

• Novedoso
• Sorprendente
• Hilarante
• Controvertido
• Secreto
• Extremo
• Interesante
• Útil
• Bello

Curiosamente para mi, la capacidad para apreciar la belleza no es considerada como de gran valor social, excepto por algunas minorías en Flickr o Pinterest o incluso en Tumblr, aunque esos últimos suelen compartir otro tipo de belleza normalmente con bastante poco gusto.

La gente que no es profesional de los medios comparte cosas principalmente por necesidad de aceptación social. A veces simplemente también para sentirse menos sola. A las personas les gusta hablar, sobre todo, acerca de sí mismas. Es por esto que hay tantos escritores aburridísimos, pues no escriben sobre otro tema que no sean sus propios pensamientos, peripecias y emociones.

Emocionalidad.

En general, cuanta mayor sea la carga emocional de un mensaje mayor es la probabilidad de que se redifunda. Pero hay un límite. Cuando el contenido es demasiado impactante el redifusor tiende a autocensurarse o, al menos, a emitir una versión incompleta del contenido original. El grado de respuesta emocional al mensaje lo condicionan principalmente:

• Injusticias
• Calamidades
• Grandes logros
• Grandes sacrificios
• Historias enternecedoras
• Historias divertidas

No todas las emociones aumentan la viralidad de un mensaje. En particular, una carga de tristeza o negatividad hace que un contenido sea menos viral.

Lo más eficaz suele ser cabrear a la audiencia. Muchos periódicos y bloggeros se han hecho populares dándole a los lectores una ración diaria de motivos para pasar el resto de la jornada cabreados. Mas generar indignación es una peligrosa arma de doble filo poco recomendable como táctica de comunicación para la mayoría de los productos.

Lo siguiente más eficaz después de la indignación es causar risa.

Por último, existen emociones de alto impacto pero baja viralidad. Por ejemplo, se sabe desde hace mucho tiempo que poner bebés en los anuncios aumenta las ventas (tanto que su uso está restringido. Sin embargo, el porcentaje de población que hoy día no quiere saber nada sobre bebés es tan elevado que la viralidad de mensajes de retoños se limita casi siempre a los célebres casos graciosos como “David after Dentist” o “Charlie bit my finger. Again!”

Formato.

La mayoría de la audiencia prefiere los mensajes cortos en los que predomina lo visual sobre lo textual. Les encantan las “píldoras de contenidos”. Las listas cortas: “7 cosas que podrías hacer para…” También huyen de explicaciones largas y complejas (aunque sean veraces) en favor de explicaciones sencillas y rápidas (aunque incompletas).

Historia.

A la audiencia le gustan las historias. Aunque no suelen tener paciencia para escucharlas de golpe como quien se sienta a leer El Señor de los Anillos hasta que lo termine. Las historias deben irse desarrollando a lo largo de una colección de mensajes que el público objetivo pueda ir asimilando. La continuidad de una historia por entregas sirve para mantener la atención. Atraer la atención sobre algo nuevo es más sencillo de lo que se piensa pues el cerebro es especialmente sensible a las novedades. Sin embargo, mantener la atención es muy difícil y ahí es donde una historia que se extiende en el tiempo puede ayudar a mantener a la audiencia enganchada.
No voy a ahondar en la letra pequeña de qué hace grandiosa una historia, la cual se me escapa por no ser novelista, además de que requeriría un libro entero destinado a explicarla.

Distribución de mensajes virales

Además del contenido en sí mismo, la forma en la que se distribuye el mensaje también afecta a su viralidad.

Canales.

Los medios de información y las redes sociales se pueden dividir en dos tipos: de audiencia abierta y de audiencia restringida. Los abiertos son, por ejemplo, Twitter y Youtube. Los restringidos LinkedIn y Facebook. Las redes sociales de audiencia abierta son, en teoría mejores, pero en la práctica el gran dominador de tráfico inducido a webs es Facebook. Twitter tiene serios problemas para generar tráfico y sus tasas de conversión publicitaria son demasiado bajas.

No obstante la popularidad de las redes sociales, el mejor canal viral es, sin lugar a dudas, el boca a boca. Esto es debido a que:

a) La credibilidad de un mensaje es muchísimo mayor cuando procede de alguien de nuestra confianza

b) El boca a boca llega más veces en el momento oportuno a menudo como respuesta a un comentario del receptor. Es posible segmentar la publicidad, pero a menos que se cuente con el contexto de lo que está pensando el usuario (como lo tiene Google) es muy difícil acertar en el día, hora y minuto adecuado para dar un impacto publicitario eficaz.

Detonantes.

Algunos contenidos se vuelven virales debido a un evento que genera repentino interés. Los detonantes se pueden desencadenar de forma natural pero también es posible producirlos artificialmente publicando cierta información con el fin de que la gente hable de otra que está relacionada. También es posible, por cierto, producir detonantes de conversaciones en contra de productos de la competencia. El grado de eficacia de un detonante depende del contexto en el que se produzca.

Un detonante inesperado pero de eficacia bien demostrada es el ejercicio físico. La gente comparte más después de un periodo de actividad física (eso lo sabe y puede comprobarlo cualquiera que tenga un amigo runner).

Influenciadores, imitación y prueba social.

Los psicólogos se refieren a la “prueba social” como el fenómeno mediante el cual la gente asume el mismo comportamiento que otros en un intento de hacer lo correcto en cada situación. Una prueba social fácil de ver es aquella mediante la cual, en ausencia de otros criterios, las personas asumirán que un restaurante que está más lleno será de mejor relación calidad/precio que otro justo al lado que ande vacío.

Cuando el producto alcanza cierta masa crítica los propios usuarios se convierten en “testigos sociales” y atraen activamente a otros usuarios. Esto sucedió, por ejemplo, con Facebook.

Cuando el producto no tiene aún masa crítica, hay que conseguir que la masa imite a un reducido grupo de influenciadores. Esto lo explica muy bien Malcolm Gladwell en su libro The Tipping Point publicado en 2000. Gladwell enumera tres tipos de influenciadotes: los expertos, los conectores y los vendedores. También pone ejemplos sobre cómo las estrellas de cine promueven modas. Todo es un fenómeno de monos imitadores.
Los expertos pueden ser reconocidos como tales por varios motivos. A veces porque realmente lo son, otras porque ostentan un cargo para el que se presuponen ciertos conocimientos y acceso a información privilegiada. En muchas ocasiones sin embargo los expertos simplemente se han autoproclamado como tales y sus conocimientos reales a duras penas superan los de la media de su audiencia.

Hora y día de la difusión.

Para los contenidos de corta vida, el día y la hora importan a la hora de publicar. Evidentemente no quieres publicar un hallazgo científico la misma tarde que juega el Real Madrid. Las horas de mayor audiencia es muy fácil determinarlas con una herramienta de estadísticas web estilo Google Analytics. En el caso de este blog, por ejemplo, la mayoría de los asiduos leen algo de lunes a miércoles por la mañana. Y aparte existe otro grupo que llega buscando algo a través de Google cuyos visitantes están mucho más dispersos en franjas horarias.

Post relacionados:
Qué es un producto viral.
Lo que se comparte es diferente de lo que se lee.
Tipos de personas influyentes.
Cómo hacer propaganda 2.0.

Compartir:
  • Twitter
  • Meneame
  • Facebook
  • Google Buzz
Publicado en Marketing Online | 1 comentario

Lo que sucede cuando un software se convierte en un agujero negro

Un agujero negro se empieza a formar cuando una estrella de masa al menos 2,5 veces la del Sol se convierte en una supernova e implosiona hasta formar una singularidad de la cual nada puede escapar.

De forma análoga, una aplicación de software lo suficientemente grande puede sufrir un proceso de colapso y convertirse en un agujero negro siguiendo la secuencia que viene a continuación.

Fué a Bjarne Stroustrup a quién le leí que “un sistema grande y complejo que no ha evolucionado a partir de otro más simple que funcionaba bien, no funciona y, además, es imposible arreglarlo para que funcione” (creo que esto es del libro The Design and Evolution of C++ publicado en 1994). Tal hipótesis se comprobó empíricamente muchas veces en el siglo XX y es por eso que se cambió el foco a proyectos ágiles.

De modo que es mejor empezar con un mínimo producto viable (MVP). El desafío es que aunque el producto sea inicialmente pequeño su arquitectura debe estar pensada para crecer. Ello supone un equilibrio muy difícil entre la simplicidad y la escalabilidad.

El MVP es, por lo general, una chapuza, aunque si los adoptadores tempranos están lo bastante necesitados, la empresa llega a la versión 2.0 que es la que suele tener verdadero éxito comercial. En la versión 2.0 ya se ha adquirido un buen conocimiento del problema a base de depurar la versión 1.0 pero el producto todavía lo mantiene poca gente y no ha crecido hasta un tamaño desmesurado. La versión 2.0 es una bonita estrella de tamaño mediano como nuestro Sol.

En la industria del software, con una buena versión estás en el negocio y con una mala estás fuera. Tras la versión 2.0 hay dos formas rápidas de morir: por el efecto del segundo sistema o por agujero negro.

El segundo sistema es, básicamente, rediseñarlo todo desde cero en contra del consejo de Stroustrup. Siguiendo la analogía se trata de crear una supergigante azul que pesa demasiado y genera demasiada gravedad y calor.

La dinámica del agujero negro en software

Siguiendo la secuencia principal la estrella 2.0 se convierte en una gigante roja que funcionalmente sirve para todo y no hace bien absolutamente nada. En este momento algunas cosas empiezan a pasar:

– Un grupo de desarrolladores radicales mantiene algunos puntos de vista inflexibles acerca de cómo debe ser la arquitectura del sistema.

– Al MVP se le van añadiendo funcionalidades sprint tras sprint.

– Individualmente, las funcionalidades parece que tienen sentido, pero están dictadas por las necesidades impuestas por diferentes clientes y todas juntas generan un producto complejo e inconsistente.

– Como los sprints son cortos, las prioridades cambian con frecuencia y muchas funcionalidades quedan inacabadas.

– El backlog del producto crece de forma continuada.

– Simultáneamente, cada vez se emplea una cantidad de tiempo creciente corrigiendo bugs.

– Los tests unitarios no son de gran ayuda pues aunque los módulos funcionen bien la arquitectura sigue fallando.

– Debido a la acumulación de deuda técnica, los jefes de equipo empiezan a quejarse sistemáticamente sobre la falta de recursos humanos para el desarrollo.

– Sin embargo, a pesar de agregar más recursos se incrementan los retrasos en las fechas previstas.

– Superado un determinado umbral de complejidad, se inicia un colapso cuyo desenlace fatídico es inevitable. Con cada nueva versión el software es más lento y más inestable hasta que llega un momento en el que no se dispone de ninguna versión reciente que alcance el nivel de calidad requerido para entrar en producción.

Síntomas de que la aplicación se está colapsando

– En cada versión se introducen más bugs que funcionalidades.

– Nadie confía realmente en que la última versión sea estable.

– En el dpto. de calidad ya no saben muy bién qué testear ni cómo.

– Cada vez se tarda más en sacar una versión.

– El rendimiento de la siguiente versión es sistemáticamente peor que el de la anterior.

– Empiezan a aparecer aplicaciones satélite que hacen lo mismo que debería hacer la aplicación original pero “mejor”.

– Se convocan reuniones recurrentes a diario para seguir el progreso de determinados temas.

– Los jefes de equipo críticos con la dinámica de trabajo empiezan a desaparecer de la plantilla por razones poco claras.

– El sprint board se ha convertido en lo que gobierna la estrategia de la empresa, dictando lo que se puede hacer (o no) y cuándo.

Razones del colapso

a) La arquitectura del software es tal que contiene la semilla de su propia destrucción.

b) Alguna pieza del producto causa problemas constantemente.

c) El rendimiento está sistemáticamente por debajo de lo aceptable.

d) La configuración y mantenimiento de la aplicación es extraordinariamente costosa.

Reemplazar una pieza defectuosa parece un problema fácil a primer vista, pero puede no serlo porque exista miedo de que el recambio será aún peor, o el programador que la desarrolló ya no está o existen acuerdos con terceros que obligan a usarla.

El rendimiento típicamente es malo por una o varias de la siguientes razones:

– Las peticiones de red son demasiadas.
– Los accesos a la base de datos son excesivos y/o ineficientes.
– La aplicación tiene una estructura en múltiples capas como una cebolla.
– Algunos algoritmos son demasiado costosos.

Las mayores ganancias se obtienen optimizando los recursos más lentos, por orden: red, disco, memoria y CPU.

Es frecuente que las herramientas para la gestión de la configuración sean paupérrimas. Se invierte mucho tiempo en lo que ve el cliente en detrimento de lo que necesitan los implantadores y operadores y despreciando el principio de cibernética que establece que la complejidad de cualquier sistema de control es siempre proporcional a la complejidad del sistema controlado.

Cómo eludir el agujero negro

Lo peligroso de la dinámica del agujero negro es que no es fácil percatarse de que la estrella está punto de colapsarse súbitamente. Con un producto en fase de “gigante roja” es necesario tomar medidas perentoriamente:

1. Reconocer que el producto requiere una re-ingeniería profunda.

2. Detener por completo el flujo entrante de nuevas funcionalidades.

3. Nombrar un nuevo arquitecto jefe.

4. Organizar sesiones de diseño donde todos los que tienen experiencia en el desarrollo y uso del software puedan participar en igualdad de condiciones.

5. En general, mejor evitar los comités para la toma de decisiones, pues tienden a adoptar soluciones “de compromiso” que no satisfacen por completo a nadie y carecen del coraje y la audacia necesarios para escapar del pozo gravitacional.

5. Quitar de en medio a los que obstaculizan el cambio, mandarlos un mes a la playa, o lo que sea…

6. Definir la batería de tests de aceptación de los cambios.

7. Especificar las dependencias entre los módulos y cómo se verá afectada cada parte con el cambio. Si esto no es posible, mejor pensar en abandonar el producto existente y volverlo a hacer.

8. Diseñar el plan de migración. Nunca sacar una versión que sea incompatiblle con la anterior. Por muchos problemas que resuelva, si es incompatible hacia atrás, se obligará al departamento comercial a vender el producto de nuevo abriendo una puerta de par en par a la competencia.

9. Quemar las naves. No hay vuelta atrás, o el producto se rediseña o muere, pero no se seguirá manteniendo la versión anterior pues ello implicaría igualmente la muerte.

10. Acordar el roadmap de desarrollo. No introducir nuevas funcionalidades a la espera de las cuales se encuentren los clientes. Se pueden introducir nuevas funcionalidades pero nunca condicionadas a un plazo de entrega distinto del de las necesidades intrínsecas de la re-ingeniería.

11. Inducir stress creativo. En ausencia de un plazo de entrega los programadores se relajan y empiezan a producir código muy bonito pero difícilmente rentable. Aunque no se esté a merced de las exigencias del cliente, el equipo aún tiene que sentir la presión para entregar algo que funcione bien en un período razonable de tiempo.

12. Vigilar de cerca las estadísticas de bugs y benchmarks.

13. Formar a todos los incumbentes en la nueva arquitectura. Ganarse a los campeones en cada departamento. Mentalizar a la gente de que cualquier proceso de cambio es inexorablemente traumático en alguna medida. Repartir relajantes musculares, evitar que cunda el pánico.

14. Hacer un piloto de actualización.

15. Actualizar al resto de clientes. Celebrarlo. Irse a casa.

Posts relacionados:
Windows Vista y el Efecto del Segundo Sistema.
Cómo diseñar una aplicación escalable.

Compartir:
  • Twitter
  • Meneame
  • Facebook
  • Google Buzz
Publicado en Organizando la Comunidad. Modelos de Desarrollo | Deja un comentario

Consejos para elegir un candidato o un puesto de trabajo

Shackleton Job AdDe un tiempo a esta parte me llegan ecos de que la matriz española de Habber Tec (empresa con la que estoy vinculado desde hace un año) está contratando desarrolladores. Esto me llena de alegría pues veo como un verdadero brote verde que se reactive la contratación en las empresas españolas. Esta tarde comentaba con un miembro del staff de Habber Tec las dificultades para encontrar candidatos idóneos para los puestos que requiren más competencias técnicas. La conversación me ha ayudado a rememorar mi experiencia como reclutador y como candidato, parte de la cual comparto a continuación.

1. No reclutes para cubrir un puesto de trabajo sino para crear una cultura.
Prácticamente todo el mundo contrata sólo cuando le aprieta el zapato ¿Quién iba a estar en otro caso tan chiflado como para pagar lo que cuesta la extorsión de un programador? Se crea una definición del puesto que contiene un listado interminable de requisitos técnicos y NADA acerca de la forma de pensar del candidato. Esto es un craso error. Hay estudios que indican que sólo al 11% de los candidatos fallidos hay que despedirlos por falta de competencias técnicas. El otro 89% es despedido o pide una baja voluntaria por desalineación con la cultura o los planes de carrera de la empresa.

Si eres el candidato, no aceptes una oferta de una empresa cuya cultura te parezca apestosa.

2. Contrata por actitud más que por aptitud.
¿Que actitud? Bueno, no contrates a alguien si:
• No sabes lo que le motiva.
• No siente curiosidad.
• No sabe reirse de sí mismo.
• No tiene intereses diversos.
• No harías un largo viaje con el.
• No le querrías a tu lado en una trinchera.
• Se presenta luciendo títulos.
• No han tenido nunca un trabajo de mierda.
Respecto de los dos últimos puntos, está muy bien que una persona se crea más inteligente que el resto, siempre y cuando pueda demostrarlo con algo más que con un papel. Y el cerebro humano sólo puede apreciar las cosas por comparación. Si contratas a un jóven licenciado quien sólo ha tenido trabajos relajados, bien organizados y bien pagados entonces cualquier grado de stress le parecerá excesivo, cualquier grado de organización le parecerá caótico y cualquier retribución le parecerá insuficiente.
En una entrevista, pregunta primero por los valores : pasión, tolerancia, solidaridad, motivación, autoconciencia.

Si eres el candidato, manda directamente a la porra a los que te frían a preguntas técnicas a priori. A esos no les interesa quién eres como persona. Tú podrías ser un pederasta y les daría igual. No trabajes con esa gente.

3. La cultura se come a la estrategia.
Esta frase es de Peter Drucker y alerta sobre el peligro que supone crear una cultura tan fuerte que llegue un momento en que la alta dirección no puede hacer nada contra la cultura.

Si eres el candidato, no te vuelvas “talibán”. En el momento en que abrazas totalmente la cultura de la empresa dejas de pensar independientemente y te conviertes en un fanático.

4. La diversidad no se mide en ratios de blancos vs. negros, hombres vs. mujeres o junior vs. senior.
No aporta ningún valor añadido tener una empresa multirracial, con paridad de género y buena mezcla de ímpetu juvenil con prudencia madura si todos ellos piensan igual. El desafío consiste en integrar la pluraridad dentro de la cultura, no en conseguir que todos piensen igual. Si todos piensan igual entonces el coeficiente de inteligencia total de la empresa es el mismo que el de su presidente.

Si eres el candidato, exige que la empresa respete (aunque no comparta) tu punto de vista. Si tienes una opinión vehemente en la cual discrepas con tus jefes, probablemente tú tienes razón y ellos están equivocados.

5. Crea puestos a medida de la gente excepcional.
Cuando te encuentres a una persona realmente sobresaliente, no intentes encajarla en ningún puesto prefabricado. Porque no va a encajar. Las personas que se salen de la escala casi nunca siguen las normas. Por consiguiente, en lugar de intentar imponérselas, lo mejor es establecer normas de seguridad para evitar que detonen una bomba nuclear mientras experimentan con el Uranio y por lo demás dejarles que hagan lo que quieran. No sólo hay que proteger los resultados sino también a las personas pues los genios trabajan de forma tan tozuda y obsesiva que en ocasiones causan un nivel de stress a su alrededor que la gente normal no puede soportar.

Si eres el candidato, explícale a tu jefe por qué necesitas un tratamiento aparte. Si es cierto que eres un genio probablemente también es cierto que estás pirado y necesitas ayuda. Por tanto en lugar de batallar contra todo y contra todos mejor pídele a los demás que te ayuden a sobrevivir a tu propia genialidad.

6. Pregúntate por qué se unió el empleado número 20 a tu empresa.
Si la respuesta que tienes en mente es: a) por la esperanza de opciones sobre acciones, b) por trabajar con gente más lista o c) por aceptar un desafío que nadie más puede superar. Entonces estás en un error. Pregúntale al candidato si eligiría el empleo en el caso de que sólo le quedase un año de vida.

Si eres el empleado número 20, mejor no te dejes impresionar por un golpe de suerte o una abultada ronda de inversión. No te endeudes para comprar acciones, pues probablemente estas nunca te pagarán la hipoteca. Y no andes comiendo yuca a diario en la esperanza de que dentro de tres años llegará el vesting pues a lo mejor sólo te queda un año de vida.

7. Los profesionales no responden a ofertas de empleo sino sólo a avances de carrera.
Querrás explicarle al candidato cómo va a avanzar en su carrera profesional. Por tanto, mejor si buscas candidatos que estén en teoría ligeramente por debajo del nivel que buscas y les ayudas a crecer.

8. Si te has equivocado con el candidato entonces despídele lo antes posible.
Pocas veces las segundas oportunidades con los candidatos dan algún fruto. Si no consigues hacerle encajar lo mejor es que llegueis a un acuerdo pacífico y honorable para que se marche lo antes posible.

Si eres el candidato y te sientes desalineado con tu jefe entonces bien vete bien trata de que le despidan. Por honor y salud mental, yo te recomiendo que te vayas, aunque en algunas ocasiones realmente es posible moverle la silla al de arriba. Con el jefe sólo se puede estar totalmente a favor o totalmente en contra. Si estás en algún lugar intermedio nunca llegarás a ninguna parte pues si le ascienden tú no ascenderás con él y si le despiden nadie te percibirá como un buen substituto.

Posts relacionados:
El perfil del empleado perfecto.
Porqué el talento no importa en las empresas.
Cómo hacer entrevistas de selección.

Compartir:
  • Twitter
  • Meneame
  • Facebook
  • Google Buzz
Publicado en Organizando la Comunidad. Modelos de Desarrollo, Tecnología y Empleo | Deja un comentario

Metodologías basadas en la gestión de expectativas

Estos últimos días he estado rememorando todos los proyectos en los que he participado, que desde el 95 a esta parte son unos cuantos. Recopilando esa experiencia voy llegando a la conclusión de que casi todas las metodologías comunmente empleadas se equivocan en el objetivo fundamental. A renglón seguido voy a proponer mi conjetura sobre el error de base, que se aplica no sólo a los proyectos informáticos sino también a cualquier proyecto vital.

Veamos, históricamente teníamos waterfall. Waterfall, en resumen, viene a decir que el cliente te da una serie de requisitos, digamos: el logro profesional, la casa, el coche, los niños, las vacaciones en la Costa del Sol, etc. Y tú diseñas como implementarlo: el empleo, la hipoteca, el leasing, la clínica de fertilización in vitro, la multipropiedad costera… El problema de waterfall es que resultaba muy difícil cambiar la salida del sistema una vez que se habían introducido las entradas, ya que no te puedes cambiar fácilmente de empleo, ni puedes divorciarte del banco, y a los hijos bien les quieres a morir bien preferirías haber tenido un perro según te hayas levantado de la cama ese día con el pie izquierdo o con el derecho.

Entonces alguien propuso Agile, que grosso modo es una herencia de metodologías japonesas para incrementar la productividad. El manifiesto agilista afirmó que lo importante ya no era saber exactamente desde el principio qué es lo que se quería hacer, sino maximizar la productividad y facilitar la incorporación de cambios de la mejor forma posible. Creo que fué entonces cuando aparecieron los yuppies 100% enfocados en ganar más dinero por día del que pueden razonablemente gastar.

Incrementar la productividad sin incorporar controles contínuos de calidad era suicida y es por eso que todos los equipos ágiles hacen también Test Driven Development (en la vida real el TDD es como acostarse con una persona antes de casarse con ella).

Hasta aquí teóricamente muy bien. Tenemos una idea aproximada de lo que queremos, tenemos una buena metodología de gestión de cambios y somos productivos. Excepto que por el camino se nos ha perdido el factor humano, concretamente, se nos ha olvidado cuánto miedo y cuánta frustración experimentan las personas durante el proceso de alcanzar los objetivos.

Y aquí vienen mis diez postulados sobre la gestión de proyectos basada en expectativas:

1. El cliente no sabe lo que quiere. Sabe cuales son sus objetivos de negocio. Pero no sabe cómo traducir estos objetivos en una lista de tareas técnicas. El gerente de cuenta tampoco lo sabe (porque tampoco es técnico). El único que sabe exactamente lo que hay que hacer es el programador. Pero al programador se le ocultan normalmente los objetivos de negocio. Por consiguiente, el programador va a ciegas respecto de los objetivos reales del proyecto.

2. El éxito se mide sólo en función de las expectativas. La productividad no importa. Con las herramientas modernas la productividad es tan grande que normalmente sobrepasa cualquier requisito de la demanda. El éxito de un proyecto no es lo que se alcanzó en términos absolutos, sino la diferencia entre lo que el cliente esperaba obtener y lo que obtuvo realmente. He aquí el gran malentendido de los story point. En Agile, el story point es una métrica abstracta del valor que obtiene el cliente. Se supone que cuantos más story points por sprint obtenga el cliente más satisfecho estará. Pero esto, en general, es falso. Lo que el cliente quiere realmente (aunque a veces pida otra cosa) es saber a priori cuántos story points obtendrá de forma segura por unidad de tiempo en el futuro próximo. En la vida cotidiana así es como mucha gente termina con el superpuesto directivo, la mansión, los niños, el perro, el smartphone, el superdeportivo y profundamente amargada y decepcionada.

3. La mayoría de la gente no aguanta trabajar bajo presión. La predictibilidad y la tranquilidad son mucho más importantes que la productividad. Esto es debido a que la mayoría de la gente es incapaz de gestionar la incertidumbre, pues la duda sobre lo que va a suceder les causa una ansiedad insoportable incluso cuando el resultado más probable de la incertidumbre sea un éxito rotundo. Es decir, la sensación de “éxito” en un proyecto no se percibe tanto por la velocidad a la que avanza sino por la cantidad de incertidumbre que reduce.

4. Los detalles sobre lo que está sucediendo no son para corazones sensibles. La mayoría de las personas se desmayan o entran en pánico cuando ven sangre. Es por esto, en parte, que al paciente lo sedan y a los médicos no les gusta tener público observando cómo trabajan, pues cuanta más gente haya mirando cómo está el pulso del paciente mayor es la probabilidad de que cunda el pánico si tiene un latido más rápido o lento que otro. El veto informativo no sólo se aplica al cliente o a los familiares del paciente, sino también a los propios gestores de cuenta. Por dicha razón, el Doctor House va por libre y no le comenta a nadie lo que está haciendo. Aunque si no se tratase de una ficción televisiva en la vida real a House lo habrían despedido tres veces en cada temporada por saltarse los protocolos.

5. Los planes son papel mojado, pero la planificación es imprescindible. Es imposible especificar a priori de forma completa y rigurosa todo lo que se requiere en un proyecto. Pero, por otra parte, si no se hace tal esfuerzo, a posteriori en el mismo instante en que algo salga mal (y siempre hay algo que sale mal) los incumbentes empezarán a culparse unos a otros sobre quién no se había enterado de qué. El desarrollo iterativo basado en adaptarse a las necesidades cambiantes del cliente es un plan suicida debido a que termina inexorablemente en una discusión acalorada sobre quién cambió qué y cuándo, en la cual el proveedor (aunque sea inocente) lleva siempre las de perder.

6. La metodología debe cambiar con la fase del proyecto. No era posible descubrir América calculando exactamente dónde estaba, ni agua para cuántos días se requeriría en el camino. Por otra parte, no es posible mantener un asentamiento colonial viable sin saber cuánta agua se necesita a diario. Es decir, con una metodología de colono nunca descubrirás América y con una metodología de descubridor nunca sobrevirás en América.

7. Obsesionarse con hacerlo todo bien conduce a resultados indeseados. El objetivo de un proyecto es lograr un resultado excelente y para ello hay que hacerlo todo siempre lo mejor posible. Nunca hay que despreciar las buenas prácticas pues se crearon por muy buenas razones, pero no se debe confundir el fin con los medios. Algunas personas se obsesionan tanto con las metodologías y los protocolos que estos acaban siendo un fin en si mismos. Y el día en que la metodología empieza a gobernar tu vida es que has perdido el norte, lo mismo seas un fanático del gantt o del sprint board o un fanático religioso. Las personas se aferran a rajatabla las metodologías y a los rituales porque les proporcionan una falsa sensación de seguridad.

8. Sólo un profesional puede juzgar el desempeño de otro profesional. Todos los programadores que he conocido son geniales. Y todos los médicos que he conocido son los mejores en su especialidad. Pero yo carezco de criterio para determinar si mi médico de cabecera es un milagrero o un matasanos.

9. Nunca hay que hacer caso de lo que dice la persona presuntamente a cargo. Esto es debido a que por el Principio de Peter las personas ascienden en la jerarquía hasta que no son capaces ni de formular sus propios objetivos. Hay que tener en cuenta que la explicación que da el responsable de algo consiste en un conjunto de justificaciones para demostrar porqué no es su responsabilidad. Los mayores desastres son siempre causados por los “mejores” gestores debido a la confianza ciega que la gente deposita en ellos.

10. Cualquier metodología que ignore el factor humano está condenada al fracaso. No se puede poner en práctica un proceso sin tener en cuenta cómo se sentirán las personas implicadas en ese proceso. Esto los militares lo saben muy bien y es por eso que se pone a los soldados a cantar en grupo, además de muchísimos otros rituales castrenses. Como por alguna absurda razón nos parece ridículo que los programadores se junten para cantar, lo que hemos hecho es tratar de eliminar el factor humano de la metodología, automatizarlo todo con sistemas de integración contínua y reducir al empleado a un robot que produce story points bajo una estricta supervisión. Lo cual sería una idea fantástica de no ser porque el empleado no es un robot dotado de inteligencia.

Como conclusión, todo tiene que ver con el difícil equilibrio entre nuestras grandes esperanzas y la conciencia sobre lo que podemos alcanzar realmente. Si no fracasas y te equivocas lo bastante entonces es que tus objetivos no eran lo suficientemente ambiciosos. Por otra parte, los humanos reaccionan de forma muy desagradable ante el fracaso, e incluso sólo ante la idea imaginaría de fracasar. La solución a este dilema es ser capaz de encapsular los riesgos en una caja de seguridad, de modo que si todo explota los daños estén controlados. Es como correr Fórmula 1. No se trata de ir despacito por la pista para no salirte de ella. Sino de correr a la mayor velocidad posible en la confianza de que si te sales del trazado y das tres vueltas de campana destrozarás el bólido pero tú aún conseguirás salir de él en una sola pieza.

Post relacionado: Las zonas grises de Agile.

Compartir:
  • Twitter
  • Meneame
  • Facebook
  • Google Buzz
Publicado en Organizando la Comunidad. Modelos de Desarrollo | Deja un comentario

Porqué hay que gamificar la realidad laboral

Ciertamente no seré el primero en afirmar que el mundo real no parecer ser un lugar muy agradable para las personas. Desde el inicio de la historia nos prometieron el Cielo o el Nirvana. Puede que aproximadamente un cuarto de las personas más inteligentes sean adictas a alguna substancia psicotrópica y otro cuarto piense con frecuencia en suicidarse porque no soporta la realidad. La nueva vía de escape del siglo XXI es Tron o Matrix o su equivalente real: los videojuegos.

En Europa existen aproximadamente 100 millones de gamers, 185 millones en EE.UU. y 200 millones en China. Aunque la media de juego es 1 o 2 horas al día, en el Reino Unido, Francia y Alemania hay 10 millones de gamers que se pasan más de 22 horas a la semana jugando y en EE.UU. 5 millones de personas pasan más de 40 horas a la semana enganchadas al ordenador.

No creo que sea factible adoptar una posición reaccionaria frente a los videojuegos. Están ahí para quedarse. La única forma de privar a muchos adolescentes de su videoconsola es arrancársela de sus manos rígidas y frías. Por consiguiente, lo que voy a comentar a continuación son las causas por las que tantas personas prefieren pasar su tiempo libre jugando y, en vez de limitar el uso de videojuegos, investigar cómo podríamos cambiar el mundo real para se parezca más a esas realidades virtuales diseñadas desde sus cimientos para hacernos sentir felices.

¿Qué es un juego?

Un juego se compone de cinco cosas:

1. Uno o más jugadores voluntarios.
2. Un objetivo.
3. Unas reglas.
4. Un sistema de retroalimentación de información a los jugadores.
5. Una cantidad ilimitada de reintentos.

¿Qué estado mental induce un buen juego?

Cuando el juego está bien diseñado induce rápidamente en la persona el estado de flujo (flow), en el cual se siente plenamente viva, enfocada, comprometida con la tarea y con la comunidad. Es posible entrar en flow con actividades como la pintura, el ajedrez, el fútbol o casi con cualquier trabajo. La diferencia es que lograr habilidad requerida para alcanzar el flow durante una actividad solía requerir largos y tediosos años de práctica mientras que los videojuegos están pensados para proporcionar un chute rápido de flow. A este respecto, se sabe, y muchos expertos han advertido, que las nuevas generaciones están perdiendo la capacidad de prestar atención a ninguna materia de forma profunda y prolongada. Los colegios más “modernos” además están contribuyendo al déficit de atención de los niños al intentar convertirlo todo en un juego hasta el punto de que los niños reusan y ya no pueden aprender nada si no es jugando lo cual es una seria limitación para los conocimientos que sólo pueden adquirirse estudiando concienzudamente la teoría y haciendo muchos ejercicios.

¿Por qué las personas odian los juegos en la vida real?

A las personas les encanta jugar por diversión pero detestan los juegos en la vida real porque:

1. A menudo son forzados a jugar contra su voluntad.
2. Carecen de objetivos.
3. Las reglas no se conocen, cambian dinámicamente de forma arbitraria y los tramposos abundan por doquier.
4. Las recompensas están mal diseñadas, llegan tarde o nunca llegan en absoluto.
5. Los fracasos son fecuentemente irreversibles.

En constraste con el mundo real donde (se supone que) todo está diseñado para ser lo más sencillo posible y todo el mundo ayuda a todo el mundo, los gamers se pasan una buena parte de su tiempo resolviendo puzzles gratuitos e intentando matarse entre ellos. A las personas les encantan los desafíos que las lleven al límite de sus capacidades pero la ansiedad derivada de la idea de fracasar sin opción de reintento les induce un stress insoportable. No hay diferencia química entre el eustress inducido por un videojuego y el stress cotidiano: adrenalina, aumento del ritmo cardíaco, tensión muscular, inapetencia, etc. La diferencia es meramente psicológica.

¿Cómo podemos gamificar la realidad?

Entonces, como primeros pasos para gamificar la realidad podemos:

1. Permitir que cada persona elija sus propios objetivos.
2. Proporcionar un entorno inspirador.
3. Obsesionarnos con que las reglas sean estrictas y las mismas para todos.
4. Prestar atención minuciosa a los logros de cada individuo y darles reconocimiento inmediatamente.
5. Limitar los daños que una persona puede causar(se) de manera que si falla el destrozo no sea tan grande como para resulte imposible que lo intente otra vez.

Objetivos

Es importante que los objetivos sean razonables, que los pasos necesarios para lograrlos sean claros y que las recompensas por alcanzarlos sean inmediatas. La consecución de objetivos hará que el jugador piense que está mejorando sus capacidades personales. Y, quizá aún más importante, debe ser visible el impacto de los logros en el mundo global. Esta preocupación por cambiar el mundo nunca debe menospreciarse. Yo he conocido muchos emprendedores que acabron quebrando su start-up en su afán por cambiar el mundo antes que por cambiar su cuenta de resultados. Cuando los objetivos son demasiado ambiciosos se malgastan recursos inútilmente. Eso fué lo que le sucedió a Napoleón y a Hitler. Y, cotidianamente, le sucede a las personas que aspiran a tener el trabajo perfecto, la familia perfecta, las vacaciones perfectas, la casa perfecta y un largo etcétera de requisitos innecesarios para la felicidad que conducen a la depresión, a las adicciones y a un profundo sentimiento de fracaso. La escala auténticamente épica de influencia sobre el mundo sólo puede ser alcanzada por una comunidad y nunca por un único individuo. De hecho, el individuo rara vez sabe exactamente lo que quiere en la vida y es por eso entre otras razones que es más feliz dedicándose a ser paladín de una causa mayor que sí mismo.

Los objetivos deben tener una componente social. El éxito de juegos como Apalabrados estriba en que hasta las madres pueden jugar, y formar equipo para una misión en World of Warcraft desde un cibercafé puede ser para una pareja una experiencia mejor que irse juntos de vacaciones. En los juegos retamos a un ser querido, le vencemos, o nos vence, le ayudamos a mejorar, conseguimos algo juntos. Sólo un sádico experimenta placer con un juego en el que él gana a costa de hundir al resto de jugadores en la miseria porque la supervivencia de la especie depende del progreso del grupo y no del individuo. Creo que el término que mejor expresa este concepto es “Ubuntu”, la palabra tomada del zulú y el xhosa con la que Mark Shuttleworth decidió bautizar a su fork de Debian y que aproximadamente se traduce al español como “yoy soy porque nosotros somos”.

Entorno

Con respecto al entorno, a mi me parece sorprendente la cantidad de dinero que gastan las empresas en tener oficinas en lugares emblemáticos para luego convertir su interior en un decorado gris y aburrido. El entorno no es un factor crítico. Existen grandes videojuegos con gráficos paupérrimos y muchas de las start-ups más exitosas empezaron en un garaje. Pero incluso los campus de algunas de las mayores corporaciones diseñados por eminentes arquitectos y decoradores son con frecuencia lugares inhóspitos más similares a una pirámide funeraria que a un lugar de trabajo.

Reglas

Vivimos en una sociedad que está quebrada por los tramposos. Tramposos tan grandes que se organizan en mafias para hacer trampas. Y, más aún, se las apañan para legalizar su mafia y convierten las trampas en las reglas del juego. La tolerancia social con la corrupción y su anquilosamiento en las instituciones son una de las causas principales del desaliento y el pesimismo en la población. Los militares, al menos los que yo he conocido, son quienes se toman más en serio el cumplimiento de sus propias reglas y la equidad en el reconocimiento de méritos hasta el punto de que en EE.UU. existe una discusión abierta entre el Congreso y la Corte Suprema acerca de si es delito o no mentir acerca de las medallas obtenidas (stolen valor).

Recompensas

Las recompensas habituales en las empresas son el bono de productividad, las opciones sobre acciones y el ascenso. El dinero sin ninguna duda motiva a los trabajadores. Sin embargo, los gamers ponen más empeño en su misión que la mayoría de los trabajadores a veces sólo para subir de nivel, obtener mejor puntuación en las habilidades de su avatar y publicar las estadísticas de sus logros. Cualquiera que haya abierto una cuenta de twitter o iniciado un programa de entrenamiento personalizado ha tenido la ocasión de comprobar cuán fácil es viciarse con el progreso de las estadísticas: cuántos followers se dieron de alta o baja o cuántas millas y en cuánto tiempo conseguimos correr hoy. Los colegios (al menos a los que va mi hijo) han diseñado para los niños un sofisticado sistema de recompensas basado en pegatinas, muñecos y oportunidades de hablar en público aunque todavía les falta un buen sistema con el cual el niño pueda medir él mismo su progreso a diario. Y es lo mismo para los empleados: subir su ranking y contribuir a la épica de la comunidad son factores motivadores igual, si no más, que el dinero o la cuota de poder.

Tolerancia al fracaso

Deberíamos tener en la vida real la misma resiliencia al fracaso que desarrollan los gamers. Ese convencimiento de que si te matan no pasa nada, simplemente lo vuelves a intentar infinitas veces hasta que lo consigas. En ciertos juegos tales como Tetris (para algunos el mejor juego de la historia) es imposible ganar, según se avanza, los bloques caen cada vez más rápido hasta que es imposible colocarlos y se apilan irremediablemente eliminando al jugador. En Tetris sólo se puede jugar hasta perder dejando tras la partida el mejor score posible. Sólo debería haber una forma de fallar en la vida real que es hacerlo de forma espectacular: ¡Te la pegaste! ¡GAME OVER! Y todo el mundo a celebrarlo para que lo vuelvas a intentar pues es sabido por qué fallaste, dónde se produjo tu error y qué puedes hacer para corregirlo en el próximo intento.

Compartir:
  • Twitter
  • Meneame
  • Facebook
  • Google Buzz
Publicado en Mitos, arquetipos y filosofía, Usos sociales de la tecnología, ¿Dónde estamos? ¿Hacia dónde vamos? | Deja un comentario

Pírricas Victorias Empresariales

Ayer hablé por videoconferencia con un emprendedor. Desde que emigré estoy desconectado de la farándula emprendedora de modo que me llegan menos los ecos de sus tribulaciones excepto a través de EO.

Tolstoi inició Anna Karenina con la frase “Todas las familias felices se parecen entre sí, en cambio, las infelices son desgraciadas cada una a su propia manera”. A pesar de lo grandioso de dicha novela, yo opino justamente lo contrario: todas las personas infelices se parecen entre sí pero las felices lo son cada una a su propia manera. Análogamente, los emprendedores que arruinan su vida lo hacen siempre de forma similar.

El emprendizaje trae muchas recompensas pero también es una fuente de soledad y, a menudo, de infelicidad, voy a confiar en que el café estimule mi mala memoria para recordar lo suficiente de una charla entre dos emprendedores prejubilados sobre cómo NO arruinarse la vida.

1. Tsung Tzu escribió hace miles de años que las mejores únicas guerras que valen la pena son aquellas que se ganan sin combatir pues si la tienes que combatir entonces los daños colaterales con frecuencia igualan a las ganancias y, al final, no se obtiene nada. Aplicado a los negocios, esto significa que no vale la pena que montes una empresa a menos que consigas sacarla adelante con una grado mínimo de stress personal, familiar, social y económico. De lo contrario, incluso si la empresa triunfa, será a costa de arruinar tu salud, tu matrimonio y tus amistades y para cuando seas multimillonario ya no te importará un bledo ni la fama ni el dinero.

2. Como corolario del punto (1) si te ves en la necesidad de combatir, no podrás salvar a todo el mundo. Tendrás que hacer un triaje y elegir quien “vive” y quién “muere”. Muy raramente se consigue una victoria limpia. La victoria casi siempre es gracias a argucias, traiciones, crueldades y un largo etcétera de actos cuestionables.

3. Ninguna conquista es definitiva. En el mismo instante en que se conquista un nuevo nicho de mercado, se amplian las fronteras de la empresa y aumenta el número de competidores potencialmente peligrosos. Ganar cuota de mercado provoca inmediatamente el miedo a perderla.

4. El mejor activo que puedes incorporar a una empresa es un buen cónyuge. Si no encuentras al apropiado, entonces quédate soltero o no montes la empresa. Si el cónyuge te apoya en la esperanza de que algún día os retirareis a disfrutar de los logros alcanzados, entonces acabarás inexorablemente divorciado puesto que existe una conspiración mundial de necios incompetentes y envidiosos dispuestos a hacer todo lo posible por arruinar todos y cada uno de tus días (incluídos los futuros).

5. Vas a odiar cada minuto de muchas actividades que tendrás que realizar. Repite el mantra “haz esto ahora y vive el resto de tu vida como un campeón”.

6. En vez de trabajar para construir un futuro, concéntrate en crear un presente mejor para ti mismo (y para los que te rodean). Si te parece que esto es contradictorio con el punto anterior ¡bienvenido a las paradojas del mundo real!

7. No existen días buenos versus días malos. Sólo existen días en los cuales las cosas suceden como tús esperabas versus días en los cuales las cosas no suceden como tú esperabas.

8. Por cada dos pasos hacia adelante se da uno hacia atrás, lo importante es la tendencia, no cuántos metros avanzaste un día en concreto.

9. Tener sentimientos no es un signo de debilidad. Sin sentimientos no eres valiente, lo que eres es un psicópata, y los psicópatas son con más frecuencia parásitos sociales antes que emprendedores carismáticos y apasionados. Esta confusión es más frecuente en las mujeres quienes (para mi sorpresa) organizan foros no para hablar de las empresas sino de cómo si sienten respecto de las empresas en su desconocimiento de que los varones se sienten exactamente igual excepto que por costumbre social no se les permite expresar esos sentimientos hasta que un día les revienta el corazón (de stress o de tristeza) y acaban en un abrir y cerrar de ojos directamente en la huesa.

10. Olvídate de la utopía de crear una empresa socialmente responsable y fiscalmente solidaria hasta sus últimas consecuencias. Puedes cuidar de la gente y pagar impuestos, pero si lo haces de forma ingénua la ferocidad de la competencia te echará del mercado. No estoy sugiriendo que sea necesario explotar a los trabajadores o evadir impuestos. Lo que digo es que las mayores empresas tienen siempre entramados para reducir la presión fiscal por medios legales, hacen lobby en los pasillos de las intituciones de gobierno, deslocalizan la producción donde les resulta más rentable y venden planes de carrera a sabiendas de que el candidato insensato no será muy feliz materializándolos. Si el Estado se lleva el 35% del beneficio en impuesto de sociedades entonces (grosso modo) la empresa no podrá invertir en crecer un 10% anual a menos que el margen sea (al menos) del 50% sobre un producto al que, además, le han cargado un 20% de IVA en el PVP. Paga un 8% de interés sobre las líneas de crédito para financiar los cobros a 90 días, suma las cotizaciones sociales e intenta hacer crecer la empresa a buen ritmo con jornadas semanales de 35 horas (incluídos planes de teletrabajo y conciliación familiar). Si lo consigues, escribe un libro sobre cómo lo hiciste, te harás famoso. Es decir, o empiezas con un margen bruto del 80% o con margenes del 50% lo llevas crudo, o —más difícil todavía— ¡intenta hacerlo con márgenes del 15% como tienen los distribuidores! Es por este entorno fiscal y laboral que en Europa sólo pueden crecer y prosperar las empresas de muy alto valor añadido y, por consiguiente, enormes márgenes o las empresas que operan en oligopolios donde es posible repercutir cualquier sobrecoste al cliente (eléctricas, telcos, etc.).

11. Lo más importante en un socio son sus valores porque cuando la cosa se ponga fea (y se va a poner muy fea) es lo único que quedará. Aparte de los socios, el resto de los empleados, en general, no son de fiar y es mejor considerarlos recursos humanos antes que personas. En un entorno como la alta tecnología donde no existe el desempleo es más fácil despedir al jefe que despedir a un trabajor, por consiguiente, es una práctica temeraria confiar en la lealtad de los trabajadores o, al menos, confiar en la lealtad que no se puede comprar con pagas mensuales y opciones sobre acciones. No se debe confiar en la respuesta del empleado medio bajo presión. Algunos pocos son realmente duros pero la mayoría no aguantan el tipo ante la ansiedad y el stress y, si pueden, al verse desbordados actualizan el currículum y se van a otra empresa donde se sientan menos agobiados.

12. No obstante lo anterior, los mejores líderes no se dedican a gestionar la empresa sino a ayudar a los trabajadores a crecer personalmente para que ellos hagan crecer la empresa. Es decir, tienes que invertir intensamente y sinceramente en gente que sabes casi a ciencia cierta que te dejará en la estacada tarde o temprano.

Posts relacionados:
Saṃsāra corporativo y stress del emprendedor.
Preguntas que hacen los emprendedores noveles.
Las reglas del perro viejo para los negocios.

Compartir:
  • Twitter
  • Meneame
  • Facebook
  • Google Buzz
Publicado en Emprendizaje | 1 comentario

Cómo y porqué la gente se vuelve adicta al móvil

Cruzo los aeropuertos londinenses a menudo. En sus puertas de embarque creo que es posible hacer trueque de una batería cargada de iPhone por comida, alcohol, drogas, sexo o cualquier otra cosa que uno pueda desear.

Introducción

Texting at dinnerA lo largo de los últimos cien años cada generación ha usado medios de comunicación diferentes de la anterior. Y en cada generación han habido algunas personas que se han opuesto al uso de las nuevas tecnologías por considerarlas dañinas para la salud mental.
Antaño nos regañaban por pasarnos horas enganchados del teléfono. Actualmente el “coco” es WhatsApp. No voy a defender que todos los usos de las nuevas tecnologías son buenos, pues la tecnología siempre progresa más rápido que las buenas prácticas de uso de ella. Aquí sólo consideraré adicción cuando el usuario sienta ansiedad ante la privación temporal del dispositivo independientemente de la cantidad de horas de uso diarias. Algunos estudios consideran que sólo se es adicto al móvil si se usa para sus funciones de comunicación interpersonal y no si se usa para jugar o navegar por Internet. A mi en lo sucesivo me dará igual si el usuario está enganchado al chat o si es un hikikomori que trata de escapar de la realidad permanentemente.

Opino que conviene diferenciar entre la adicción al móvil en sí misma versus la adicción a algo que sucede online lo mismo que podría suceder offline. No creo, por ejemplo, que la adicción a la pornografía o el juego online se deban vincular al smartphone. El móvil facilita jugar, o visualizar porno, pero no es la fuente de la adicción.

Existen diferentes métricas para estimar la adicción al móvil, como el Internet Addiction Diagnostic Questionnaire (IADQ), la Cell Phone Addiction Scale (MRCPAS) o la Problematic Use of Mobile Phone (PUMP) todas ellas algo técnicas en cuyos detalles no voy a entrar.

Adictos al mçovil

El mecanismo precursor de la adicción

Antes de entrar en los hallazgos sociales y estadísticos, revisemos sucintamente cómo es el proceso adictivo. La adicción se produce cuando el usuario recibe de forma repetida un alivio rápido a una situación de incomodidad hasta que desarrolla un hábito del cual ya no puede deshacerse. Es crucial, pues, que para generar adicción la recompensa esté diferida lo menos posible en el tiempo de la emergencia de la necesidad por parte del usuario. Adicionalmente, puede que la dinámica tenga un patrón ludopático (ahora lo llaman estar gamificado) y entonces el usuario no obtiene la recompensa todas las veces que lo intenta sino sólo en un porcentaje de ellas. Esta combinación de recompensa rápida con reintentos forzosos es lo que genera que los usuarios aprendan a usar de forma compulsiva el móvil. El mecanismo no sólo funciona bien con las aplicaciones conversacionales como WhatsApp o SnapChat o las actualizaciones de Facebook o los sistemas de dating estilo Tinder o Badoo, sino que se aplica prácticamente a todas las aplicaciones. Por ejemplo, es fácil comprobar mirándo las estadísticas de visitas que los lectores de blogs prefieren entradas cortas de estilo píldora o listados de 5 a 10 cosas antes que explicaciones largas y complejas por muy bien elaboradas que estén. En el caso del lector de blogs lo que busca es una epifanía intelectual tras leer dos o tres párrafos. En general, es aceptado en psiquiatría que cualquier actividad que implique recompensas puede potencialmente convertirse en adictiva.

Horas de uso diarias

Según un estudio sobre 2.500 estudiantes norteamericanos realizado en 2011, en media pasan una hora y cuarenta minutos al día en Facebook y hasta tres horas diarias enviando mensajes de texto. Además, el 60% admite que podrían ser adictos a su móvil. En horas de uso según el servicio Facebook es el ganador, al parecer habiendo incluso superado recientemente a Google no sólo en horas de uso sino también número de visitas. Y no sólo eso, también es uno de los servicios más adictivos junto con Pinterest e Instagram. Twitter no aparece como adictivo y en el caso de iPod estadísticamente resulta serlo sólo para algunos varones.

Parse.ly Google vs. Facebook

Usos del móvil más relacionados con la adicción

Cuando se hicieron los mencionados estudios de 2011 y 2012, el 67% de los jóvenes entre 18 y 24 años tenía un Smartphone frente a un 53% de adultos. En conveniente señalar, además, que la temática que los Z tratan a traves del chat es diferente de la Generación X. Para los X, el chat, como el SMS, son principalmente medios de comunicación operativa, para coordinar actividades o enviar mensajes rápidos. Los Z, en cambio, usan el chat también para tratar temas importantes que los X sólo discutirían en persona.

Lo que sí parece consistente a través de todos los estudios es que, al menos entre la Generación Z, lo más común es pasarse todo el día chequeando qué hay de nuevo en el móvil hasta el punto de que, según un estudio de TIME, el 75% de la gente entre 25 y 29 años duerme con el móvil.

Mobile becoming more adictive

Además de la diferencia en el propósito de uso según la edad, existen evidencias de que los hombres y las mujeres utilizan el móvil de manera diferente. Los varones lo perciben como un instrumento y las féminas predominantemente como una plataforma social. Las mujeres pasan más tiempo mandando mensajes de texto y hablan durante más tiempo por teléfono que los hombres de su misma edad. Aunque, en media, las mujeres no mandan más mensajes que los hombres, sólo emplean más tiempo en ellos. A grandes rasgos, para las mujeres el móvil es un medio para estrechar y fortalecer relaciones, mientras que para los hombres el móvil es una forma de entretenimiento. Otros estudios (Geser, 2006; Jackson, Zhao, Kolenic, Fitzgerald, Harold, Von Eye) muestran que las mujeres exhiben un nivel de dependencia superior al de los hombres. En el estudio de Geser el 25% de las mujeres respondieron afirmativamente a la pregunta “No puedo imaginarme la vida sin el móvil” frente a sólo un 9% de hombres. Prácticamente todos los estudios coinciden en afirmar que la adicción al móvil está principalmente vinculada a la relación social del adicto con otras personas. Por otra parte, las mujeres tienen menos problemas que los hombres a la hora de reconocer su adicción y, por consiguiente, les resulta más sencillo abandonar comportamientos compulsivos.

Women mobile addicts

El móvil como vía de escape

Otros estudios sugieren que más que un comportamiento aprendido, el móvil es una adicción secundaria que actúa como vía de escape de otro problema mayor, como depresión o desamor, similarmente a la gente que se va de compras para olvidarse de cualquier otra cosa.

También hay quienes correlacionan el número de horas de uso del móvil con la adición a la pornografía y el riesgo de abuso sexual en adolescentes. A mi personalmente dicha correlación me parece tan predecible que ni siquiera la considero relevante: evidentemente cuantas más horas pasa alguien delante del ordenador más probable es que esté expuesto a cualquier tipo de riesgo online.

Móviles y maternidad

Un uso que probablemente merece una mención aparte es la cantidad exhorbitante de horas empleadas por las madres en redes sociales y sitios sobre maternidad. Según las estadísticas, las redes sociales para madres tienen hasta 3 veces más horas diarias de actividad por usuario que Facebook.

Autorregulación, inteligencia emocional, stress social.

Es bien conocido que la deficiente autorregulación emocional está fuertemente vinculada con los problemas de conducta. Internet no es ninguna excepción a esta correlación general. Los individuos que tienen problemas extraordinarios para gestionar sus emociones negativas son más propensos a refugiarse tras un avatar. También existen estudios que indican que los adictos a Internet tienen mayores dificultades que la media para decodificar expresiones faciales y emocionales. Es decir, los individuos con mayor inteligencia emocional son menos propensos a volverse adictos al móvil.

Otro factor que se correlaciona positivamente con la adicción al móvil es el stress social. El stress social está vinculado a la baja autoestima, la sensación personal de bajo rendimiento y la sensación de falta de aceptación del individuo por parte del grupo. Las personas con un grado extremo de stress social ni siquiera utilizan el móvil sino que pasan su tiempo en actividades solitarias y sedentarias como ver la televisión.

Existen evidencias que muestran que las mujeres, especialmente las adolescentes, pueden sentirse muy intimidadas por las redes sociales en las cuales la popularidad se mide por el número de followers. Esto podría explicar por qué las chicas tienen más tendencia a usar aplicaciones como Shots que no publican el número de likes. Asimismo, las aplicaciones que no permiten comentarios (como Tumblr) evitan que se produzca flaming el cual puede ser emocionalmente muy hiriente para algunos usuarios.

La inteligencia emocional y el stress social varían en grado entre hombres y mujeres. Las mujeres tienen en media más inteligencia emocional pero también sufren más stress social, combinación que, a la postre, probablemente explica por qué tienen más tendencia a ser adictas al móvil que los hombres.

Uso del móvil como alternativa a otras formas de entretenimiento.

En 1992 Caldwell, Smith y Weissinger publicaron un estudio clasificando el entretenimiento en cuatro dimensiones: aburrimiento, desafío, stress y consciencia de las oportunidades y beneficios. Idealmente, el entretenimiento debería eliminar el aburrimiento, ofrecer desafíos para el crecimiento personal, liberar de stress y mostrar nuevas opciones. Pero no es infrecuente que las opciones de entretenimiento resulten aburridas, frustrantes, stressantes y poco novedosas para el individuo, especialmente en adolescentes y preadolescentes. Expresado coloquialmente, no es razonable esperar que una persona suelte de buen grado su móvil cuando la alternativa que se le ofrece es un coñazo que le agobia y no le interesa.

Según estudios sobre los motivos de uso de Internet, la personalidad del usuario está indudablemente relacionada con el uso que hace de la red. Los individuos extrovertidos que aceptan desafíos son mucho menos propensos a reemplazar las actividades sociales convencionales por horas de chat online. Los individuos que creen que su destino depende fundamentalmente de las consecuencias de sus propios actos también son menos propensos a volverse adictos que aquellos quienes creen que su suerte depende de factores externos o de otras personas.

Experiencias sensoriales durante el uso del móvil.

Cada persona percibe la realidad con distinta intensidad a través de sus sentidos. Las mujeres tienden a tener mejor olfato, ser más auditivas y percibir más cosas a través del tacto. En contraposición a los hombres que son predominantemente visuales y gustativos. Es fácil apreciar que las actualizaciones de estado de los jóvenes cada vez son menos textuales y más visuales: su estado es una imagen o un emoticono. Quizá porque es difícil escribir en el smartphone mientras se viaja en metro, o quizá porque estén perdiendo la capacidad de escribir nada bello y significativo (no lo sé). Por otro lado, parece ser que el estímulo táctil de tocar la pantalla con los dedos actúa como refuerzo del uso del móvil en personas que experimentan placer tocando cosas, lo cual podría justificar en parte por qué las mujeres pasan más tiempo que los hombres con el móvil entre las manos.

Materialismo.

El último factor de personalidad que los estudios correlacionan positivamente con la adicción al móvil es el materialismo. A mayor necesidad de tener el último modelo de smartphone mayor probabilidad de ser adicto a usarlo de forma compulsiva.

Mi opinión es que los padres tienen mucho que ver sobre este punto pues no es razonable pedirle a los hijos que dejen de obsesionarse con el móvil mientras los propios padres gastan cantidades obscenas de dinero en su smartphone último modelo.

El móvil en las aulas.

El móvil en las aulas constituye un escenario especial. Diversos estudios muestran que la presencia de móviles en la aulas reduce el rendimiento académico en aproximadamente un 6%. Además, los más beneficiados de la prohibición son los alumnos menos aventajados. El problema es que para que la medida sea eficaz es preciso aplicarla con rigor confiscando todos los teléfonos y castigando sistemáticamente a los infractores. También es posible encontrar online opiniones de profesores a favor del uso del móvil en clase con los argumentos de que: (a) es socialmente anacrónico prohibirlos, (b) mientras el profesor explica el alumno puede buscar en Internet sobre el tema y (c) se fomenta la creatividad grupal. Quizá debería haber una edad de corte. Yo mismo acudo a cualquier conferencia con un tablet y me molesta si no hay conexión. A veces busco información relacionada y a veces dejo de hacerle caso al ponente. Pero no creo que la misma política de libertad de elección del foco de atención sea buena para un niño de doce años que no sabe por qué está en clase y se distrae con el paso de una mosca.

Dependencia física del móvil

Existen estudios que sugieren que la dependencia del móvil no sólo es sólo psicológica sino también física debido a que el uso continuado del móvil modifica las partes del cerebro del usuario que controlan la atención y las emociones. Estos estudios afirman que el abuso del móvil reduce los receptores de dopamina en el cerebro hasta que el adicto no puede sentir las recompensas sin estímulos adicionales. Cada buzz del móvil provoca una pequeña descarga de dopamina y adrenalina en el usuario que si se suceden con suficiente frecuencia acaban por tornar al usuario dependiente de ellas.

Discusión sobre los efectos positivos del móvil.

Como ya he comentado en la introducción, la mayoría de los estudios realizados tienen un sesgo reaccionario hacia los efectos negativos del abuso del móvil. Disponiéndose poca información cuantitativa sobre los efectos beneficiosos de las nuevas tecnologías. Por tanto, mi discusión sobre los beneficios del uso extensivo del móvil es intuitiva y especulativa.

El móvil posibilita una conexión ininterrumpida con otras personas. Por alguna razón que no alcanzo a comprender, un elevado número de gente necesita (o cree que necesita) este línea de conversación permanente. Mi primer argumento en favor del móvil es que los jóvenes hablan más, por el medio que sea, pero hablan, y raramente las personas emplean tiempo suficiente hablando como para llegar a entenderse. Además, hablan a través de plataformas que están diseñadas para ser aproximadamente democráticas y meritocráticas. Es cierto que Facebook censura selectivamente contenidos. Y que la carrera por la popularidad en los likes y retweets propicia que los jóvenes ya no tengan personalidad sino sólo personalidad-online. Pero es que la estructura social tradicional del patio de un colegio donde existían tres o cuatro cabecillas dominantes por género y varios rebaños de followers tampoco era para nada mejor que la dinámica en las redes sociales, de hecho, la dinámica del campo de juego colegial es tan mala que aún hoy día sigue provocando que muchísimos jóvenes se refugien en la red para escapar del stress.

La actualizaciones de estado difunden rápidamente cualquier problema tanto local como global, siendo mucho más probable que el individuo reciba soporte social, en especial en aquellos casos en que debido a lo delicado del asunto el afectado no se atreve a comentarlo en persona. El móvil incrementa la transparencia y fomenta el activismo social.

El uso del móvil en paralelo con otras actividades desarrolla capacidad multitarea en el cerebro. Adiestra en la habilidad de hacer varias cosas a la vez, algo que probablemente sea imprescindible en el futuro próximo para alcanzar un rendimiento óptimo.

El uso del móvil introduce a los jóvenes en las nuevas tecnologías y les hace perder el miedo a las novedades. Un uso adecuado y moderado de algunos videojuegos (no todos) desarrolla su destreza, aumenta su tolerancia a la frustración (cuando los matan con un Game Over) y les incentiva a pensar en tácticas y estrategias para resolver puzzles y desafíos.

Conclusiones.

• La adicción al móvil es un comportamiento aprendido.
• El aprendizaje se produce mediante un sistema de recompensas rápidas.
• El inicio del aprendizaje puede ser provocado por la necesidad de escapar de la realidad.
• Una vez que se ha aprendido, es posible que se produzcan cambios en el cerebro que dificultan el desaprendizaje.
• Las conductas más adictivas son aquellas que incluyen una interacción social con otras personas.
• No existe una causa única de adicción al móvil cada persona puede serlo por motivos diferentes. Además los motivos de hombres y mujeres, en general, difieren.
• Existen factores de personalidad que se correlacionan con la tendencia al uso compulsivo del móvil: inteligencia emocional, autoestima, extraversion/intraversion, locus interno/externo, materialismo/idealismo.
• La adicción al celular puede pasar de ser meramente psicológica a ser también física.
• La superación de la adicción está fuertemente condicionada por la adecuada interacción social del individuo y por la disponibilidad de alternativas atractivas al móvil.
• Si la señal del WiFi no les tuesta el cerebro como algunos afirma, a lo mejor que se hayan vuelto medio cyborgs no resulta tan malo después de todo.

Post relacionados:
Cómo Internet modifica nuestras capacidades intelectuales y sociales.

You are your phone. (Nick Carr)
Elsewhere is the new where. (Nick Carr)

Compartir:
  • Twitter
  • Meneame
  • Facebook
  • Google Buzz
Publicado en Usos sociales de la tecnología | Deja un comentario

Seis principios de medicina aplicados al management

La medicina es una ciencia estadística. Tanto que si la gente supiera realmente hasta qué punto se basa sólo en probabilidades, iría espantada a la consulta. Es por tal motivo que los médicos fingen tan a menudo que tienen alguna certeza sobre el diagnóstico. El ejercicio de la medicina requiere de grandes conocimientos y sabiduría en igual medida. Por ello algunos de los secretos de los mejores doctores se pueden aplicar a muchos otros ámbitos, como el management o el desarrollo de software objeto de este blog.

Regla #1: El 90% de las enfermedades se curan sin intervención externa. Entonces, debido al juramento hipocrático, el médico debe hacer lo necesario para dañar al paciente lo menos posible, es decir, lo mejor probablemente es que no haga nada en absoluto. El problema es que esa no es la solución que el paciente quiere oir (es por eso que cada año se vende tanto paracetamol y amoxicilina). Igual que el cuerpo ha evolucionado a lo largo de decenas de miles de años para sobrevivir y recuperarse de las agresiones externas, las organizaciones también cuentan con mecanismos de autodefensa. Entonces, cualquier consultor sensato llamado para resolver un problema intentará intervenir lo menos posible. Este principio, llevado al extremo, se conoce entre los ingenieros como “si no está roto no intentes arreglarlo”. En ocasiones, el placebo puede incluso poner las cosas aún peor si el paciente resulta por casualidad ser alérgico al remedio.

Regla #2: Curar repetidamente a un organismo que podría curarse por si mismo acaba por privarle de su capacidad original para hacerlo. Se sabe y está más que demostrado que el abuso innecesario de antibióticos propicia la aparición de bacterias resistentes a ellos. Mi aplicación favorita de este principio a las organizaciones es la burocratización sistemática. Alguien comete un error y, para evitar que vuelva a suceder en el futuro, se crea un procedimiento. Luego otra persona comete un error diferente, y se crea otro procedimiento. Se siguen creando procedimientos hasta que la organización es el conjunto de procedimientos y, por consiguiente, no puede resolver ningún desafío nuevo que no esté contemplado en los procedimientos.

Regla #3: Principio de Pareto aplicado al diagnóstico. El 80% de las enfermedades se determinan con un diagnóstico sencillo y su cura es bien fácil bien totalmente imposible. El diagnóstico del otro 20% de las enfermedades requiere una cantidad horrorosa de tiempo. Esto lo ilustra magníficamente la teleserie del Doctor House. House nunca acierta a la primera en el diagnóstico. Pero sabe que el éxito con frecuencia es simplemente continuar donde otros abandonaron. Y en eso nadie gana a House pues en su testarudez él nunca abandona a un paciente. Análogamente, la mayoría de los consultores tiran la toalla ante los problemas difíciles. Pagados por horas, lo dejan por imposible cuando la cantidad de horas necesarias para diagnosticar y resolver el problema superan a las que podrían facturarle al cliente.

Regla #4: Un tratamiento tiene dos partes: la medicina y la forma de tomarla. Los antibióticos no son eficaces si se dejan de tomar demasiado pronto. Las metodologías tampoco si no las aplica un experto de la forma correcta. Aplicar un tratamiento durante demasiado tiempo torna al paciente adicto al remedio. Aplicarlo demasiado brevemente permite que rebrote la enfermedad. Mezclar un buen tratamiento con otro buen tratamiento pero incompatible con el primero puede tener como resultado neto consecuencias muy indeseables.

Regla #5: Si el tratamiento lógico no funciona, entonces se requiere otro tratamiento. No importa lo descabellada que parezca la alternativa. Si lo que se está haciendo, por muy bien justificable que parezca, no está funcionando, entonces hay que hacer otra cosa. A mi me gusta decir que lo que diferencia a un programador bueno de uno genial es la capacidad de este último para encontrar soluciones a problemas que desafían la lógica.

Regla #6: Sólo se le hará caso al doctor si se le atribuye ser un experto. Lo cual en management y consultoría equivale a decir que sólo le harán caso al consultor si cobra suficiente dinero por su consejo, o, en otras palabras, que es esencial fijar bien el precio por hora para tener credibilidad.

Como cierre del post, haré incapié en la diferencia entre un diagnóstico y una consulta. En el diagnóstico el paciente no sabe lo que le sucede ni tampoco cómo arreglarlo. En la consulta el paciente sabe lo que le sucede y cómo arreglarlo. La mayoría de los trabajos para las empresas son de consultoría, no de diagnóstico. Muchas de las visitas al médico también son consultas, sólo que demasiados médicos no lo saben y, por consiguiente, se ponen a hacer un diagnóstico sin haber determinado primero si el paciente sabe lo que le sucede.

Compartir:
  • Twitter
  • Meneame
  • Facebook
  • Google Buzz
Publicado en Organizando la Comunidad. Modelos de Desarrollo | Deja un comentario

Código de sólo escritura

Cada vez que me encuentro con un programador a quien le gusta programar me echo a temblar. La razón es que programar es como escribir, escribir es como hablar y hablar es más fácil que escuchar.

Los pedagogos saben por experiencia que es casi tan fácil enseñar a un niño a escribir que enseñarle a leer. El motivo es que, si bien escribir es intrínsecamente más difícil, el niño está interesado en primer lugar en que le escuchen y le entiendan antes que en escuchar él mismo ningún rollo patatero prefabricado.

Cuando me topo con un programador a quien se le llena la boca sobre la manera correcta de implementar la solución a un desafío me resulta sencillo determinar rápidamente si es (o no) tan bueno como él mismo cree. El pecado capital de los programadores es el orgullo, la ilusión de hacerse cargo, la convicción de que ellos harán (por fin) lo correcto allí donde otros menos capacitados sólo desarrollaron algo mediocre. La realidad suele ser que son optimistas sobre su capacidad de resolver un nudo gordiano porque no conocen su verdadera complejidad.

Escribir código es más divertido que leer código. Esto es porque cuando lo escribes lo que haces es plasmar en el editor los detalles de lo que tienes en la cabeza, le pones palabras a tu imaginación y eso mola; mientras que cuando lees código lo primero que necesitas es adivinar qué tenía en la cabeza la persona que lo escribió y el esfuerzo que requiere empatía no mola.

Lo que diferencia un código que simplemente resuelve un problema de otro código realmente grandioso es que este último (además de resolver el problema) está pensado para que alguien se lo lea.

Programar es explicarle todos los detalles de cómo se resuelve un problema a la persona más incapaz del mundo. Diez atributos que debe tener esta explicación para ser de escritura/lectura y no sólo de escritura son los siguientes:

1º) Debe ser posible intuir de un vistazo cual es la arquitectura general, en qué consiste a alto nivel la solución, cómo se comunican las partes entre ellas.

2º) Para que sea fácil entender la arquitectura mencionada en el punto primero, la implementación debe resolver directamente el problema y no un caso más general del cual el problema es sólo una instancia particular.

3º) No obstante el punto segundo, debe ser fácil refactorizar el código para resolver un caso más general.

3º) El código debe explicar no sólo lo que hace, sino también por qué lo hace de esa manera. Para eso se inventaron los comentarios insertados dentro del código. Escribe la puta documentación. Es ilegal vender gadgets sin un manual de uso e instrucciones de seguridad. Entonces ¿por qué das por acabado software simplemente con una licencia que dice que se entrega “tal cual”?

4º) Si no queda otro remedio que introducir código espagueti hay que documentar cuándo se introdujo, porqué y qué pasará si se elimina.

5º) Si el programa genera una excepción inmanejable automáticamente, debe ser fácil determinar dónde y por qué ha fallado.

6º) Cuando no funcione correctamente debe informar del funcionamiento degradado. No debe fallar silenciosamente.

7º) Si funciona no hay que tocarlo. Cada vez que se añade una línea de código aumenta el número de defectos software y el coste de mantenimiento. Agregar nuevo código para mejorar uno anterior (sin retirarlo de servicio) sólo es más bugs y más coste de mantenimiento. Por otra parte, todo ese horrible código espagueti del programador anterior está ahí por una razón la cual conviene saber antes de re-escribirlo para retirarlo.

8º) Salvo casos excepcionales, las funciones tendrán entre 10 y 100 líneas de extensión. No tan cortas como para no hacer nada significativo ni tan largas como para que no quepan enteras en la pantalla.

9º) La configuración del comportamiento específico para cada cliente se encontrará en un único lugar donde se especifiquen todos los parámetros que condicionan un modo de comportamiento u otro.

10º) No es suficiente con tener un patrón Modelo-Vista-Controlador, además hay que tener una capa de microservicios agrupados en servicios que el controlador pueda llamar.

En conclución: ¿Tu escribes o lees? Si sólo escribes eres un pedante. Si sólo lees careces de creatividad. El trabajo en equipo consiste en mantener una conversación con los otros programadores; es lectura/escritura.

Post relacionado: Por qué hay que enseñar a los niños a programar.

Compartir:
  • Twitter
  • Meneame
  • Facebook
  • Google Buzz
Publicado en Morfeo Think Tank, Organizando la Comunidad. Modelos de Desarrollo | 1 comentario

Computación distribuida con Docker y Mesos

De un tiempo a esta parte puedo estimar con escaso margen de error la calidad de un equipo de desarrollo por el grado de innovación en sus herramientas de despliegue de entregables. Algunos dicen que el nuevo documento de Google sobre Borg es el sucesor de aquellos ya clásicos sobre BigTable y MapReduce.

Hace no mucho desarrollábamos y ejecutábamos en El Servidor o, como mucho, en La Granja de Servidores (que eran de dos a diez). Las aplicaciones corrían sobre un servidor web, una base de datos, algún bus de integración y poco más. Pero ahora no es para nada raro que incluso una PyME tenga una decena de instancias de máquinas virtuales alojadas en algún proveedor. Y para las empresas medianas y grandes podemos estar hablando de centenares o miles de máquinas virtuales. Además, la infraestructura software se ha vuelto más compleja, almacenes atributo-valor para las imágenes, caches, soporte de sistemas de ficheros distribuidos, colas, servidores LDAP, … Replicar el entorno de producción con fines de desarrollo/testeo es un verdadero desafío, cuando no imposible, debido a la dependencia de servicios web de terceros.

Software-Hardware Matrix

El desafío de la distribución de aplicaciones no es nuevo. La primera versión de Microsoft Systems Management Server data de 1994. Aunque entonces se trataba de instalar y mantener actualizado Office en los PCs de los usuarios, más que de distribuir aplicaciones en los servidores.

Ya he escrito anteriormente que, en mi opinión, el lenguaje de programación no importa demasiado. Existen ejemplos de sitios web muy exitosos desarrollados en PHP/Zend, Python/Django, Ruby/RoR, Java/JSP o incluso C#/ASP.NET como Stackoverflow. Comunmente se cita que Facebook está desarrollado en PHP, pero para poder ejecutarlo eficientemente en las decenas de miles de servidores que necesitan tuvieron que desarrollar su propio compilador de PHP sobre la máquina virtual HHVM y una variante de PHP con tipado estático llamada Hack. La aplicación de Facebook se compila a un único binario “ballena” que se distribuye vía BitTorrent a los servidores.

Docker, Borg y Mesos son un intento de estandarizar una solución a este problema de la distribución masiva de aplicaciones en una granja con mayor número de servidores de lo que razonablemente se pudiere gestionar manualmente o con algunos simples scripts.

Previamente disponíamos de Vagrant y Puppet. Ambas fantásticas herramientas para la definición y creación de máquinas virtuales sobre VMWare o VirtualBox. La única pega de estás herramientas es que están orientadas a crear máquinas virtuales enteras. Se pueden definer variantes de la misma máquina virtual base, pero no son herramientas orientadas a la distribución de aplicaciones de software a través de un conjunto de máquinas virtuales que ya existen.

Docker

Docker es un software libre que pretende facilitar que la distribución y ejecución de aplicaciones en un conjunto de servidores se asemeje al transporte de contenedores marítimos estandarizados.

Docker fué liberado en marzo de 2013, pero creo que la primera versión relevante fue la que se liberó un año después. La diferencia es que la versión de 2014 explota la nueva funcionaldidad LXC incluída en el kernel de Linux 2.6.24 que permite aislar completamente procesos dentro de la misma máquina virtuales, dotándoles de su propia memoria, CPU, punto de montaje en disco, recursos de red, etc. Los contenedores de Docker no necesitan de un hipervisor, por consiguiente, se pueden empaquetar más eficientemente dentro de un host físico que usando una máquina virtual por cada aplicación.

Los contenedores se almacenan en repositorios de los cuales pueden ser descargados por los servidores de la granja. También es posible crear grupos de contenedores para gestionar dependencias.

Daniel J Walsh cuestiona la seguridad de los contenedores en su artículo Bringing new security features to Docker, señalando que algunos subsitemas del kernel como SELinux, /sys , /proc/sys, etc. y dispositivos /dev/mem , /dev/sd* pueden ser potencialmente vulnerables a ataques maliciosos de código en los contenedores. Tampoco es posible por ahora firmar el contenido de los contenedores y certificar su origen.

Borg

El documento publicado en abril describe la tecnología que Google lleva utilizando para gestionar sus datacenters desde hace más de una década. Es posible que la tecnología sea ya incluso obsoleta, al menos para Google donde están trabajando en la nueva versión de Borg bautizada como Omega.

Borg no usa máquinas virtuales, en teoría para mejorar la eficiencia, pero es posible también debido a que cuando empezaron a usarlo la tecnología de virtualización no estuviese aún suficientemente madura.

Los servidores de Borg se agrupan en celdas, una celda típica contiene alrededor de 10.000 servidores. Las celdas, a su vez se agrupan en clusters. Cada cluster está contenido dentro de un único datacenter y contiene usualmente una celda principal y varias celdas auxiliares más pequeñas.

Cada celda ejecuta una actividad (job) que se compone de tareas (tasks). Cada tarea es un único ejecutable con linkado estático. En cada máquina existe un alloc para cada tarea que puede ejecutar, el alloc describe las cuotas de recursos computacionales de la máquina que la tarea puede ejecutar.

En cada máquina se ejecuta de forma permanente un borglet encargado de gestionar la tareas y en cada celda se ejecutan varios borgmasters que gestionan las actividades mediante un sistema de colas. Los datos para cada tarea se almacenan por quintuplicado y se gestionan mediante un sistema Paxos.

En Borg, las actividades se dividen en dos grupos: baja latencia y procesos por lotes. Las actividades de baja latencia (como el email) reciben el 70% de los recursos mientras que aquellas que pueden tardar un tiempo arbitráriamente largo en responder reciben el 30%.

Mesos

A falta de una versión liberada de Borg, es posible utilizar Mesos el cual incluye soporte para contenedores Docker. Se puede concebir Mesos como un kernel distribuido accesible via APIs en C++, JVM, Python, y Go. La arquitectura de Mesos es similar a la de Borg. En cada máquina hay un slave daemon equivalente a un borglet y en cada cluster hay un master daemon que se corresponde con el borgmaster. Y también hay actividades (llamadas frameworks en Mesos) que están compuestas por tareas basadas en los ejecutores de Hadoop. No voy a entrar en los detalles técnicos sobre cómo Mesos hace asignación de recursos de grano fino descritos hace ya casi un lustro, simplemente reseñaré que la estrategia de asignación de recursos a las actividades influye considerablemente en el rendimiento y los interbloqueos de tareas concurrentes.

Proyectos como Spark, Storm, o Jenkins son ejemplos de aplicaciones muy diversas que pueden beneficiarse del uso de Mesos.

En combinación con Mesos es posible utilizar Marathon o Kubernetes. En muchos aspectos Mesos y Kubernetes se solapan funcionalmente en su intento de proporcionar al desarrollador un cluster de máquinas Linux que se comportan como un único sistema. Pero el acercamiento es sutilmente diferente. Kubernetes proporciona la abstracción pod (una agrupación de contenedores Docker), así cómo etiquetado de los pods para descubrimiento dinámico de servicios, balanceo de carga, y control de replicación. Mesos proporciona asignación fina de recursos para los pods a través de los nodos del cluster. En Kubernetes viene con un scheduler predeterminado mientras que en Mesos es preciso usar alguno como Yarn.

Beneficios de las nuevas tecnologías

• Utilización más eficiente de los recursos.
• Menores tiempos de latencia.
• Menor cap-ex del equipamiento.
• Menos licencias (VMs).
• Despligue más rápido y fácil de servicios a gran escala.
• Clusters de uso combinado para testeo y producción.

Post relacionado: Cosas que necesitas saber sobre el despliegue en La Nube.

Compartir:
  • Twitter
  • Meneame
  • Facebook
  • Google Buzz
Publicado en Computación en la Nube, Tecnologías Emergentes, Tecnologías Libres | Deja un comentario