Skip to main content
Kent Academic Repository

Frame-Based Editing: Combining the Best of Blocks and Text Programming

Brown, Neil C.C., Altadmri, Amjad, Kölling, Michael (2016) Frame-Based Editing: Combining the Best of Blocks and Text Programming. In: Learning and Teaching in Computing and Engineering (LaTiCE), 2016 International Conference on. . (doi:10.1109/LaTiCE.2016.16) (KAR id:54394)


Editing program code as text has several major weaknesses: syntax errors (such as mismatched braces) interrupt programmer flow and make automated tool support harder, boilerplate code templates have to be typed out, and programmers are responsible for layout. These issues have been known about for decades, but early attempts to address these issues, in the form of structured editors, produced unwieldy, hard-to-use tools which failed to catch on. Recently, however, block-based editors in education like Scratch and Snap! have demonstrated that modern graphical structured editors can provide great benefits for programming novices, including very young age groups. These editors become cumbersome for more advanced users, due to their unbending focus on mouse input for block creation and manipulation, and poor scaling of navigation and manipulation facilities to larger programs. Thus, after a few years, learners tend to move from Scratch to text-based editing.

In this paper, we present the design and implementation of a novel way to edit programs: frame-based editing. Frame-based editing improves text-based editing by incorporating techniques from block-based editing, and thus provides a suitable follow- on from tools like Scratch. Frame-based editing retains the easy navigation and clearer display of textual code to support manipulation of complex programs, but fuses this with some of the structured editing capabilities that block programming has shown to be viable. The resulting system combines the advantages of text and structured blocks. Preliminary experiments suggest that frame-based editing enables faster program entry than blocks or text, while resulting in fewer syntax errors. We believe it provides an interesting future direction for program editing for learners at all levels of proficiency.

Item Type: Conference or workshop item (Paper)
DOI/Identification number: 10.1109/LaTiCE.2016.16
Uncontrolled keywords: programming education, editing, blocks, text, frame-based editing
Subjects: Q Science > QA Mathematics (inc Computing science) > QA 76 Software, computer programming, > QA76.76 Computer software
Q Science > QA Mathematics (inc Computing science) > QA 76 Software, computer programming, > QA76.9.H85 Human computer interaction
Divisions: Divisions > Division of Computing, Engineering and Mathematical Sciences > School of Computing
Depositing User: Michael Kolling
Date Deposited: 01 Mar 2016 14:32 UTC
Last Modified: 09 Mar 2023 11:34 UTC
Resource URI: (The current URI for this page, for reference purposes)

University of Kent Author Information

Brown, Neil C.C..

Creator's ORCID:
CReDIT Contributor Roles:

Altadmri, Amjad.

Creator's ORCID:
CReDIT Contributor Roles:

Kölling, Michael.

Creator's ORCID:
CReDIT Contributor Roles:
  • Depositors only (login required):

Total unique views for this document in KAR since July 2020. For more details click on the image.