Xref: utzoo comp.cog-eng:1335 comp.lang.misc:3476 Path: utzoo!utgpu!jarvis.csri.toronto.edu!rutgers!tut.cis.ohio-state.edu!gem.mps.ohio-state.edu!ginosko!uunet!kddlab!ccut!titcca!sragwa!wsgw!headgw!crls02!creubank From: creubank@crls.sony.co.jp (Curtis Eubanks) Newsgroups: comp.cog-eng,comp.lang.misc Subject: Visual Languages Message-ID: Date: 12 Sep 89 08:27:39 GMT Sender: news@crls.sony.junet (Usenet News System) Followup-To: comp.cog-eng Distribution: comp Organization: Sony Corporation, Corporate Research Laboratories, Shinagawa, Tokyo, Japan. Lines: 51 I am interested in visual languages--programming languages that allow a non-programmer to create programs by choosing and manipulating icons. My question is: How much can I assume a user knows? Being a programmer myself, it's difficult for me to answer this question. Consider the concepts of conditional branching and looping. These are essential to traditional programming practices, but how does someone who is completely new to computer programming deal with these ideas? Is an expression of the form if then else easy enough for a non-programmer to understand and use? Probably. Is it intuitive? How about while do ? Maybe a little more difficult. Of course, once a user has successfully implemented a program using either construct, future usage will be much easier. But that's just turning non-programmers into programmers, not using common knowledge. Ideally, a user who knows nothing but some very basic interaction skill (moving the mouse, clicking, and perhaps typing) can walk up to a visual programming system and start programming immediately. Realistically, this might be impossible. My intuition is that any useful visual language must be restricted to a specific domain to be able to be used by a complete novice. A non-programmer must choose from a limited number of icons that represent simple or at least familiar concepts. Before going any further in developing a visual language program, some questions must be answered: [1] What does the user know? [2] What kind of operations does he wish to perform and on what data? [3] How would he naturally represent these operations/data visually? Unless we know what kind of things the end-user wants to program, we cannot design an appropriate visual language. Recent discussions on comp.cog-eng about the scarceness (or lack) of universal icons makes me think [3] might be a major stumbling block. Any comments? -- ----------------------------------------------------------------------------- Curtis Eubanks kddlab!crls.sony.junet!creubank@uunet.uu.net Sony Corporate Research Labs creubank%crls.sony.co.jp@uunet.uu.net Information Systems creubank@crls.sony.co.jp -----------------------------------------------------------------------------