Novemade

Cómo construimos

11 productos. Un sistema de producción compartido.

11 productos no funcionan en paralelo si no se comparten las partes caras. Investigación, producción, lanzamiento y medición pasan por un único sistema interno, así que el quinto producto cuesta menos de lanzar que el primero y está mejor informado cuando lo hace.

El bucle

9 etapas, y la última alimenta la primera.

Cada producto recorre el mismo circuito. Las etapas llevan el nombre de lo que ocurre en ellas, y por eso aprender algo y actuar en consecuencia son dos etapas y no una.

  1. 01InvestigaciónSeñales y un banco de ideas por producto, puntuado por relevancia antes de hacer nada.
  2. 02DiseñoEl producto decide su propia voz, sus afirmaciones y sus límites. El sistema los rellena.
  3. 03ConstrucciónMateriales, narración y subtítulos, montados a partir del material propio de cada producto.
  4. 04LocalizaciónCada cadena en cada idioma, con la paridad entre catálogos comprobada en lugar de supuesta.
  5. 05PruebasPrimero comprobaciones automáticas, después una persona. Nada llega a una cola sin revisar.
  6. 06PublicaciónEmpaquetado por plataforma, con la publicación deliberadamente retenida tras la aprobación de una persona.
  7. 07MediciónLas señales de lanzamiento y de rendimiento vuelven al lugar donde se hizo el trabajo.
  8. 08AprendizajeLo que funcionó en un producto puede leerlo el siguiente que lo pregunte.
  9. 09MejoraEl arreglo cae en el sistema compartido, no en la copia de un producto.

Lo que garantiza el sistema

La automatización solo sirve si es seguro volver a ejecutarla.

La mayor parte del trabajo en un sistema de producción no es hacer cosas. Es asegurarse de que un reintento, una caída o un disparo duplicado no puedan causar daño, que es lo que permite que el resto sea automático.

Nada se publica dos veces

Los trabajos de contenido y de publicación se identifican mediante hashes deterministas de sus propias entradas. Un disparo duplicado, un reintento o una caída con reinicio resuelven a la misma identidad, así que el sistema no puede renderizar dos veces ni publicar dos veces.

Reintentar es siempre seguro, y eso es lo que hace que la automatización se pueda reiniciar.

Una caída reanuda, no reinicia

Cada etapa guarda su resultado antes de que empiece la siguiente. Un fallo a medio camino retoma desde la última etapa completada en lugar de repetir el trabajo caro que tiene detrás.

Una canalización larga puede fallar sin costar la ejecución entera.

El sistema nunca aprende el nombre de un producto

Todo lo que varía por producto —voz, familias de contenido, ubicación de materiales, reglas sobre lo que nunca puede afirmarse— vive en la configuración de ese producto. El código compartido la lee y nunca hace referencia directa a un producto.

Un producto nuevo es una configuración, no una bifurcación.

La repetición se mide, no se espera

Cada pieza lleva una huella de su tema, su gancho y su guion. El trabajo nuevo se compara con el historial reciente de ese producto y se rechaza cuando se parece demasiado, lo que devuelve al generador a buscar otro ángulo.

Volumen sin un feed que suene a un producto hablando consigo mismo.

Los fallos se clasifican, no se tragan

Las llamadas externas se reintentan con espera acotada y se ordenan en transitorias, permanentes y no configuradas. Una plataforma que todavía no se ha configurado es un aviso normal, nunca una caída y nunca un salto silencioso.

La diferencia entre roto y aún no conectado siempre es visible.

Las comprobaciones de calidad corren antes de que mire una persona

La salida generada se comprueba automáticamente antes de llegar a una cola, incluido si cada escena usó material real del producto y no un marcador de posición. Lo que revisa una persona ya ha pasado las pruebas mecánicas.

El tiempo de revisión se va en criterio, no en cazar fallos obvios.

Los errores se convierten en pruebas, no en anécdotas

Los fallos incómodos —una plantilla que destroza un tema ya formulado como pregunta, una entradilla que duplica un prefijo— se encontraron generando salida real y leyéndola, y después se fijaron con una prueba de regresión.

La misma clase de error no puede volver en silencio.

Un idioma se publica entero o no se ofrece

Los catálogos se comprueban en paridad con el idioma de referencia antes de que una build pase, así que un idioma no puede publicarse con la mitad de sus claves y una frase en inglés en medio de una pantalla. Donde un idioma necesita más que texto —un diseño de derecha a izquierda, una palabra compuesta más larga, una voz grabada— eso también se comprueba, en la pantalla y no en el archivo.

Diez, dieciséis o veintinueve idiomas, y en ninguno una pantalla a medio traducir.

Cada material generado sabe qué lo hizo

Los materiales producidos por un modelo llevan el modelo, su revisión exacta, su licencia y el conjunto de candidatos del que se eligieron, guardados junto al archivo. El audio grabado lleva su motor, su licencia y la medida con la que lo puntuó su propio control de calidad. Un conjunto de capturas lleva un hash por archivo.

Una duda de licencia años después es una consulta, no una investigación.

La aprobación humana se queda en el bucle

El sistema prepara, empaqueta y propone. Una persona aprueba. La publicación nunca es completamente autónoma, por diseño y no por omisión.

Escala sin ceder el control editorial.

Compruébalo tú mismo

Esta web está construida con la misma disciplina

En lugar de describir el estándar, aquí está lo que se impone en la página que estás leyendo ahora.

  • 01Una definición de marca genera cada marca, icono, favicon y tarjeta social distribuible. Nada se exporta a mano.
  • 02La canalización de materiales rechaza una captura sin pie de foto, así que ninguna imagen puede publicarse sin texto alternativo.
  • 03La compilación falla si un producto afirma tener una ficha de tienda que no tiene, o si aparece en el contenido cualquier cifra de descargas, valoración o número de usuarios.
  • 04El contraste de color se calcula en una prueba contra cada superficie sobre la que se pinta, en los dos temas.
  • 05Un arnés de navegador carga cada ruta en ocho anchos y falla si hay desbordamiento horizontal, si el menú móvil se colapsa o si un menú no se cierra.
  • 06Los enlaces internos se rastrean en cada comprobación, así que un cambio de nombre no puede dejar un enlace muerto sin que se note.
  • 07Cada número que este sitio dice sobre su propio catálogo se calcula del catálogo al compilar. Una prueba tumba la compilación si alguno se escribe a mano en una frase.
  • 08Cada producto debe tener una demo que funcione, y eso se comprueba en lugar de suponerse: añadir un producto sin demo tumba la compilación.
  • 09Un producto solo puede mostrar la etiqueta de publicado si su estado de tienda dice que la ficha es pública, y solo una ficha pública puede producir un botón de descarga.

El límite

Lo que no publicamos

Esta página describe lo que hace el sistema y lo que produce. No describe cómo se despliega. Servidores, endpoints, credenciales, nombres de máquina, rutas de almacenamiento y arquitectura de seguridad quedan en privado, no porque sean interesantes, sino porque publicarlos sería descuidado. El sitio público y los sistemas internos no comparten credenciales ni ninguna vía de control.