Archives for : bcs

HCI 2013 publication – cognitive models

I have a paper coming up at BCS HCI 2013 (September 11-13th, London), “Predictive Modelling for HCI Problems in Novice Program Editors” (Fraser McKay and Michael Kölling). It’s a predictive human performance modelling approach to learner programmer tools, carried out with CogTool. Second author is my PhD supervisor. From the abstract:

We extend previous cognitive modelling work to four new programming systems, with results contributing to the development of a new novice programming editor. Results of a previous paper, which quantified differences in certain visual languages, and feedback we had regarding interest in the work, suggested that there may be more systems to which the technique could be applied. This short paper reports on a second series of models, discusses their strengths and weaknesses, and draws comparisons to the first. This matters because we believe “bottlenecks” in interaction design to be an issue in some beginner languages – painfully slow interactions may not always be noticeable at first, but start to become intrusive as the programs grow larger. Conversely, text-based languages are generally less viscous, but often use difficult symbols and terminology, and can be highly error-prone. Based on the models presented here, we propose some simple design choices that appear to make a useful and substantive difference to the editing problems discussed.

This is a short paper, that ties up the loose ends of a previous HCI paper.

EDIT 12/09/13: I’ve posted a link to my copy of the PDF, and it’s also in open-access on the KAR (my university’s institutional repository). ACM and BCS links will (presumably) follow once available.

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.”

Interfaces: HCI for Beginner Programmers

This morning, I got my spring copy of the BCS HCI magazine Interfaces. I’m pleased to be published in this quarter’s issue, as part of the “My PhD” series. In the article, I give a brief overview of my general project, and then run through some of the usability heuristics that we’ve been developing for novice programming tools.

McKay, F. HCI for Beginner Programmers. Interfaces, British Computer Society, 90 (2012), 22-23.

Update 19/04/12: an open-access PDF is available from the BCS.

I’ve pasted the introduction here:

My PhD is based in the Programming Education Tools group at the University of Kent, and my project concerns the development of a new way for novices to enter and maintain code. Coding in schools has recently been a more topical issue than usual [1]. Most of my work so far has been about analysing existing systems, but I’ve also begun to work with some early designs. My review of existing systems has been structured with thirteen new heuristics. These are based on previous heuristics [7], the cognitive dimensions [2], and a wider review of the literature on novice programming errors. For specific features, Cog Tool models [4] have exposed subtle differences in the effort a novice might need to exert to make changes in two comparable code editors. Now, at the start of my second year, I am working on prototypes that might make it into a new programming tool.

Royal Society Computing in Schools

The BCS has published news on the Royal Society’s Call for Evidence on school computing.

The study will be led by Professor Steve Furber FRS, with an Advisory Group bringing together school teachers, academics and industrialists to steer the project. This open call for evidence precedes a series of stakeholder engagement events which will take place later in 2010 and early 2011, and will help the Society focus these sessions and identify where new research is needed.

It’s good to see a drive towards new research in computing education – something that, to a new researcher, sometimes still seems a bit niche. Look at SIGCSE’s membership size and compare to the number of teachers and lecturers involved in teaching computing internationally…

Degree complete

I’ve received my results this week, and have achieved a first-class honours degree (BSc Hons).

I’m also awaiting the verification of my MBCS status after upgrading from being a student member.