Lo que vendemos · Colombia

El mantenimiento se volvió arqueología. Nosotros excavamos.

Nuestra lectura de dónde duelen de verdad las infraestructuras Drupal ahora mismo — y las tres cosas que hacemos al respecto.

Talk to us

En algún lugar de su código hay un módulo a medida escrito para un solo requisito, por alguien que se fue dos años después. Sin tests. Sin README. Mensajes de commit que dicen fix. Sigue funcionando, nadie sabe muy bien por qué, así que nadie lo toca — y todo lo que quiere construir ahora tiene que rodearlo.

Esa es la condición en la que creemos que está realmente el mercado. No sitios rotos: código a medida abandonado, y un mantenimiento que se ha convertido en arqueología. Ya no está extendiendo un sistema. Lo está excavando — recuperando intenciones a partir de restos, dejados por gente a la que no puede preguntar.

Estas tres son nuestra lectura de dónde duele más ahora mismo. Cada una es algo que hacemos primero en nuestra propia infraestructura: cinco propiedades Drupal 11 sobre un mismo stack, reconstruidas desde una base de datos vacía cada vez que necesitamos demostrar que todavía se puede.

Deuda técnica

El sitio se despliega, siempre que lo despliegue una persona en concreto. La configuración se desincronizó de producción hace años y ya nadie se fía de un import. Staging dejó de coincidir con producción el día que alguien cambió un ajuste por la interfaz. Hay cuatro módulos a medida; dos sostienen el edificio, uno está muerto, y nadie sabe cuál es cuál sin leerlos todos. La estimación honesta de un trabajo de dos horas es de dos semanas, y la mayor parte es leer.

Nosotros hacemos esa lectura. Código, configuración, ruta de despliegue, árbol de dependencias — y ordenamos lo que encontramos por lo que cuesta mantenerlo, no por teatro de severidad. Cada módulo a medida recibe un veredicto: sostiene el edificio, se puede reemplazar por contrib, o está muerto y se puede borrar. Esa última categoría suele ser mayor de lo que nadie espera, y borrarla es la victoria más barata de la lista.

Buscamos lo que ya nos ha mordido en nuestros propios sitios: configuración desincronizada, despliegues que no se pueden repetir, contrib fijado en versiones con advisories abiertos, modelos de contenido cambiados en caliente en lugar de migrados, una caché tapando una consulta que nunca debió escribirse. Llevamos registro escrito de cada caso. La auditoría es ese registro, aplicado a su sitio.

Precio cerrado y tiempo acotado. Recibe la lista, el orden en que conviene resolverla y un precio para que la resolvamos nosotros. El resultado es suyo, hagamos o no el trabajo posterior.

Hoja de ruta

La dirección quiere una cifra y una fecha. Ingeniería no puede darla, porque la respuesta depende de lo que haya dentro de un código que nadie ha leído desde que se escribió. Así que la hoja de ruta se vuelve una lista de deseos, la lista se vuelve un presupuesto, el presupuesto se equivoca en el primer mes — y todos aprenden a no volver a preguntar.

Un plan construido sobre código sin leer es ficción. Así que primero leemos y después secuenciamos: qué bloquea qué, qué puede ir en paralelo, qué se puede aplazar un año más y qué acumula intereses mientras lo aplaza. Cada punto nombra el cambio, el riesgo de hacerlo, el riesgo de no hacerlo y cómo sabrá que funcionó. Está escrita para entregársela a quien haga el trabajo — nosotros o su propio equipo.

Sin carriles, sin fases, sin certezas inventadas sobre el mes nueve. Donde algo todavía no se puede saber, lo dice — y dice qué haría falta para saberlo.

Migraciones

Está en una versión que dejó de recibir cobertura de seguridad, o en un hosting del que se va, o en un modelo de contenido que se quedó pequeño hace tres años. Todas las cotizaciones que le han dado asumen una reconstrucción — porque una reconstrucción es mucho más fácil de cotizar que una migración honesta, y de paso descarta lo único que de verdad es suyo: su contenido, y las decisiones enterradas en su código a medida.

Una reconstrucción tira la arqueología en lugar de hacerla. A veces es la decisión correcta, y se lo diremos. Normalmente significa pagar otra vez por un comportamiento que ya es suyo y que ahora no sabe describir.

El trabajo es el mismo en todos los casos: hacer que el sitio sea reproducible desde el código antes de moverlo, moverlo en un comando — y poder devolverlo. Hemos hecho las feas. Cambiar el tipo de almacenamiento de un campo en caliente, en un sitio donde la tabla de revisiones que la API espera no existe, así que el borrado falla y el cambio de configuración se completa igual. Cambiar el idioma por defecto de un sitio que ya tiene contenido, donde un solo guardado escribe una traducción vacía sobre valores en producción y devolver el idioma no los recupera. Las dos nos costaron restaurar una base de datos para aprenderlas. Usted recibe la versión en la que ya lo sabemos.

Se cotiza después de la auditoría, no antes. Poner precio a una migración sin haber leído el sitio es adivinar con una factura adjunta.

Si esto es para usted

Tomamos pocos clientes y decimos que no al trabajo que no encaja: Drupal 11, reproducibilidad obligatoria, bilingüe por defecto. Somos un estudio pequeño y preferimos decírselo ahora y no tres semanas después.

Si reconoció su propia infraestructura ahí arriba, el siguiente paso más barato es una conversación. Escríbanos por Contacto, o pregúntele al concierge en la portada — responde cómo funciona cualquiera de estas cosas y le pone en contacto si encaja.