Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Nodes let non-programmers access some of the power of being able to program.

It's inferior to real programming in every other way though. Writing code to generate node graphs (eg. for Blender materials) is particularly hellacious.



> It's inferior to real programming in every other way though. Writing code to generate node graphs (eg. for Blender materials) is particularly hellacious.

Programming is programming, there is no such thing as "real programming". Visual programming is an alternative to textual programming, we're discussing whether it's good or not, but let's not imply that visual programming is not programming, it is programming.

> Writing code to generate node graphs (eg. for Blender materials) is particularly hellacious

No, it isn't hellacious. Node based programming languages eliminates a few things non programmers don't want to deal with: syntax errors and type errors.


I said "writing code to generate node graphs". If you have some example of nice code for this I'd like to see it. Everything I've seen is opaque (unclear what the node graph will look like), basically write-once, and has trouble getting the placement of the nodes correct enough even to not overlap, let alone look nice.

(Also it doesn't eliminate type errors, sockets have a type after all.)


> (Also it doesn't eliminate type errors, sockets have a type after all.)

If you used any significant Node based programming system, then you know you can't randomly plug sockets from different types unless that socket explicitly supports type conversion.


Isn't that what you call a type error?


> Isn't that what you call a type error?

Obviously no, since you can't connect incompatible outputs with inputs at first place.


On the contrary, it is the foundation of programming, how digital circuit design applications work.

If anything they make quite clear when people write spaghetti code, instead of proper modules.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: