Lista de comprobación para llevar a producción una app hecha con IA
Esta es la lista que recorremos en una revisión de pago, publicada porque la mayor parte la puede hacer usted mismo en una tarde. Está ordenada por lo que dolería primero, no por lo que es más fácil.
Gratis sin registro, sin correo
Antes que nada: qué está expuesto
Estas son aquellas en las que el daño ya está hecho para cuando uno se entera, así que van primero, esté construida su app como esté.
- Busque claves en el historial del repositorio, no solo en los archivos actuales. Un secreto que se subió una vez y se borró después sigue en el historial y sigue funcionando.
- Abra las herramientas de desarrollo del navegador en su propio sitio, mire la pestaña de red y compruebe qué contiene el bundle del cliente. Todo lo que puede leer el navegador lo puede leer un desconocido.
- Abra una URL que muestre sus propios datos, cierre la sesión y ábrala otra vez. Si sigue funcionando, los datos de todos los demás usuarios funcionan igual.
- Cambie el id de esa URL por el de otra persona. Este es el agujero más común del código generado, porque al generador se le pidió mostrar los datos, no comprobar quién los pide.
- Mire qué dicen sus páginas de error. Una traza de error en producción le cuenta a un desconocido la forma de su base de datos.
Después: qué pasa cuando se para
- Mate el proceso y observe. ¿Vuelve solo, o se queda muerto hasta que alguien se da cuenta?
- ¿Se enteraría? No «¿hay un panel?» — ¿le llegaría un mensaje, a un dispositivo que usted mira, antes de que le escribiera un cliente?
- Despliegue algo roto a propósito, en una copia. ¿Cuánto se tarda en recuperar la versión anterior, y sabe usted el comando sin buscarlo?
- Escriba qué pasa si el único proveedor del que depende tiene una caída. Puede decidir aceptarlo; la cuestión es decidirlo.
Después: si sus datos sobreviven
En esta es en la que la gente está más segura y se equivoca más a menudo, porque la copia de seguridad suele existir y no se ha usado nunca.
- Restaure una copia de seguridad en un entorno desechable. Hágalo de verdad. Una copia de seguridad que no se ha probado no es una copia de seguridad — es un archivo con el que uno se hace ilusiones.
- Compruebe hasta cuándo llegan hacia atrás las copias y cada cuánto se hacen. Cada noche y siete días de retención es una decisión; no saberlo no lo es.
- Compruebe que la copia no se guarda únicamente en la misma cuenta que aloja aquello de lo que es copia.
- Si la migración de su base de datos tiene un camino de reversión, léalo. Una reversión que borra una columna que un despliegue vivo todavía necesita es pérdida de datos con un nombre amable.
Después: las cosas que caducan solas
- El certificado TLS. Si no se renueva automáticamente, ponga ahora la fecha de caducidad en su calendario — si no, caducará un fin de semana.
- La renovación del dominio, y si la tarjeta que hay guardada sigue siendo válida.
- Claves de API y tokens de OAuth con caducidad, sobre todo los de los proveedores de pago y de correo.
- Los niveles gratuitos sobre los que construyó. Cambian, y el cambio llega como un correo que no va a leer.
Después: las aburridas, las de que esté bien hecho
- Toda llamada saliente tiene un tiempo límite. Una petición sin tiempo límite no falla — se queda colgada, y se lleva el proceso con ella.
- Los reintentos están acotados y solo envuelven operaciones que se pueden repetir sin peligro. Un reintento sin límite sobre «enviar dinero» no es una función de resiliencia.
- Límite de peticiones en todo lo que pueda llamar un desconocido, sobre todo el formulario de su página de captación.
- Pruebe qué pasa con una entrada muy grande y con una muy rara — un emoji, un apóstrofo, un texto pegado de 10 MB.
- Si dos personas pueden actuar en el mismo instante, pruebe eso, no un sucedáneo secuencial.
Por último: la que nadie escribe
¿Puede ejecutar esto alguien que no sea usted? Si su app solo se puede desplegar desde su portátil, con sus claves, siguiendo unos pasos que viven en su cabeza, entonces el riesgo ya no es técnico. Escriba el manual de operación — cómo ejecutarlo, cómo desplegarlo, cómo revertirlo — y déselo a alguien para que lo siga mientras usted no dice nada. Aquello en lo que se atasque es el estado real de su documentación.
Si prefiere que lo haga otro
Eso es la Revisión de producción: recorremos esta lista sobre su código y el sitio donde corre, y dejamos por escrito qué se rompe primero, cuánto cuesta cada arreglo y en qué orden hacerlos. $450, cinco días laborables, y el informe es suyo en cualquier caso.
Las preguntas que nos hacen primero
¿Esta lista es específica de las apps hechas con IA?
La lista no, el orden sí. Estas son las comprobaciones que más a menudo falla el código generado, puestas en el orden que importa cuando algo ya está en vivo y lleva usuarios, y no en el orden que usaría un manual.
¿Cuánto se tarda en recorrerla?
La sección de exposición es una tarde. El resto depende de lo que encuentre — y no encontrar nada es en sí mismo un resultado que vale la pena tener.
¿Tengo que registrarme en algo para leer esto?
No. La lista entera está en esta página. No hay descarga, ni muro de correo electrónico, ni PDF.
El resto de lo que hacemos
- Revisión de producción — Funciona. Hay gente usándolo. Y nadie ha comprobado nunca qué pasa cuando deja de funcionar — cuando la base de…
- Hacerlo operable — Para algo que se construyó deprisa y que ahora tiene gente que depende de ello. Una sola cifra cerrada, acordada an…
- Mantenerlo funcionando — La parte que nadie quiere asumir. Su app está en vivo y alguien tiene que darse cuenta cuando se para, renovar l…
- Construir por etapas — Desde una idea, o desde un proyecto que se quedó parado. Se presupuesta una etapa por adelantado y se paga por e…
- Nuestros propios productos — lo que construimos para nosotros mismos, y operamos.