Cada estudio con cierta edad tiene una historia de incidente un viernes por la tarde. La nuestra tiene una columna JSON, un cliente en Lisboa y un rollback de seis horas que se comió un puente. La historia tenía gracia el lunes. No la tenía el sábado por la mañana.
Después de aquel incidente escribimos una regla de una página: nada va a producción después de las 16:00 del jueves y nada en viernes. La regla ha sobrevivido a dos cambios de dirección, a tres clientes pidiéndonos amablemente que la rompamos, y a un inversor llamándonos "amateur hour". La conservamos.
Desplegar el viernes es una forma callada de cargarse un fin de semana. Así dejamos en el estudio de romantizarlo.
La regla no va de ir lento. Va de respetar el calendario de las personas que mantienen el sistema cuando se lo entregamos. Un deploy a las 14:00 del jueves le da al equipo tres horas laborables para detectar una regresión y 48 horas de calma para arreglarla. Un deploy a las 14:00 del viernes le da al on-call una boda de la que irse antes.
Hay excepciones. Un CVE de seguridad salta la regla. Un incidente con producción caída salta la regla. La ansiedad de un founder por una fecha de lanzamiento no. Hemos perdido un encargo exactamente por esta regla. Mereció la pena.