Mi firme compromiso con ahorrarte tiempo parte desde el arranque, así que voy a saludarte (con mucha ilusión 😊) y hacerte una presentación rápida de quién soy, pero sólo una vez, puedes ahorrarte este párrafo en futuras ediciones. Hola, soy Jairo Trujillo, me dedico a hacer automatizaciones desde antes que la IA las pusiera de moda (no te imaginas lo que costaba en 2019 explicarle a mi entorno a qué me dedico) y mi objetivo desde hoy es devolverte horas de vida real eliminando tareas repetitivas (aunque después decidas dedicar ese tiempo a otro área de tu negocio digital, ¿quién soy yo para decirte a qué debes dedicar el tiempo que te ahorro?). Y ahora sí, vamos al grano…
En el mundo de los datos hay una máxima: no puedes construir un tejado sobre cimientos inestables. Si la información de base tiene una fisura minúscula e indetectable a simple vista, cualquier automatización (o IA) que le pongas encima va a escalar ese error hasta romper el proceso. Tener datos exactos, íntegros y de los que te puedas fiar al 100% es el paso previo imprescindible.
Hace poco, descubrí por las malas uno de los límites de JavaScript (uno de los lenguajes informáticos más utilizados en softwares en la nube). Resulta que para que este lenguaje considere un número lo suficientemente seguro como para ser procesado, debe tener, como mucho, 16 cifras (o incluso 15, según el caso). En caso de que ese número tenga más de 16 cifras, redondea. Y un ID redondeado es como si redondean tu número de teléfono, a ver quién contacta contigo.
Pues alguien a quien aprecio y que es un crack en lo suyo, que obviamente no es JavaScript, decidió que iba a guardar IDs de usuario en un campo con formato cifra, ya que, bueno, se trataba de un número. Y es la decisión más lógica del mundo: si ves un número, le asignas formato de número. A mí me podría haber pasado. El problema es que la intuición humana y la de las herramientas no siempre coinciden. Si no es una cifra con la que vayas a sumar, restar o hacer matemáticas (a nadie le importa cuánto suman los IDs de todos tus usuarios), guárdala siempre como texto.
Para conseguir el propósito por el cuál me llamó, tuve que buscar una solución. Le propuse varias ideas, que iban desde restaurar la base de datos desde el origen (sencilla de implementar, improbable de conseguir) hasta identificar uno a uno a los usuarios de su comunidad, copiar su ID, y pegarlo a mano en la fila que se corresponde con el usuario (en una nueva columna con formato texto, claro está). Puedes imaginarte la cantidad de horas que supone esto último.
Al final, pudimos restaurar la base desde el origen. ¡Qué alivio! Pero no siempre se tiene esa suerte, y es una pena que el trabajo que has estado desarrollando durante todo un año se vaya al traste (por no utilizar una expresión más gaditana) por una limitación técnica, desconocida para el gran público, pero que existe en un gran número de aplicaciones que utilizamos todos los días aquellos que nos dedicamos al digital.
Así que hoy te dejo una regla de oro para tus bases de datos (Airtable, Notion o un simple Excel): Códigos postales, teléfonos, DNIs o IDs de usuarios. Si no vas a hacer cálculos matemáticos con ello, guárdalo siempre en formato texto. Tu corazón te lo agradecerá.
Nos leemos en siguientes ediciones 😊
P.D. Indagando un poco más, descubrí que Stripe es una de las plataformas que tienen esa limitación. Por desgracia, mi cuenta aún no sufre de ese problema con el límite de 16 cifras.


Yo lo aprendí también con un ejemplo tonto, si lleva un 0 delante se lo come! Siempre formato texto!!!!