Este artículo adapta la charla del autor en RustConf 2024 y gira en torno a un caso de estudio singular: Netstack3, la pila de red de próxima generación de Fuchsia, escrita íntegramente en Rust y diseñada para sustituir a Netstack2, implementada en Go. El proyecto, iniciado hace seis años y desarrollado por equipos de entre ocho y doce ingenieros, abarca 63 crates y alrededor de 192.000 líneas de código, más que los diez crates principales de crates.io combinados. Tras once meses de pruebas internas con cerca de 60 dispositivos funcionando casi 24/7, el equipo descubrió solo tres errores en producción, una cifra extraordinariamente baja para una pila de red de esa envergadura. Ya en producción, Netstack3 ha mostrado una tasa de caídas aproximadamente veinte veces menor por millón de dispositivos al día y un 50% menos de uso de memoria que su predecesora.
El texto presenta un marco conceptual para entender esos resultados bajo la idea de que los programas con errores no deberían compilar. Aunque Rust garantiza de forma predeterminada la seguridad de memoria y de hilos, el autor sostiene que esa cobertura es insuficiente para sistemas complejos, donde la mayoría de los errores son de lógica, de protocolo o de diseño. El artículo describe cómo el equipo de Netstack3 extendió el sistema de tipos de Rust para atrapar en compilación clases enteras de errores que normalmente solo se detectarían en tiempo de ejecución, más allá de la mera seguridad de memoria. Se analizan dos ejemplos concretos y se citan crates y referencias relevantes —ghost-cell, zerocopy, bytemuck, nalgebra, entre otros— que aplican principios similares. El objetivo es mostrar que cualquier proyecto puede ampliar el lenguaje para acercarse a una "X-seguridad" frente a casi cualquier categoría de errores.
