Show HN: Flyde – un lenguaje de programación visual de código abierto
Recepción general
- Muchos consideran que Flyde es impresionante, pulido y está bien posicionado como un complemento de la programación textual más que como un reemplazo.
- Se valora mucho su enfoque en la interoperabilidad con bases de código JS/TS existentes y la capacidad de ejecutar flujos como una biblioteca.
- Los escépticos cuestionan si un nuevo lenguaje visual puede tener éxito de forma amplia y si los grafos de nodos escalan para sistemas complejos.
Programación visual: fortalezas y límites
- Los defensores argumentan que la programación visual sigue poco explorada, especialmente para:
- Delegar preocupaciones específicas del dominio mediante nodos bien definidos.
- Hacer que el comportamiento asíncrono/paralelo y el flujo de datos sean espaciales e intuitivos.
- Permitir que personas no programadoras o principiantes construyan lógica sin un conocimiento profundo de la sintaxis.
- Otros señalan que los VPL han existido durante décadas (LabVIEW, Simulink, lenguajes PLC, Pure Data, Scratch, etc.) y funcionan mejor en contextos específicos del dominio o altamente interactivos.
- Debilidades clave citadas:
- Mala ergonomía para flujos de trabajo grandes; los grafos se vuelven “espagueti” ilegible.
- Difíciles los diffs, el control de versiones, la búsqueda y la entrada rápida en comparación con texto.
- Límites de planitud/diseño 2D y dificultad para representar ramas, bucles y algoritmos complejos de forma compacta.
Decisiones de diseño de Flyde y comparaciones
- Se posiciona como un sistema basado en flujos, orientado a JS/TS, que se integra en aplicaciones existentes (integración con VSCode, runtime en Node/navegador), en contraste con herramientas autónomas como Node-RED o n8n.
- Modelo de ejecución: asíncrono, basado en mensajes, con inclinación funcional-reactiva; los nodos tienen salidas de error y pueden modelar paralelismo y comportamientos tipo Promise.
- Algunos prefieren nodos al estilo Blueprint de “función con parámetros” y señales visuales más ricas para la ejecución frente al flujo de datos; el modelo actual de pines se ve como flexible, pero a veces recargado.
- Se compara con frecuencia con Node-RED:
- Se elogia a Node-RED por su ecosistema y la construcción de interfaces, pero se critica su modelo de mensaje de entrada única y el exceso de movimiento de datos.
- Flyde se considera de más bajo nivel, más integrable, no (todavía) un reemplazo de Node-RED.
- Funciones futuras/deseadas mencionadas: mejor auto-disposición, grafos jerárquicos con zoom, visualizaciones de valores en vivo, formato de archivo JSON, editor de web components, soporte multilenguaje.
Casos de uso y pedagogía
- Aplicaciones sugeridas: backends web, constructores visuales de API, bots de Discord, flujos de Reverse ETL, cálculos mecánicos/ingenieriles, educación para niños y no desarrolladores.
- Varios lo ven ideal para aprender conceptos como la concurrencia; otros subrayan que, para lógica empresarial compleja, el texto plano probablemente seguirá siendo lo principal, con herramientas como Flyde como orquestación de nivel superior.