Live data from Hacker News

Ask HN: Why does visual programming suck?

news.ycombinator.com

221–230 of 325 posts

Re: Ask HN: Why does visual programming suck?

#221
post #169

What really annoys me in text programming is that I have to write constructs again and again, referring to manual for method names constantly. Completions may be smart typewise, but IDEs never assume what I am writing. Let's take a function: static string defaultFamily = "Sans"; bool foo(string s, Alignment a, int height) { Par_ Okay, it began. What can be done with all the available values? Seems that I'm going to c…

> Because Paragraph told the completion system that it needs at least font and text values set.

If the class needs at least all those arguments it shouldn't have an empty constructor. It should have those as arguments to the constructor and then most good ide today would be able to help you at least a bit better. Have you tried intellij? Boolean return values without context is also an antipattern, how am I supposed to know whether true means success or fail or something else? There is no way any AI would be able to infer that either without annoyingly amount of false positives.

Re: Ask HN: Why does visual programming suck?

#222
post #52

I think the reason is that text is already a highly optimized visual way to represent information. It started with cave paintings and evolved to what it is now. "Please go to the supermarket and get two bottles of beer. If you see Joe, tell him we are having a party in my house at 6 tomorrow." It took me a few seconds to write that. Imagine I had to paint it.

then why does everyone sketch a picture when trying to convey an idea? text is obviously useful but so is visual information. the complete dismissal of visual programming by text-based programmers is often infuriating. visual programming can provide an immediate indication of structure and dataflow, something that text-based languages struggle with. in my mind, the best case scenario is some sort of hybrid, where vis…

If you're referring to icons, good and clear icons take a lot of time to design.

Re: Ask HN: Why does visual programming suck?

#223
post #73
post #22

Every time a VPL (Visual Programming Language) has gone against a TPL (text programming language) , VPL not only has come out a winner it has massacred its opponent. There are 3 areas that I am aware of that VPLs have appeared a) modular audio synthesis b) 3d graphics c) game programming (a) has been the first with origins back to 1995 , there are like a ton of programming apis for building modular synthesizers , the…

You're cherrypicking examples and ignoring counter examples. Yes VPL's in specific niche areas have been useful and largely beaten there competitors. But I know of no general purpose VPL that had succeeded in beating a text only competitor. Text is superior for general purpose languages because it sits in the sweet spot for information density vs ease of use.

Yes and Yes. VPLs are indeed specific purpose and its because of information density.

Contrary to what you may believe a VPL is not the evolution of TPL , its actually the evolution of GUI. Reaktor for example is an evolution of VSTs , synthesiser and audio effect plugins that are GUIs. VPLs in 3d are an evolution of the gui properties for material , textures etc (they are not even referred to as VPL). Even in Unreal even though Blueprint has replaced Unrealscript , its an extension of the editor GUI.

VPLs are successful specifically because the information density is so large that a linear GUI is not enough.

The success of TPL is legacy, its just has a lot of libraries. Mainly because its easier to make and has been around a lot longer.

However to be sincere here when we talk about TPLs we also cherrypick , we do not think of Assembly, Pascal, Cobol and Fortran but rather C/C++ , Java, C#, ruby, Python and Javascript. The truth is that 99.9% of TPLs have failed to gain approval of not just the users but also the coders too.

But I am not denying the fact that a TPL will target mostly pro coders than users and that VPL will target mostly users than coders. They are just different kinds of beasts making the comparison more than challenging.

Re: Ask HN: Why does visual programming suck?

#224

Picture says it all: http://thedailywtf.com/articles/Labview-Spaghetti :)

i program in labview daily, and it's always a little disappointing to see this same dumb picture posted all the time in reference to labview and visual programming. NO respectable labview programmer would work like that. you could make the same argument for text-based languages as well, as i have seen some atrociously formatted code in addition to poorly structured code. one of the main issues with labview is that pe…

I've also done labview and have to agree that the picture is a bit extreme. Even so, extract the bottom left corner of that picture for something a bit cleaner and more representative of code in the wild but it's still completely impossible to see wtf is going on there.

Re: Ask HN: Why does visual programming suck?

#225

I think visual programming is one of those ideas that intuitively seems like a good idea but never is. Thus, it never really dies, it just gets picked up as a kind of rite-of-passage by new generations of developers. Managers also tend to like the concept as it would allow them to bypass the pesky code monkeys and just feed their drawings to the computer. For my master's thesis, some 15 years ago, I programmed a syst…

Except there is a successful visual programming tool and it probably runs a large chunk of software in your car. It's called Matlab Simulink: https://mathworks.com/help/simulink/examples/anti-windup-con... Obvious lectures from this: 1) Don't be silly and copy a text based language into visual blocks. Nobody wants to drag&drop the components of a while loop or click a box to enter a variable name. If you have variabl…

I have a background as a programmer and recently started using Matlab/simulink. It is good for some things like controllers etc. Can't really say I like it for things I would usually use when programming, like loops and if statements(I know simulink has these but they make no sense).

I also believe simulink has been used mostly for simulation therefore it's name and not programming. However now you can generate code from your model.

Re: Ask HN: Why does visual programming suck?

#226
post #22

Every time a VPL (Visual Programming Language) has gone against a TPL (text programming language) , VPL not only has come out a winner it has massacred its opponent. There are 3 areas that I am aware of that VPLs have appeared a) modular audio synthesis b) 3d graphics c) game programming (a) has been the first with origins back to 1995 , there are like a ton of programming apis for building modular synthesizers , the…

Poor form of the people who downvoted parent. I don't agree with parent but they are contributing to the conversation. If you disagree why don't you provide some counter-points instead. Here, let me start. > Every time a VPL (Visual Programming Language) has gone against a TPL (text programming language) , VPL not only has come out a winner it has massacred its opponent. That's an unsubstantiated claim. Point to some…

I did not downvote the parent , mainly because I rarely downvote posts, must be a facebook habbit :D

"That's an unsubstantiated claim. Point to some sources please."

Reaktor and Max/MSP vs CSOUND and Supercollider , Blender python vs Material/Texture/Animation/Compositor Nodes, Blueprints vs Unrealscripts are all examples I mentioned already. Why they are not enough ?

"These are not the only ones [1], and VPL first appeared earlier than 1995. For example, the first version of LabView was released in 1986 [2] and certainly LabView was not the first one either."

This is why I said "that I am aware of" I am not an expert on all things just a few areas.

"Even if this is true in the case of VFX (which I don't know that it is but I don't know that it's not either), it certainly is not true in video game development, which is very much an area of 3d graphics."

I already mentioned Unreal and Blueprints. But yes what I meant was on the fact of actually a VPL competing with a TPL. Obviously when no VPL exists you have no competition. In the case of 3d apps efforts have been placed into using scripting languages but the users have picked VPLs instead as much easier to use and learn.

"Blueprints is awesome but you could not TODAY make an arbitrary game implemented using ONLY blueprints and have the amount of control and freedom you have if you use Unreal or another game engine with C++ or another TPL. Thus falls your initial claim, which (quoted above also) was"

What you say its true but its not because VPL is inferior its because its not fully supported. Unreal started as a C++ game engine so of course the support will be more extensive than for Blueprints . Blueprint have been around for few years and its already growing faster than the C++ api. It was only lately that Epic added the ability to compile a Blueprint to C++ code. C++ API also make it easy to wrap any C++ code and expose it to Blueprints. So if you want to make your entire game in Blueprint its not possible but also easy.

"Some people love LabView. I certainly don't. Some prefer it and for them it's a thousand times better than using a TPL but for me 99% of the time I would go with a TPL over LabView."

VPLs are made for users not coders, its their ease of use / idiot proof mentality that have made them succesful. So yes if you are a coder in most cases you will prefer and should prefer a TPL , especially a popular one.

But again I repeat in the vast majority of case you will be extremely lucky to find a VPL to even consider moving to. VPLs are extremely rare.

Re: Ask HN: Why does visual programming suck?

#227
Honestly, I think most languages have shitty syntaxes (syntaxi?) and that the issue is not about visual programming.

The other problem is that everybody who has a big idea for visual programming has the same, actually shitty, idea.

Drag-n-drop blocks that represent logic.

UML is not a thing anymore because it's useless and wastes time.

Visual programming is great for describing high-level logic, but not low-level semantics.

Try and describe your last trip to the grocery store with just emojis. Maybe you might get creative and come up with a paper for your list, some fruits and stuff like that, but how could you guarantee that the user on the other end of your description gets the exact same idea? You can't.

With words, I can write my comment how I want, and I'm more or less guaranteed that people will read it the way that I intended them to, because it wouldn't make any sense any other way.

Re: Ask HN: Why does visual programming suck?

#228
post #217

Earlier quoted context omitted.

I agree with this statement, wholeheartedly. I do, however, think programming languages could benefit from more visual augmentation . A program, over time, takes on more complexity than a programmer can hold in his mind, and eventually, the program's design will elude him. A disconnect appears between the text he types in the moment and the original design of the program. The sum total of the program's code no longer…

I have a dream that one day we'll collectively realize that "buying programmers the best tools" means the most powerful, and not the shiniest. Then we'll all be running ultra-wide monitors with room for many different visual aides on the one screen, backed by the CPU horsepower (overclocked and liquid cooled, if necessary) to make it all fast. And, hopefully, we'll see what an IDE can really be.

As long as we're speculating: I kind of dream that maybe we'll see programming environments that take advantage of VR.

Humans are really good at remembering spaces. ("Describe for me your childhood bedroom." or "What did your third grade teacher look like?")

There's already the idea of "memory palaces" [1] suggesting you can take advantage of spatial memory for other purposes.

I wonder, what would it be like to learn or search a codebase by walking through it and looking around?

[1] https://en.wikipedia.org/wiki/Method_of_loci

Re: Ask HN: Why does visual programming suck?

#229
post #22

Every time a VPL (Visual Programming Language) has gone against a TPL (text programming language) , VPL not only has come out a winner it has massacred its opponent. There are 3 areas that I am aware of that VPLs have appeared a) modular audio synthesis b) 3d graphics c) game programming (a) has been the first with origins back to 1995 , there are like a ton of programming apis for building modular synthesizers , the…

If Blueprints have really become the default in Unreal, why are they so barely talked about? Searching for "unreal blueprints" on Google returns less than two full pages. Do you work in the industry?

Welcome to the failures of Google search engine. Google is great but not so great when you try to make the search a bit smarter.

I am about to "work" in the industry I have a Blender plugin and Unreal editor plugin in the works , none of the use a VPL by the way because simply what I am trying to do is too technical for VPLs that target users and not coders. But of course I will be offering VPL support because users love VPLs.

I never said Blueprints are the default in Unreal , C++ is still king. However if you want proof , you can take a visit at the official Youtube channel of Unreal by Epic and see for yourself the rise of Blueprints. Most tutorials nowdays for making games with Unreal target Blueprints.

Re: Ask HN: Why does visual programming suck?

#230
post #99
post #22

Every time a VPL (Visual Programming Language) has gone against a TPL (text programming language) , VPL not only has come out a winner it has massacred its opponent. There are 3 areas that I am aware of that VPLs have appeared a) modular audio synthesis b) 3d graphics c) game programming (a) has been the first with origins back to 1995 , there are like a ton of programming apis for building modular synthesizers , the…

Your example are great but it seems theses VPL succeeded because the data manipulated was constant (sound OR texture OR 3D object) in a whole project

in 3d and Audio the data is anything BUT constant. You will have to be more specific than that because I do not understand what you mean. Anything can be turned off and on.
Post reply on HN