066 Modelos Mentales XI
066 Modelos Mentales XI
066 Modelos Mentales XI
MENTALES XI:
INGENIERÍA
#66 | Modelos Mentales XI
EL CAPÍTULO
EN UN VISTAZO
| I NTRODUCCIÓN
Una de las cosas que más me ha llamado la atención en mi vida profesional es
en realidad una chorrada, así funciona mi cerebro. Pero siempre me ha
sorprendido que aunque yo creo que casi todos tenemos una idea intuitiva de
cómo organizar tareas, a la mayor parte de las personas con las que he
coincidido nadie les había explicado algunos conceptos que son básicos en
carreras como informática o teleco y que tienen que ver, precisamente, con cómo
organizamos tareas. O lo que es muchas veces lo mismo: con cómo diseñamos
sistemas. Que así dicho suena complicadísimo, pero vas a ver enseguida que es
una tontería.
Para empezar, un sistema es una palabra muy rimbombante para hablar de algo
que puede ser, simplemente, un conjunto de piezas o etapas que se relacionan
entre sí. Y, no, ésta no es la definición más académica que vayas a escuchar,
pero creo que nos vale. Tomemos un ejemplo muy sencillo: imagina que trabajas
en una cafetería y por las mañanas tu principal tarea es servir desayunos.
Además sólo un tipo de desayuno: un huevo pasado por agua, es decir hervido
durante tres minutos, una tostada con mantequilla y un café.
Así dicho, suena sencillo. Pero en el fondo, esta tarea tan aparentemente simple,
recoge las características básicas de un sistema de producción o de casi
cualquier proyecto. Porque significa que tienes que producir un resultado de
acuerdo, primero, a un calendario de entrega, segundo, con una calidad
aceptable y, tercero, con el menor coste posible. Básicamente, acabamos de
convertir una cafetería en una cadena de montaje.
Para empezar supongamos que para preparar el huevo tenemos que sacarlo de
la nevera y ponerlo a hervir durante tres minutos. Todo el proceso tarda tres
minutos y medio. Por otro lado, para la tostada, tenemos que coger el pan,
meterlo en la tostadora y cuando esté listo untar la mantequilla; un proceso en el
que tardamos, no sé, 4 minutos. Y para el café, como yo no tomo pues tampoco
te creas que sé calcular muy bien el tiempo, pero digamos que tarda 2 minutos
con una cafetera de esas de bar, entre que echas el café molido, pones la taza, y
sale el café.
A partir de aquí, algo tan aparentemente sencillo como una cafetería con tres
productos, se puede empezar a complicar bastante. Para empezar porque no vas
a tener un único cliente, sino muchos. Y a todos les tienes que servir sus
desayunos en un tiempo razonable desde que entran. Pero tu sistema de
producción tiene lo que se suele llamar factores limitantes o restricciones:
cuántos huevos puedes hervir a la vez, cuántas tostadas puedes tostar a la vez o
cuántos cafés se pueden preparar en paralelo. Estos factores limitantes pueden
dar lugar a algo que has oído nombrar muchas veces seguro: cuellos de botella.
Es decir, situaciones o puntos en los que el flujo de producción se para. Por
ejemplo, hasta que se libera un recurso como la tostadora.
Los cuellos de botella son muy puñeteros, porque ya puedes tener un sistema
estupendamente diseñado, que un cuello de botella en una parte minúscula del
mismo, puede echar a perder todo. De hecho, puedes tener un sistema tan
maravilloso como el cuerpo humano y que deje de funcionar simplemente por un
cuello de botella en una artería.
Antes de continuar, tengo que decir que con kaizen estoy haciendo cosas que
jamás había imaginado. Desde luego, en mi vida habría imaginado contar en un
podcast cómo se prepara un desayuno. Y menos de una forma tan friki. Pero he
usado este ejemplo como homenaje a uno de los mejores libros de gestión
empresarial que conozco y que es todo un clásico en el sector tecnológico,
aunque yo creo que es válido para cualquier sector. Lo escribió Andy Grove, que
fue CEO de Intel durante décadas y se llama “High Output Management”. Eso
sí, me temo que no lo he encontrado en castellano. El amigo Andy empieza el
libro, precisamente, hablando de la cadena de montaje del desayuno. Y después
te habla de cómo gestionar equipos, de cómo tomar decisiones o escalar
estructuras a un nivel internacional y de otro montón de temas. Así que si te
gusta la gestión empresarial, no te lo pierdas.
| I RREDUCIBILIDAD Y EMERGENCIA
Mi ejemplo favorito de esto son los bebés. Para tener un bebé, necesitamos una
mujer embarazada y 9 meses. Y podemos añadir cuantas más embarazadas
queramos a la ecuación: 2, 3 o trescientos millones de embarazadas, que lo
único que conseguiríamos es más bebes, pero el tiempo que tardaríamos en
conseguir un bebé seguiría siendo 9 meses. Ese tiempo es una característica
irreducible del sistema. Igualmente, podemos simplificar un coche al máximo,
pero nunca vamos a tener un coche de una sola pieza.
Así dicho, lo más normal es que te hayas quedado igual. Pero es un concepto
casi más filosófico que científico que lleva flotando entre nosotros desde los
tiempos de Aristóteles y que genera auténticos quebraderos de cabeza con sus
ejemplos. Y aunque pueda sonar un poco cursi, algunos de ellos son bastante
poéticos.
|A
BSTRACCIÓN
Pero, como en otras muchas cosas, Samuel tenía razón: la capacidad de trabajar
con abstracción es una de las herramientas más poderosas de algunas
ingenierías como teleco o informática. Y aunque suena todo muy raro, no es nada
especialmente complicado. Es, simplemente, una forma de mirar al mundo,
troceando la realidad para hacerla más digerible para nuestro cerebro.
Empecemos por un concepto que es mucho más probable que conozcas que el
modelo OSI: la idea de una caja negra. En un sistema, una caja negra es una
parte del sistema que no sé, o no me importa, cómo funciona, sólo sé que a
partir de una entrada genera una salida. Por ejemplo, puedo tener una caja
negra que yo llame “negocio” en la que entran un conjunto de clientes por un
lado y por el otro lado sale dinero. Lo que pase dentro, me es indiferente. Me da
igual el tipo de negocio.
Puedo fijarme en uno en concreto. En una caja negra que yo llame “cafetería”. Es
equivalente a cualquier otro negocio, ¿no? Entran clientes, sale dinero. Vale, pero
si abriera la caja para ver qué hay dentro, podría entrar en muchos detalles como
he hecho al principio del capítulo o podría entenderla como un conjunto de, por
ejemplo, dos cajas negras conectadas, una con la otra:
Como ves, las cajas negras son, simplemente, abstracciones que representan
partes de los sistemas. Nos permiten diseñar un sistema o entender su
funcionamiento conjunto, sin necesidad de entender en detalle cómo funcionan
todas sus partes.
Bien, pues yo podría sustituir esa caja por cualquier otra y que mi cafetería
siguiera funcionando. Me da igual si en una se les sirven huevos pasados por
agua y en otra pan con tomate. Sólo hay una condición imprescindible para que
las cajas sean sustituibles: que tomen el mismo tipo de entrada y lo transformen
en el mismo tipo de salida. Es decir, que entren clientes hambrientos y salgan
clientes saciados, con un ticket.
Bueno, pues estas ideas tan, tan simples, son la base de casi toda la tecnología
que te rodea. Quizás alguna vez has oído hablar en alguna reunión de cosas
como interfaces o APIs. Si no las conoces, lo único que significan esas palabras
es que, entre dos caras de cajas negras (de ahí el término inter-faz) definimos un
conjunto de reglas para que se comuniquen. Es decir, que para que la barra y el
cajero se comuniquen, decimos que es obligatorio que de la barra salgan clientes
satisfechos con un ticket. Eso es una interfaz o una API.
Eso es lo que permite que, da igual si estás usando un ordenador de una marca u
otra, si usas iOS o Android o Windows o Mac, te puedas comunicar con otro
ordenador que use una tecnología diferente.
Sin entrar en muchos más detalles, esto es en el fondo el modelo OSI que decía
Samuel. El modelo OSI es, simplemente, un conjunto de capas en las que se
divide una red de comunicaciones. Son un montón de cajas negras, siete para
ser exactos, que representan a las diferentes tareas necesarias para comunicar
información entre dos puntos y que entre ellas se conecta por interfaces. La capa
más alta sería la aplicación, tu Whatsapp, por ejemplo. Y de ahí a abajo, hay
diferentes capas que se encargan de convertir el mensaje de texto que has
mandado en pequeños paquetes de unos y ceros, añadirles la información
necesaria para que puedan viajar por la red y ser reconstruidos en el móvil de tu
primo o de transformar todos esos unos y ceros en impulsos eléctricos. Cada
capa hace su trabajo de una forma que es indiferente a las demás, siempre que
cumpla unas condiciones. Por ejemplo, a Whatsapp, le da igual que estés
conectado por wifi, por 3g, 4G o por 5G, por cable desde tu ordenador o que
estés enviando el mensaje con un indio que tienes al lado haciendo señales de
humo. Lo importante es que se envíe.
Cuando uno mira el mundo con ojos de un ingeniero, lo que intenta es trocearlo
en el número más pequeño de cajas negras que le permita entender a lo que se
está enfrentando.
Y así, con todo. Al final, claro, con tanta caja, a nadie le puede sorprender que
luego los ingenieros seamos unos cuadriculados.