Journal of Visual Languages and Sentient Systems
Total Page:16
File Type:pdf, Size:1020Kb
Journal of Visual Languages and Sentient Systems Editor-in-Chief Shi-Kuo Chang, University of Pittsburgh, USA Co-Editors-in-Chief Gennaro Costagliola, University of Salerno, Italy Paolo Nesi, University of Florence, Italy Gem Stapleton, University of Brighton, UK Franklyn Turbak, Wellesley College, USA An Open Access Journal published by KSI Research Inc. 156 Park Square Lane, Pittsburgh, PA 15238 USA i VLSS Editorial Board Tim Arndt, Cleveland State University, USA Alan F. Blackwell, University of Cambridge, United Kingdom Paolo Bottoni, University of Rome, Italy Francesco Colace, Univeristy of Salerno, Italy Maria Francesca Costabile, University of Bari, Italy Philip T. Cox, Dalhousie University, Canada Martin Erwig, Oregon State University, USA Vittorio Fuccella, University of Salerno, Italy Angela Guercio, Kent State University, USA Erland Jungert, Swedish Defence Research Establishment, Sweden Kamen Kanev, Shizuoka University, Japan Robert Laurini, University of Lyon, France Jennifer Leopold, Missouri University of Science & Technology, USA Mark Minas, University of Munich, Germany Brad A. Myers, Carnegie Mellon University, USA Joseph J. Pfeiffer, Jr., New Mexico State University, USA Genny Tortora, University of Salerno, Italy Kang Zhang, University of Texas at Dallas, USA Copyright ⓒ 2017 by KSI Research Inc. All rights reserved. No part of this publication may be reproduced, stored in a retrieval system, or transmitted, in any form or by any means, electronic, mechanical, photocopying, recording, or otherwise, without the prior written consent of the publisher. DOI: 10.18293/VLSS2017 Proceedings preparation, editing and printing are sponsored by KSI Research Inc. ii Journal of Visual Languages and Sentient Systems Volume 3, 2017 Table of Contents Information for Authors……………………………………………………………………………………...…….iv Guest Editor Introduction to the VLSS Special Issue on Blocks Programming………………………....v Franklyn Turbak Regular Papers SparqlBlocks: Using Blocks to Design Structured Linked Data Queries……………………………………...………...1 Miguel Ceriani and Paolo Bottoni Lessons in Combining Block-based and Textual Programming………………………………………………..……....22 Michael Homer and James Noble Frame-Based Editing……………………………………………………………………………………………...…....40 Michael Kölling, Neil C. C. Brown, and Amjad Altadmri Moving Beyond Syntax: Lessons from 20 Years of Blocks Programing in AgentSheets……………………………..68 Alexander Repenning How Block-based Languages Support Novices: A Framework for Categorizing Block-based Affordances…………………………………………………………………………………...………………………..92 David Weintrop and Uri Wilensky Towards Understanding Successful Novice Example Use in Blocks-Based Programming………………..………...101 Michelle Ichinco, Kyle Harms, and Caitlin Kelleher Research Notes Design Considerations to Increase Block-based Language Accessibility for Blind Programmers Via Blockly………………………………………………………………………………….………...119 Stephanie Ludi and Mary Spencer Reviewers…………………………………………………………………………………………………..………A-1 Author Index……………………………………………………………………………………………..……......A-2 Keyword Index……………………………………………………………………………………………..……..A-3 iii INFORMATION FOR AUTHORS The Journal of Visual Languages and Sentient Systems (VLSS) is intended to be a forum for researchers, practitioners and developers to exchange ideas and research results, for the advancement of visual languages and sentient multimedia systems. Sentient systems are distributed systems capable of actively interacting with the environment by gathering, processing, interpreting, storing and retrieving multimedia information originated from sensors, robots, actuators, websites and other information sources. In order for sentient systems to function efficiently and effectively, visual languages may play an important role. VLSS publishes research papers, state-of-the-art surveys, review articles, in the areas of visual languages, sentient multimedia systems, distributed multimedia systems, sensor networks, multimedia interfaces, visual communication, multi-media communications, cognitive aspects of sensor-based systems, and parallel/distributed/neural computing & representations for multimedia information processing. Papers are also welcome to report on actual use, experience, transferred technologies in sentient multimedia systems and applications. Timely research notes, viewpoint articles, book reviews and tool reviews, not to exceed three pages, can also be submitted to VLSS. Manuscripts shall be submitted electronically to VLSS. Original papers only will be considered. Manuscripts should follow the double-column format and be submitted in the form of a pdf file. Page 1 should contain the article title, author(s), and affiliation(s); the name and complete mailing address of the person to whom correspondence should be sent, and a short abstract (100-150 words). Any footnotes to the title (indicated by *, +, etc.) should be placed at the bottom of page 1. Manuscripts are accepted for review with the understanding that the same work has not been and will not be nor is presently submitted elsewhere, and that its submission for publication has been approved by all of the authors and by the institution where the work was carried out; further, that any person cited as a course of personal communications has approved such citation. Written authorization may be required at the Editor's discretion. Articles and any other material published in VLSS represent the opinions of the author(s) and should not be construed to reflect the opinions of the Editor(s) and the Publisher. Paper submission should be through https://www.easychair.org/conferences/?conf=dmsvlss2017 For further information contact: [email protected] iv Guest Editor Introduction to the VLSS Special Issue on Blocks Programming Franklyn Turbak Computer Science Department Wellesley College, Wellesley MA, USA [email protected] This special issue of the Journal of Visual Languages and are worth incorporating into IDEs for traditional programming Sentient Systems (VLSS) focuses on Blocks Programming. environments? What are effective mechanisms for multiple Over the past twenty years, blocks programming languages people to collaborate on a single blocks program when they have evolved from research lab prototypes to practical tools are co-located or are working together remotely? Can blocks- used by tens of millions of people. The core idea behind these based environments be made accessible to users with visual languages is simple: rather than constructing programs out of or motor impairments? sequence of characters that are lexed into tokens that are parsed These questions are being investigated by educators, soft- into syntax trees, why not construct syntax trees more directly ware developers, and researchers from areas that include by composing drag-and-drop visual fragments that represent visual languages, human-computer interaction, programming the nodes of the trees? languages, education, psychology, learning science, and data There are now a host of blocks languages that can be used analytics. This special issue gives a sample of the kinds of for a wide variety of purposes, such as creating games, script- research and development that is taking place in the blocks ing 3D animations, inventing mobile apps, developing agent- programming community. based simulations, controlling robots, generating 3D models. and collecting/analyzing/visualizing scientific data. Many blocks languages are domain-specific languages Educators have seized upon blocks languages as a way to (DSLs) that are not general programming systems but are in- introduce beginners to computer science concepts. Environ- stead targeted at tasks in a particular domain. An excellent ex- ments like Scratch, Blockly, Pencil Code, App Inventor, Snap!, ample of such a DSL is SparqlBlocks, a blocks-based environ- AgentSheets/AgentCubes, and Alice/Looking Glass have be- ment for making queries to find information encoded in linked come popular ways to introduce students (from grade school- data within the semantic web. This system is described by its ers through graduate students) to computational thinking and creators, Miguel Ceriani and Paolo Bottoni, in the first article programming. This is done not only in traditional classrooms, of this issue, SparqlBlocks: Using Blocks to Design Structured but also in extracurricular settings via online activities like Linked Data Queries. The SparqlBlocks programming environ- Code.org’s Hour of Code. ment highlights several key advantages that blocks languages But blocks environments are also a boon to a broader have with respect to traditional textual notations (in this case, population whose primary goal is to “make stuff” rather the text-based SPARQL query language). First, SparqlBlocks than learn computer science principles. This includes artists, language features are represented by drag-and-drop blocks scientists, hobbyists, entrepreneurs, and other end users and so- whose shapes both suggest how they can be composed and called casual programmers who want to build computational only allow syntactically valid connections to be made. Second, artifacts for themselves, their families, their workplaces, their generating and editing queries involves manipulating high- communities, and the world at large. level chunks of information (blocks) as opposed to low-level There are many questions surrounding blocks languages. character representations, which not only aids the cognitive Why are they so popular? What are their key advantages and task of assembling queries but also avoids