| > Are you seriously suggesting that there might be a better way for us to communicate and express ourselves concisely? I've never suggested any such thing. In fact, I hinted at just the opposite when I wrote "The flaw is to assume there is only one mental model that Visual Programming Languages should operate under: say only workflows for example (a mistake all VPLs I've seen have done)." I wrote a blog post on VPL - Snapshots (https://news.ycombinator.com/item?id=7274674). The pattern I noticed on these VPLs (of which there are close to a hundred in that list now) is that they all attempted to use a single mental model (some are flow, some are spatial, some mathematical, etc.). None of them support different mental models (say flow based when defining business process and mathematical when defining equations). The flaw is assuming a single mental model can be used to most efficiently describe all real world systems. Given a real world system, there may be one or more approaches used to efficiently describe that real world system in a computing device. That mental model could be textual, it could be visual or it could be both. Taking the position that no VPL(s) exist that could better describe a particular real world system better than a textual language is standing on loose ground. Perhaps a general purpose domain agnostic VPL doesn't exist (yet), but VPLs shine for some domain specific solutions (gaming engines for example). > Are you seriously suggesting that there might be a better way for us to communicate and express ourselves concisely? I'm suggesting that to assume otherwise is limiting our chances of growing Information Technology as a community. I'm suggesting that if we "get it right" then our programming abstractions would be equally useful and descriptive in both a textual and visual language formats. |
I remember this post and participated :) I've also designed and built my share of visual languages and have been studying this field for about a decade now.
> The flaw is assuming a single mental model can be used to most efficiently describe all real world systems.
There are two things going on here: the paradigm of the language that guides but restricts its users, and the notational syntax of that language that limits its expressiveness and abstractive power. You seem to be conflating them together, but paradigm is separable from notation (textual flow-based languages are common), while notation is solely related to the textual vs. visual debate.
> That mental model could be textual, it could be visual or it could be both.
When you think about something, do you not talk to yourself? I have only my own experience to go by, but it takes some effort to call forth images and it definitely interrupts my ability to think through something.
> I'm suggesting that to assume otherwise is limiting our chances of growing Information Technology as a community.
I am suggesting that our love of words and text is biological. We also have capabilities for sensing space, color, and so on, but these are adapted more to experiencing and reacting rather than communicating. If it is indeed a biological limitation of human beings, then it would be impossible to get it right enough (though I could be wrong, and please try if you think otherwise).