Concrete Thoughts on Abstraction

Keiron Nicholson; Judith Good; Katy Howland

This 
paper
 considers
 he
 notion
 of
 abstraction 
and 
its 
relevance 
to 
the 
computational
 thinking
 agenda, 
including 
potential 
difficulties 
with 
its 
use, 
and 
possible 
solutions.
 
We
 first discuss
 a 
paper
 by 
Blackwell, 
Church
 and
 Green
 (2008),
 “The 
Abstract 
is 
the 
Enemy”, 
in 
which 
the
 authors 
use four examples of software design projects to outline the potential dangers of abstraction. The example projects all show how unhelpful abstractions can cause problems for users, and the authors argue that these problems result from attempts to mediate the human and technological worlds. Blackwell et al. (2008) then argue that the computational thinking drive may invite people to adopt a particular style of thinking and problem‐solving; one which sees abstraction as ‘a friend’. We argue that abstraction is neither friend nor enemy but simply a tool which can be helpful, or not, depending on the manner and context of its use. We propose that whilst the computational thinking agenda does in fact recognise this, it has not yet offered suggestions as to how people can be taught to use this tool effectively. We consider abstraction in terms of five key skills: considering the context in which the abstraction operates, defining and choosing the right abstraction, working with multiple layers of abstraction simultaneously, considering abstractions critically, and knowing when to use abstraction. Within these five skill groups, we consider fourteen sub‐skills which we see as important to the successful use and teaching of abstraction. As such, they allow us to begin to design a ‘curriculum for abstraction’. 

Type of Publication: Paper
Conference: PPIG 2009 - 21st Annual Workshop
Publication Year: 2009
Paper #: 8
TitleConcrete Thoughts on Abstraction
Publication TypePaper
AuthorsNicholson, K, Good, J, Howland, K
PPIG Workshop: 
2009-06-21st