Programming language, natural language? Supporting the diverse computational activities of novice programmers

Good, Judith and Howland, Kate (2017) Programming language, natural language? Supporting the diverse computational activities of novice programmers. Journal of Visual Languages and Programming, 39. pp. 78-92. ISSN 1045-926X

[img] PDF - Published Version
Restricted to SRO admin only

Download (1MB)
[img] PDF - Accepted Version
Available under License Creative Commons Attribution-NonCommercial No Derivatives.

Download (4MB)


Given the current focus on teaching computational concepts to all from an early age, combined with the growing trend to empower end users to become producers of technology rather than mere consumers, we consider the issue of “computational notation”. Specifically, where the goal is to help individuals develop their understanding of computation and/or use computation in real world settings, we question whether natural language might be a preferred notation to traditional programming languages, given its familiarity and ubiquity. We describe three empirical studies investigating the use of natural language for computation in which we found that although natural language provides support for understanding computational concepts, it introduces additional difficulties when used for coding. We distilled our findings into a set of design guidelines for novice programming environments which consider the ways in which different notations, including natural language, can best support the various activities that comprise programming. These guidelines were embodied in Flip, a bi-modal programming language used in conjunction with the Electron toolset, which allows young people to create their own commercial quality, narrative based role- playing games. Two empirical studies on the use of Flip in three different real world contexts considered the extent to which the design guidelines support ease of use and an understanding of computation. The guidelines have potential to be of use both in analysing the use of natural language in existing novice programming environments, and in the design of new ones.

Item Type: Article
Keywords: novice programming, visual programming languages
Schools and Departments: School of Engineering and Informatics > Informatics
Research Centres and Groups: Creative Technology
Subjects: G Geography. Anthropology. Recreation > GV Recreation. Leisure > GV1199 Games and amusements > GV1221 Indoor games and amusements > GV1469.15 Computer games. Video games. Fantasy games
Depositing User: Judith Good
Date Deposited: 14 Dec 2016 15:05
Last Modified: 18 Feb 2021 16:26

View download statistics for this item

📧 Request an update
Project NameSussex Project NumberFunderFunder Ref
Flip: A concurrent bi-modal programming language for computational thinkingG0307EPSRC-ENGINEERING & PHYSICAL SCIENCES RESEARCH COUNCILEP/G006989/1