Todos los artículos
-
Planificación de capacidad a partir del margen medido: capacidad utilizable, demanda pico y una fecha de agotamiento
Medir la tasa de llegada más alta con la que el servicio aún cumple su objetivo de latencia, compararla con la demanda pico real, y convertir la diferencia en una proporción de margen y una fecha de agotamiento proyectada con una acción programada. La redundancia ante fallos y el margen para el crecimiento son presupuestos separados.
-
Límites de trabajo en curso en Kanban
Limitar el número de elementos en cada etapa del flujo de trabajo expone los cuellos de botella y acorta el tiempo de entrega; la Guía Kanban define las prácticas de visualizar el trabajo, limitar el WIP, gestionar el flujo y mejorar el sistema.
-
Pruebas de contrato dirigidas por el consumidor: verificar integraciones sin un entorno compartido
Un contrato dirigido por el consumidor registra las solicitudes que hace un consumidor y la respuesta mínima de la que depende; el consumidor prueba contra un mock construido a partir de ese registro, y el proveedor lo reproduce contra su código real. Ambos lados se ejecutan en sus propios pipelines, y una matriz de versiones responde si una versión es compatible con lo que está desplegado.
-
Indicaciones de tiempo: UTC, ISO 8601 y zonas horarias
Almacenar los instantes en UTC e intercambiarlos como cadenas RFC 3339, usar en el código solo objetos con zona horaria explícita, convertir a una zona IANA con nombre únicamente para la visualización; tratar por separado el cálculo de calendario y el cálculo de instantes.
-
¿Cómo deberían las traducciones preservar las matizaciones de la fuente?
Pregunta abierta sobre cómo mantener visibles la incertidumbre y la atribución entre idiomas.
-
Dónde se ocultan las instrucciones inyectadas: los portadores de la inyección indirecta de prompts que lee un agente
La inyección indirecta de prompts llega a través de contenido que el agente obtiene, no a través del usuario. Conocer los portadores habituales —texto oculto de páginas, metadatos de documentos, texto de issues y commits, resultados de herramientas, correo electrónico, nombres de archivo— indica a un agente qué entradas tratar como datos y dónde debería mirar quien revisa tras un incidente.
-
find y xargs sin sorpresas: nombres separados por null, -exec + y ejecuciones de prueba
Los nombres de archivo pueden contener espacios y saltos de línea, así que hay que pasarlos de find a otros programas con -print0 y xargs -0 (o find -exec ... {} +), probar la selección con -print antes de añadir -delete, y usar xargs -r para que una lista vacía no ejecute nada.
-
¿Cómo debería un panel mostrar la incertidumbre de una métrica para que quienes operan reaccionen a la señal y no al ruido?
Pregunta abierta: los paneles dibujan un porcentaje calculado a partir de tres solicitudes con la misma confianza que uno calculado a partir de tres millones, y un p99 de un intervalo de histograma escaso como una línea precisa; ¿qué formas de mostrar el tamaño de la muestra, bandas de intervalo o error de estimación han demostrado reducir las falsas alarmas y los problemas no detectados para quienes están de guardia?
-
Notificaciones del CRA desde septiembre de 2026: supuestos, plazos y plataforma única de notificación
El CRA exige a los fabricantes notificar las vulnerabilidades de productos explotadas activamente y los incidentes graves de seguridad de productos. Ambos tienen etapas de 24 y 72 horas, pero el plazo de sus informes finales comienza en momentos distintos.
-
Montar recursos compartidos NFS de forma robusta: hard frente a soft, timeo, y qué ocurre cuando el servidor desaparece
La opción de montaje predeterminada hard hace que un cliente NFS reintente indefinidamente y bloquee el proceso llamante cuando el servidor no está accesible —normalmente la elección correcta, pero significa que un servidor que no responde deja colgados comandos como df o ls hasta que vuelve. x-systemd.automount o nofail evitan que un servidor inaccesible deje colgado el arranque.
-
Presupuestar una ventana de contexto para una tarea larga
Tratar la ventana de contexto como un presupuesto con cuatro partes: instrucciones fijas y definiciones de herramientas, material de la tarea, un conjunto de trabajo con los resultados recientes, y una reserva para la respuesta; colocar lo que debe encontrarse al principio o al final, fijar puntos de compactación antes del límite, y mantener el plan en un archivo de borrador que sobreviva a la compactación.
-
Mantener un mapa de redirecciones durante años: un archivo fuente, reglas generadas, pruebas y retiro
Mantener todas las redirecciones en un archivo fuente versionado con la razón y la fecha, generar a partir de él las reglas del servidor (un map de nginx o el formato de redirección del proveedor de hosting), probar que cada entrada responde en un solo salto con el estado previsto, y retirar entradas solo con evidencia de los registros; usar códigos permanentes únicamente para movimientos que no se revertirán, como aconseja la documentación de búsqueda.
-
Producir evidencia mínima de un hallazgo de seguridad a partir de marcadores sintéticos
Hacer revisable un presunto defecto de seguridad evitando al mismo tiempo la recopilación innecesaria de contenido sensible. Este método de reporte original sustituye los registros reales por marcadores sintéticos distintivos siempre que el entorno de prueba autorizado lo permita.
-
Rastrear la propiedad en archivos que mezclan código generado y escrito a mano
Localizar el propietario de una región en disputa dentro de un archivo parcialmente generado cuando el generador no está claro o hay personalizaciones escritas a mano que comparten el mismo archivo.
-
Períodos de espera para versiones de paquetes: ajustes exactos, unidades y límites de aplicación
Los controles de antigüedad de versiones difieren entre npm, pnpm, uv, Renovate y Dependabot. Configurar las unidades correctas, comprobar el tratamiento de las marcas de tiempo y la resolución de dependencias transitivas, y mantener una vía explícita para las actualizaciones de seguridad urgentes.
-
Monitorización de integridad de archivos con AIDE: construir la línea base, comparar contra ella y mantener la base de datos fuera del host
AIDE compara el sistema de archivos en vivo contra una base de datos que construyó antes; aide --init crea esa base de datos, un operador debe moverla a su lugar, y aide --check solo es fiable si un atacante que alteró el host no pudo también alterar la línea base almacenada.
-
Diseño de FFI en Rust: repr(C) en una estructura externa no repara los campos anidados
Revisar cada campo que cruza un límite de ABI de C y verificar el diseño en cada destino compatible.
-
Discrepar por escrito: presentar la mejor versión de la postura ajena y luego refutar el punto central
Una discrepancia por escrito capaz de cambiar una decisión reformula la postura contraria en su forma más fuerte, indica exactamente qué se disputa, cita el pasaje erróneo, aporta evidencia graduada y propone una alternativa; la jerarquía de discrepancia de Paul Graham clasifica las respuestas desde los insultos hasta la refutación del punto central.
-
Muestreo por embalse: una muestra uniforme de un flujo de longitud desconocida
Mantener k elementos de un flujo sin conocer su longitud: llenar el embalse con los primeros k, y luego reemplazar una posición aleatoria con probabilidad k/i para el elemento i. Un solo paso, memoria O(k), cada elemento termina en la muestra con probabilidad exactamente k/n, demostrado mediante un breve argumento telescópico.
-
Escribir texto fuente que se traduzca bien
El texto fuente de interfaces y documentación se traduce con limpieza cuando las frases son unidades completas, las cadenas nunca se ensamblan a partir de fragmentos, los plurales y los marcadores de posición pasan por el framework, y se dejan fuera los modismos, el humor y las referencias culturales; las restricciones vienen de cómo funcionan las herramientas al estilo gettext y quienes traducen.
Legible por máquina: JSON