Live data from Hacker News

Visual Programming Is Unbelievable (2015)

outsystems.com

21–30 of 107 posts

Re: Visual Programming Is Unbelievable (2015)

#22
At work we use a blend of C++ with Unreal Engine's visual programming language Blueprints. I am going to be honest with you guys here: I love blueprints.

They are very limited compared, lacking even maps. When it comes to connecting existing behavior together they are king. Consider the parts of game development which cannot be made generic. By sticking those in Blueprints we get nice high level code.

Re: Visual Programming Is Unbelievable (2015)

#24
post #19

It is a very strange essay form to give multiple reasons why a thing has not worked very well, then end it with the conclusion that people just irrationally don't like it because your brain is just biased against it. I don't believe in it in the general case simply because I've never seen a general-purpose visual programming language work. Show me one and show me lots of people choosing it freely and I'll believe jus…

To add to this, I present to you screenshots of visual programming spaghetti code in all of it's glory [1].

[1] http://scriptsofanotherdimension.tumblr.com

Re: Visual Programming Is Unbelievable (2015)

#26
post #9

There is one place where visual programming is alive and well and has been for a long time. That's programming PLC (Programmable Logic Controllers). It's easy to forget about PLCs[1], but it's an old and large niche in large corporations that do a lot of industrial automation like assembly lines, (automobile) manufacturing, oil & gas... Most PLC programming is done using Ladder Logic [2] and various visual tools tool…

Visual programming is also alive and well in device, instrument and robotic control, where accuracy and reliability is important. At the high end of the mission critical benevolent guardian mega robot spectrum, the Maeslantkering [1] is programmed in LabView [2]. I sure hope it's accurately programmed and well debugged! [1] https://en.wikipedia.org/wiki/Maeslantkering [2] http://www.ni.com/labview/?cid=Advertising-La…

Yet user's of LabView describe it as a horror to actually use practically [1].

[1] https://jshoer.wordpress.com/2007/08/03/why-i-hate-despise-d...

Re: Visual Programming Is Unbelievable (2015)

#27
post #9

There is one place where visual programming is alive and well and has been for a long time. That's programming PLC (Programmable Logic Controllers). It's easy to forget about PLCs[1], but it's an old and large niche in large corporations that do a lot of industrial automation like assembly lines, (automobile) manufacturing, oil & gas... Most PLC programming is done using Ladder Logic [2] and various visual tools tool…

Visual programming is also alive and well in device, instrument and robotic control, where accuracy and reliability is important. At the high end of the mission critical benevolent guardian mega robot spectrum, the Maeslantkering [1] is programmed in LabView [2]. I sure hope it's accurately programmed and well debugged! [1] https://en.wikipedia.org/wiki/Maeslantkering [2] http://www.ni.com/labview/?cid=Advertising-La…

The Wikipedia page links to a credible article which mentions that "the software that drives it is written in C++ and consists of 200,000 lines of code for the operational system and 250,000 lines of code for the simulation systems.[2]"

What am I missing?

Re: Visual Programming Is Unbelievable (2015)

#28
post #9

There is one place where visual programming is alive and well and has been for a long time. That's programming PLC (Programmable Logic Controllers). It's easy to forget about PLCs[1], but it's an old and large niche in large corporations that do a lot of industrial automation like assembly lines, (automobile) manufacturing, oil & gas... Most PLC programming is done using Ladder Logic [2] and various visual tools tool…

Another place where visual programming is popular is among music producers, with systems like Max/MSP[1] and PureData[2].

I dabbled in PureData a little, and while it seemed to be ok for simple things, I imagine that for anything even moderately complex, it would quickly become a nightmare.

While visual programming paradigms seem like a nice thing at first glance, they are missing out on whole ecosystems of tools developed over many decades for text-based programming. Things like debugging, version control, grep, search/replace, all the features of advanced text editors like vim or emacs, etc.

[1] - https://en.wikipedia.org/wiki/Max/MSP

[2] - https://en.wikipedia.org/wiki/Pure_Data

Re: Visual Programming Is Unbelievable (2015)

#29
post #13

Can't communicate visually. The translation between written and spoken words, even made up technical words, is fast, accurate, unambiguous. Visual means slow, inaccurate, ambiguous, which is sometimes cool for art, but not for communication. It would be like trying to program musically, or by touch, or by (oh no) smell. There is also the productivity danger of futzing, or whatever the modern term is. In the early des…

Except we can perfectly communicate visually, and we do it all the time.

It is common to draw diagrams when you are trying to understand or explain a problem. If you want to give somebody a rough idea of how your program works, it is infinitely more likely that you use some kind of drawing than music, touch or smell.

I don't agree neither with visual programming inviting people to lose time in details. The same you do not lose time thinking about how to structure a sentence to write a program, you would not lose it changing colors and fonts in a visual programming environment with an enforced "syntax".

I do not like visual programming (I have had very bad experiences with LabView), but I think it may be as good (or as bad) as text if the field had evolved differently.

Re: Visual Programming Is Unbelievable (2015)

#30
post #9

There is one place where visual programming is alive and well and has been for a long time. That's programming PLC (Programmable Logic Controllers). It's easy to forget about PLCs[1], but it's an old and large niche in large corporations that do a lot of industrial automation like assembly lines, (automobile) manufacturing, oil & gas... Most PLC programming is done using Ladder Logic [2] and various visual tools tool…

I'm actually reading this article while in a two-day introduction to PLC programming. It's been pretty fascinating, and is an interesting view into earlier days of programming...

...From here, I definitely feel like there's something "we" missed in how these systems work, and the situations they describe. But there's also a great deal that they've missed - and are stuck in the 80s.

I think the big one is that these systems (PLC visual programming environments) don't let me make my own domain-specific languages, and that's maybe the killer app of modern code.

But there's also some interesting bits - there's something that looks like agent-based programming: There's a series of environments, and you have a function (agent) that modifies an environment. You point it at each the environments, just like a loop, and it does it's thing, like a weird cross between functional and state-based, that works because it's all a form of stigmergy.

Post reply on HN