There is a reason people write books with illustrations, not pure text books, especially for advanced topics.
There is a reason people write books with illustrations, not pure text books, especially for advanced topics.
Guis work well for interactive stuff, but not for scripting things.
I think the biggest problem with textual programming isn't the text per se, but that text is used as the underlying format. I'd rather have projections of an abstract syntax tree that I could manipulate as text with different types of syntax or as various visual objects when that would be more useful.
I think the main issue is that code syntax is too flexible, so code generation tools create large diffs when updating manually written code. A simple solution to that is having a formatting tool like "go fmt" to adjust the latter before committing.
Yes, I agree. Text is too flexible (allowing you to do clever things you couldn't do in a drop down menu). A drop down menu won't allow you to make the same mistakes that a text option will, but is way less flexible.
Textual programming exceeds at plugging into your mind, you can associate words with ideas, imagine what the program will do very efficiently.
Visual programming done poorly is just textual programming with lines and boxes, the visual queues sometimes help but often just get in the way of our mental simulation of the program in our head. However, if done with much more direct manipulation of the executing program, it can bring much of the simulation we are doing in our head into the computer, boosting our ability to think, reason about, and solve problems.
Most of our examples of visual programming are done poorly (e.g. diagram-based languages), but there are also some good examples that show off its real potential (Forms/3, AgentSheets, Pygmalion, ARK).
The issue with programming is often that programs tend not do work exactly how we think they work, so we have to reverse engineer/debug them to find out how they work and then change that into how we want them to work. Especially as programs grow larger. I think visualizing the program and the state of the program can help with this, especially if the visualization can be directly manipulated.
Unless you mean something else than current day programming with "textual programming" i don't buy that for a second.
Current languages are too hung up on minutia for that to be the case.