Live data from Hacker News

Visual Programming – Why It’s a Bad Idea

mikehadlow.blogspot.com

1–10 of 122 posts

Re: Visual Programming – Why It’s a Bad Idea

#4
Pros

The author well formulates the limitations of VPLs (Visual programming languages).

Cons

The rant seems to jumble in VPLs for general purpose programming with VPLs for domain-specific usecases. So although VPLs may be "a bad idea" for general purpose computing and does a good job of explaining its downsides, it is a little reckless in saying VPLs are a bad idea overall.

The author also offers two straw man arguments to make their point, though I don't believe that these things are common misconceptions at all:

1) Abstraction and decoupling play a small and peripheral part in programming.

2) The tools that have been developed to support programming are unimportant.

Lastly, the author uses Scratch as its representative VPL example, even though it is probably the most far removed from "Visual Programming" and more in line with something I'd call "Block-Based Programming". These are far from equivalent and a poor choice to use for talking about general purpose VPLs (though the author does admit that it may have been a poor choice later).

Re: Visual Programming – Why It’s a Bad Idea

#5

In order to make a serious comparison of textual and visual programming, you'd be better off using a serious system such as Labview for the comparison, not a... toy for children.

Agreed. Simulink is an extremely serious visual programming language that powers many of our modern high technology. Spacecraft and the like.

The authors point on assuming reduced complexity makes me think that he doesn't understand how complex mathematical function models are even when the block diagram looks very simple to the untrained observer.

Re: Visual Programming – Why It’s a Bad Idea

#6
post #3

There's no one-size-fits-all for programming. FWIW, I can recall a project where one piece was built visually (SSIS) and I enjoyed working with it.

I've not been a fan of visual programming in the past (and I'm not a huge fan of SSIS) but I did a project recently that included both Microsoft Flow and Azure Logic Apps and was pleasantly surprised at how quickly you can build something rather powerful.

The key as far as I can see is not to allow things to get too complex and call out to "real" code components over a certain level of complexity.

Re: Visual Programming – Why It’s a Bad Idea

#7
Various links related to this have come up in the past few days, and I think they mostly betray a lack of understanding of the weaknesses of text-based programming, and a lack of imagination as to how visual programming could actually work.

One person who's done a lot of thinking about this is Bret Victor, and I encourage anyone interested to watch his videos: http://worrydream.com/

Here's a project that's trying to split the difference between visual programming and text-based programming: https://luna-lang.org/

Re: Visual Programming – Why It’s a Bad Idea

#8
post #4

Pros The author well formulates the limitations of VPLs (Visual programming languages). Cons The rant seems to jumble in VPLs for general purpose programming with VPLs for domain-specific usecases. So although VPLs may be "a bad idea" for general purpose computing and does a good job of explaining its downsides, it is a little reckless in saying VPLs are a bad idea overall. The author also offers two straw man argume…

Arrays and Objects and trees and everything else in an AST (including the AST itself) are shapes.

Shapes are better built with our hands. They're often filled with text, which is more easily said than written.

Someone can already use a visual programming language to simulate the ocean in UE4 in 2018, in 20 years we'll have a mainstream general purpose visual programming language. More people might be using a visual programming language to make their AST than a keyboard, which is as comparatively cumbersome to gestures/talking as punchcards are to keyboards.

Re: Visual Programming – Why It’s a Bad Idea

#9
There is more to visual programming than simple wire diagrams and "code-blocks-as-visual-blocks":

https://www.youtube.com/watch?v=6orsmFndx_o

https://www.youtube.com/watch?v=I9LZ6TnSP40

https://alumni.media.mit.edu/~mt/thesis/mt-thesis-Contents.h...

http://worrydream.com/

And yes, this: http://www.fantasticcontraption.com/ This is not 100% real programming, because it does not include sensors, but you do create constructs that interact with the environment and accomplish goals. It's close enough to show what's possible with certain interfaces.

Long-term: https://dynamicland.org/

There have been much fewer resources allocated to the development of these concepts. Mostly for historic reasons.

The sad reality is that both critics and proponents of visual programming are often uninformed about prior work, user studies and related research rooted in cognitive and developmental psychology.

Post reply on HN