Archives for : August2012

HCI 2012 publication

I’m presenting a work-in-progress paper at the BCS HCI 2012, next month in Birmingham. HCI (the “People and Computers” series) is one of the big international HCI conferences, now older than some of the participants, in year 26 (I’m 23!). This is a work-in-progress paper entitled “A Prototype Structured but Low-viscosity Editor for Novice Programmers”. The abstract, below, is on the conference programme site. The paper will be published in the proceedings, and on the ACM digital library and the BCS ewics archive - which I’ll link to here later.

EDIT: BCS ewics repository (PDF – open access)
EDIT: ACM digital library (PDF – login required)

“This paper presents work in progress on a prototype programming editor that combines the flexibility of keyboard-driven text entry with a structured visual representation, and drag-and-drop blocks. Many beginners learn with Java, a traditional text-based language. While text entry is ideal for experts desiring speed and efficiency, there is evidence in the literature that a significant portion of novice errors are related to syntax. Some beginners learn with Scratch, Alice and Star Logo, all of which have drag-and-drop, “block”-based interfaces. Validation makes them less prone to syntax errors, but they are very “viscous” – there is resistance to changing or rearranging statements once they have been entered. The new system combines keyboard input with statements that can still be manipulated with the mouse as whole blocks. Standard text idioms can be used – highlighting code by dragging the mouse, copying & pasting (as text), etc. With CogTool cognitive/keystroke models, we show that the new system effectively overcomes the viscosity found in block-based languages, but it retains much of the error-proofing. Work is ongoing, but there are implications for the design of a new novice programming system.”