Exe.dev: La nube nacida de la frustración

Fuentes: I am building a cloud

El artículo "I am building a cloud" de crawshaw.io narra la motivación detrás de la creación de exe.dev, una nueva plataforma en la nube. El autor, un cofundador exitoso de Tailscale, explica que su impulso no proviene de una búsqueda de un propósito social o una gran innovación, sino de una simple pasión: le gustan los ordenadores y le frustra la experiencia actual con los servicios en la nube.

El problema central radica en que las arquitecturas de la nube moderna, basadas en máquinas virtuales (VMs) y APIs, imponen limitaciones significativas. La forma en que se asignan los recursos (CPU, memoria, disco) a las VMs es ineficiente, obligando a los usuarios a implementar soluciones complejas como gVisor o virtualización anidada para obtener el control deseado. Además, los sistemas PaaS (Platform as a Service), que intentan abstraer la complejidad, resultan en soluciones rígidas y limitadas que dificultan la ejecución de tareas comunes.

Otro punto crítico es el manejo del almacenamiento en disco. Las nubes favorecen el uso de dispositivos de bloque remoto (remote block devices), que, aunque eran adecuados para discos duros tradicionales, se vuelven un cuello de botella con la adopción generalizada de SSDs (Solid State Drives) debido a la latencia de la red. La infraestructura de red también presenta problemas, con precios de egreso (data egress) excesivamente altos en comparación con el alojamiento tradicional.

El autor argumenta que Kubernetes (K8s), una plataforma de orquestación de contenedores, intenta paliar estos problemas, pero fracasa porque intenta resolver una solución imposible: hacer que las nubes sean portátiles y utilizables. En esencia, Kubernetes es un parche sobre un problema fundamental de diseño de la nube.

La aparición de agentes de IA (LLMs) y el aumento de la creación de software, impulsado por su facilidad de uso, exacerban estos problemas. Los agentes se ven limitados por las mismas restricciones de la nube, consumiendo recursos innecesarios y reduciendo su eficiencia. Exe.dev busca abordar estos problemas, comenzando con una solución al problema de aislamiento de recursos de las VMs, permitiendo una gestión más flexible y eficiente de los recursos computacionales. El objetivo final es crear una nube que sea más intuitiva, eficiente y adaptable a las necesidades de los usuarios, liberándolos de las limitaciones actuales.