Accelerated by the Do-It-Yourself mindset of the Web 2.0 culture, end-user programming-programming by end users with limited or even no formal programming background-is growing rapidly. Especially in educational setti...
详细信息
ISBN:
(纸本)9781457712456
Accelerated by the Do-It-Yourself mindset of the Web 2.0 culture, end-user programming-programming by end users with limited or even no formal programming background-is growing rapidly. Especially in educational settings, children are exposed to computational thinking by making games, building scientific simulations and creating stories. Early educational programming languages such as Logo have made programming substantially more accessible to end-users. More recent approaches include visual programming with a drag-and-drop style of programming that makes it nearly impossible to compose syntactically incorrect programs. However, as the syntactic challenges of end-user programming are gradually fading into the past, the new frontier of semantic programming support emerges. This demonstration introduces Conversational programming, a system to make programming more conversational. A conversational programming agent runs programs one step into the future in order to help end-users visualize discrepancies between the programs they intended to write and their actual programming results.
The goal of our research is to create and evaluate a visual and gesture-driven interface to teach computer programming to non-traditional programmers, typically school-age children. By making the interface more enjoya...
详细信息
ISBN:
(纸本)9783319922850;9783319922843
The goal of our research is to create and evaluate a visual and gesture-driven interface to teach computer programming to non-traditional programmers, typically school-age children. By making the interface more enjoyable for young students, we hope to keep students engaged and increase their attention span while learning how to program. Our system combines components from Google's Blockly, a visual block programming language with drag-and-drop puzzle pieces, and Microsoft's Xbox Kinect, which is used to perform skeletal tracking. We created pre-defined gestures to correspond to program functions and available actions, which were compiled from a survey conducted of over 100 grade-school students over three years who had very little to no programming experience before we met. After learning how to use Blockly and having a basic understanding of simple programming logic, the students were asked to create intuitive gestures for common programming constructs, while both standing up using full body movement, and sitting down at a desk, using only their hands. The specific programming constructs included in the survey were loops, conditionals, run program, and undo. To detect the gestures, we have implemented and evaluated a number of gesture matching algorithms. One challenge is that the size, shape, and path of the gestures varied considerably, so the data has to be normalized for any comparisons.
In this paper, we discuss methods and concepts of Object Oriented programming (OOP) for graphical modeling. We illustrate through a set of examples how geometrical models are built, and visualized solutions to logisti...
详细信息
ISBN:
(纸本)9789532330762
In this paper, we discuss methods and concepts of Object Oriented programming (OOP) for graphical modeling. We illustrate through a set of examples how geometrical models are built, and visualized solutions to logistics network design problems are obtained. We develop a methodological framework for visual programming and linking of graphical models concepts, and introduce the basic concepts of graphical models: lines, arrows, nodes and coordinates. We use block diagrams and object-oriented programming to program and link the concepts of graphical models using visual Basic for Excel.
The work presented in this paper is part of PRIM project [8] which aims to enable naive users - people with no programming skills - to create human-machine interaction scenarios. This paper presents a literature revie...
详细信息
ISBN:
(纸本)9783031628481;9783031628498
The work presented in this paper is part of PRIM project [8] which aims to enable naive users - people with no programming skills - to create human-machine interaction scenarios. This paper presents a literature review which objectives are to understand why learning computer programming and algorithms is such a complex activity, and how visual programing languages, learning tools, digital tools designed for non-developers and their features can inspire the design of a human-machine interaction scenarios authoring tool, in order to propose a series of recommendations for the design of a human-machine interaction scenarios authoring tool.
CLIP 4 Robotics is an icon-based visual programming Language (VPL) that is designed for the novice programmer. The VPL program is written as a series of icons that represent program instruction syntax. The images allo...
详细信息
ISBN:
(纸本)9783319922850;9783319922843
CLIP 4 Robotics is an icon-based visual programming Language (VPL) that is designed for the novice programmer. The VPL program is written as a series of icons that represent program instruction syntax. The images allow for a wide age range to use the VPL from children to adults. Icons allow for users to feel less intimated with programming than with text-based languages. CLIP 4 Robotics has a user-defined syntax that helps the novice comprehend the language especially children. Icons allow children that have let master reading to program. Example programs are shown that demonstrate the CLIP 4 Robotics language in two different scenarios.
The application of sense-reason-act (SRA) programming in contemporary education can ensure the development of computational thinking (CT) at a more advanced level. SRA-programming has been identified as an instrumenta...
详细信息
The application of sense-reason-act (SRA) programming in contemporary education can ensure the development of computational thinking (CT) at a more advanced level. SRA-programming has been identified as an instrumental way of thinking for learning to program robots and encourages the development of the more complex concepts of programming. visual programming environments are diverse in appearance and prove to be an excellent way to teach pupils the basic ideas of programming. It is important to investigate whether the type of output has a characteristic influence on the level of development of CT in visual programming environments. In this research, we therefore explore whether characteristic differences in the development of CT can be measured when SRA-programming is applied in a visual programming environment with an on-screen output or a tangible output. It was expected that the observed effect of pupils' programming actions through the application of SRA would show that the type of output influences the understanding of complex programming concepts at a higher level. Our results indicate that SRA-programming with visual, on-screen output yields a significant increase in the development of CT, as opposed to SRA-programming with a tangible output. The development of complex programming concepts can also be demonstrated.
This paper presents implementation of data visualization functions and the corresponding interfaces for *AIDA. *AIDA is a programming/modeling language representing algorithms by pictures and moving pictures. *AIDA an...
详细信息
ISBN:
(纸本)9781479923649
This paper presents implementation of data visualization functions and the corresponding interfaces for *AIDA. *AIDA is a programming/modeling language representing algorithms by pictures and moving pictures. *AIDA and its modeling environment visualize methods (algorithms) as well as output results. Libraries of the functions enable *AIDA users to visualize their computational result based on various methods of visualization. One of important features of the interfaces is that the functions analyze the corresponding data (variables) and automatically select appropriate visualization methods. The prototypes of the libraries and interfaces have been developed based on Java Script and HTML5. The libraries include not only basic methods such as bars, pies, lines, but also particular methods including chords, meshes, and other space structures such as graphs. The proposed visualization interfaces have been integrated into the *AIDA programing environment. The libraries give *AIDA users cognitive enhancement and increase understandability of the corresponding models, simulations, and algorithms.
Manycore architecture promotes a massively parallel computing on the accelerators. Especially GPU is one of the main series of the high performance computing, which is also employed by top supercomputers in the world....
详细信息
ISBN:
(纸本)9780769551173
Manycore architecture promotes a massively parallel computing on the accelerators. Especially GPU is one of the main series of the high performance computing, which is also employed by top supercomputers in the world. However, the programming method on such accelerators needs the double programming, in which the programmer needs to develop a control program executed on the CPU side to schedule the invocation of the accelerator's kernel program. Moreover, the programmer needs to consider the stream computing paradigm. To overcome the difficulty, the author of this paper has proposed and implemented a commandline-based programming tool called CarSh that eliminates to develop the CPU program from the programmer. Using the CarSh, it is available to implement a GUI-based programming tool for the accelerators that visualizes a pipeline-based processing flow by connecting the kernel programs via the I/O data streams. In the case of applying the GUI-based programming, it is very hard to find the starting point of a complex processing flow. Moreover, although the processing pipeline should include the potential parallelism, it is hard for the programmer to exploit it intuitively. This paper proposes an algorithm that addresses those difficulties, and also evaluates the performance aspect using CarSh environment.
In light of the complexity of introductory programming for young learners, visual programming has become more and more popular. In particular, block-based educational programming systems have emerged as an area of act...
详细信息
ISBN:
(纸本)9781450366908
In light of the complexity of introductory programming for young learners, visual programming has become more and more popular. In particular, block-based educational programming systems have emerged as an area of active research. This paper introduces an educational block-based programming application, enabling young learners to learn and make programs in the context of smart homes. In this application, smart objects have a set of primitive behaviors which can be integrated in the general features of programming languages like variables, conditionals, loops, and functions. The programming language is shown in a graphical interface to enable young students to program with the application. The development and implementation of this application, along with helping features for the students are described. In a pilot study with 20 7th grade students, the application's effectiveness and ease of use are evaluated. The results show that students can fairly solve programming problems and make real programs in the context of smart homes. Feedback of the learners is presented and discussed.
Representing programs as text strings makes programming harder then it has to be. The source text of a program is far removed from its behavior. Bridging this conceptual gulf is what makes programming so inhumanly dif...
详细信息
Representing programs as text strings makes programming harder then it has to be. The source text of a program is far removed from its behavior. Bridging this conceptual gulf is what makes programming so inhumanly difficult - we are not compilers. Subtext is a new medium in which the representation of a program is the same thing as its execution. Like a spreadsheet, a program is visible and alive, constantly executing even as it is edited. Program edits are coherent semantic transformations. The essence of this new medium is copying. Programs are constructed by copying and executed by copyflow: the projection of changes through copies. The simple idea of copying develops into a rich theory of higher-order continual copying of trees. Notably absent are symbolic names, the workhorse of textual notation, replaced by immediately-bound explicit relationships. Subtext unifies traditionally distinct programming tools and concepts, and enables some novel ones. Ancestral structures are a new primitive data type that combines the features of lists and records, along with unproblematic multiple inheritance. Adaptive conditionals use first-class program edits to dynamically adapt behavior. A prototype implementation shows promise, but calls for much further research. Subtext suggests that we can make programming radically easier, if we are willing to be radical.
暂无评论