- Para quienes trabajan con bases de código grandes, programar desde una laptop puede ser una carga
- El ventilador no deja de girar, los servidores de lenguaje se quedan sin memoria y los tiempos de recompilación son largos
- En Zed se puede abrir un proyecto en cualquier equipo mediante SSH
- La UI se ejecuta completamente en local y ofrece gráficos perfectos a 120 fps, mientras que los servidores de lenguaje, las tareas y la terminal se ejecutan en el servidor remoto para aprovechar el hardware en la nube
Configuración del entorno de desarrollo remoto
- Para la edición remota de código, Zed ha venido realizando cambios en la infraestructura para soportar SSH
- Tuvieron que resolver diversos problemas, como mantener la conexión SSH, configurar el servidor remoto e integrar las funciones
- Para la conexión SSH usan la configuración
ControlMaster para mantener una sola conexión por cada host
- Después de conectarse, descargan el servidor remoto adecuado para el sistema operativo y la arquitectura
- El servidor remoto compilado con
musl no requiere enlace dinámico, por lo que puede funcionar incluso en distribuciones antiguas
- Incluso si la conexión se corta, el servidor remoto sigue ejecutándose y, al reconectarse, los servidores de lenguaje se mantienen en un estado completamente inicializado
- Los cambios no guardados se respaldan localmente para no perder el trabajo
Colaboración y proyectos SSH
- Hacer que los proyectos SSH funcionaran junto con la colaboración fue un reto
- Como al menos 4 nodos pueden intervenir en una sesión colaborativa de 2 personas mediante SSH, probaron el protocolo de sincronización de colaboración
- Dividieron
Project en piezas lógicas para que el cliente pueda activarlas en modo remoto y local según sea host de colaboración, host SSH o invitado de colaboración
- Con nuevas pruebas, instanciaron cada rol y el servidor de colaboración para verificar que la sincronización ocurra correctamente
- Cuando se trabaja en un proyecto con un amigo o colega, se maneja de forma transparente si el proyecto está en la laptop o en un equipo accesible por SSH
Resumen de GN⁺
- Zed ofrece a los desarrolladores que trabajan con bases de código grandes un entorno de desarrollo eficiente aprovechando servidores remotos
- La función de desarrollo remoto mediante SSH mejora el rendimiento al aprovechar hardware en la nube
- La función de colaboración soporta la sincronización entre varios nodos, lo que permite colaborar sin fricciones
- Zed está disponible en macOS y Linux, y ofrece una nueva experiencia para los desarrolladores
- Otro proyecto con funciones similares es la extensión Remote Development de Visual Studio Code
1 comentarios
Comentarios de Hacker News
Programar en una Mac usando Zed, SSH Remoting y Orbstack es un entorno soñado
Hay curiosidad sobre el modelo de ingresos de Zed y si es open source
La función de desarrollo remoto de Zed instala y ejecuta un binario en el host remoto
Se usa Zed para desarrollo en C, C++, Rust y Angular, y la satisfacción es muy alta
Al desarrollar entre varias computadoras, se usan tmux y nvim para mantener las sesiones
La velocidad de Zed es buena, pero le faltan funciones esenciales como el resaltado de errores en línea y botones para ejecutar código
Compartir pantalla basado en imágenes podría ser una mejor opción
Se quiere una solución de edición remota verdaderamente portátil
Ejecutar apps desconocidas en un servidor remoto confiable no es una buena idea
Preocupa que no haya ninguna mención de Emacs o Tramp