HACKER Q&A
📣 owenpalmer

When is a node based GUI a better choice than code?


Blender is an excellent example of a powerful node based system. However, there are some applications where actual code is the better choice, but when? Do you think that web development, for example, should move towards using guis to integrate APIs? It seems to me like a lot of web development is just making glue code between 3rd party services.


  👤 frading Accepted Answer ✓
Just like everything, "it depends". When creating websites, where it's only or mostly about logic and sending data around, I much prefer writing code. But as soon as there is a visual element, a visual tool is crucial.

When I used to be a VFX artist, we were using Houdini, which gives as much power as writing code, but with instant feedback and the ability to quickly iterate. This software has gained popularity over the years because it makes you so efficient. You get the same power as code, with added speed and no friction. Exchanging ideas and setups with your peers is so easy.

It's based on those principle that I think the 3D on the web is still lacking this kind of tool, and the reason I'm building polygonjs [1], a node-based editor, which takes inspiration from Houdini/unreal and others and bringing this to javascript.

And the debate of code vs node-based is very subjective. Always interesting to hear people's take on why they love or hate it.

[1] https://polygonjs.com


👤 thedevindevops
Oh, the heady days of Yahoo! Pipes [1]

[1]: https://en.wikipedia.org/wiki/Yahoo!_Pipes


👤 throwaway0asd
In my current Node.js application I provide a GUI that runs in the browser as well as a command driven terminal interface. The GUI is much better for status updates, receiving changes from events on remote devices, doing many things at once. The terminal is much better for simple things, repetition, and automation.

👤 w_t_payne
Diagrams are great for communication and collaboration with non technical experts.

Code is great for creativity and working in the flow state.

Both are useful. I'd also argue that both are necessary.


👤 cstanley
I think to think we threaded the needle quite well at patterns.app --- letting the user be fully expressive with code, whilst giving the visual flow programming guide


👤 qualudeheart
When working fast and/or with nontechnicals.