Maria Knobelsdorf, University of Dortmund, Germany - Didaktik der ...
Maria Knobelsdorf, University of Dortmund, Germany - Didaktik der ...
Maria Knobelsdorf, University of Dortmund, Germany - Didaktik der ...
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
3. DUAL NATURE CONCEPT<br />
The concept (and term) ‘structure’ is borrowed from the philosophy<br />
<strong>of</strong> technology (see [31] for details). Due to the dual nature <strong>of</strong><br />
technical artifacts, there is the need to un<strong>der</strong>stand the function <strong>of</strong> a<br />
technical artifact as well as its internal design, the structure (structure),<br />
in or<strong>der</strong> to fully un<strong>der</strong>stand it.<br />
Function captures the perspective <strong>of</strong> the use, and the purpose <strong>of</strong><br />
the artifact: What should it be used for? What can be done with it?<br />
structure describes the internal mechanics: How it is made, how it<br />
works and which concepts are used in its (internal) design.<br />
Note, that ‘structure’ – in difference to the use <strong>of</strong> this term in<br />
computing – includes (data) structures as well as algorithms and<br />
processes.<br />
The need to un<strong>der</strong>stand the internal ‘mechanics’ or ‘principles’<br />
un<strong>der</strong>lying the perceived function (functionality) is not restricted<br />
to use. It is also acknowledged as a problem for novices learning<br />
programming, in [3], [23], and [34] similar dual conceptions are<br />
proposed. From now on and the rest <strong>of</strong> the article we use the terms<br />
‘structure’ and ‘function’ to refer to this philosophical meaning.<br />
The concept proposed here is to uncover structure behind function<br />
(by experimenting); and thus bridging the perceived gap between<br />
function and structure for Outsi<strong>der</strong>s. But at the same time, structure<br />
is still in focus, so that such teaching units should be <strong>of</strong> interest<br />
and motivating for Insi<strong>der</strong>s, too.<br />
The key idea is the perception <strong>of</strong> the dual nature <strong>of</strong> digital artifacts,<br />
which can be described by structure and function. Function<br />
is implemented by structure, and structure is designed with a<br />
purpose in mind; hence both are closely connected. Ideally, there<br />
is a ‘harmony’ between structure and function.<br />
Based on structure-knowledge, it should be easier to predict (and<br />
expect) certain functionalities in digital artifacts, to predict and<br />
expect certain ruptures, and to un<strong>der</strong>stand and memorize tactics<br />
and strategies in the use <strong>of</strong> digital artifacts (for such examples, see<br />
e.g. [3]).<br />
Vice-versa, based on function-knowledge, it should be easier to<br />
evaluate such an artifact. If a person truly un<strong>der</strong>stands the purpose<br />
<strong>of</strong> an artifact, she is better able to assess whether the chosen and<br />
implemented structure (the technical ‘solution’) fits the user expectations.<br />
Without such an integrated un<strong>der</strong>standing one is only<br />
able to state being unable to carry out the desired purpose with the<br />
tool – but not whether such usage problems are due to features <strong>of</strong><br />
the structure.<br />
Of course, this duality is an analytical concept; in ‘real life’ there<br />
exist only ‘complete’ digital artifacts – but the duality highlights<br />
typical pattern <strong>of</strong> perceiving and un<strong>der</strong>standing such artifacts.<br />
A last issue is the notion that immediate ‘jumping into’ discussing<br />
structure by a teacher might slow down the learning process,<br />
because learners are missing important aspects (namely the function)<br />
needed to really un<strong>der</strong>stand and memorize the teaching<br />
content. Even worse, if they don’t grasp the function related to<br />
structure, they aren’t able to see the usefulness <strong>of</strong> the learning<br />
content at all.<br />
3.1 Discussion <strong>of</strong> possible misconceptions<br />
In this section some important aspects <strong>of</strong> the concept are rephrased,<br />
in or<strong>der</strong> to discuss some misconception the author noticed<br />
when presenting the concept.<br />
These misconceptions might be due to the education <strong>of</strong> the typical<br />
audience <strong>of</strong> computing engineers. As Kroes [19] discuss, engineering<br />
education can be interpreted as learning to bridge struc-<br />
46<br />
ture and function – so to speak automatically and unconsciously.<br />
Therefore engineers are trained to overlook the gap and therefore<br />
are likely to regard the concept as not really important, as the<br />
main problems <strong>of</strong> the engineer are to refine and produce a suitable<br />
technical solution (the structure) for a given description <strong>of</strong> the<br />
function.<br />
1) The first misconception is therefore the notion that duality<br />
refers to the gap between the outside and the inside: The<br />
function is perceived by the (external) user, whereas the<br />
structure is in focus <strong>of</strong> the engineer, who focusses on the inside.<br />
In fact, the duality can be observed for or within every<br />
part <strong>of</strong> a digital system. Think e.g. about abstraction and the<br />
layered model <strong>of</strong> network protocols. Each layer is used for<br />
the next one, and itself hides the internal structure. Another<br />
example is abstract data types: Again, we see abstraction<br />
from structure, so that the engineer can focus on using the<br />
data type. (Note, however, that e.g. the java library gives<br />
hints about the internal structure when naming classes like<br />
ArrayList or LinkedList – so that the user <strong>of</strong> the class has<br />
some information whether it is better to use ArrayList <strong>of</strong><br />
LinkedList, also the functionality is the same)<br />
2) The second misconception, related to the first one is that<br />
people have problems declaring an aspect as structure, and<br />
another as function. It seems easy when looking at inside/outside<br />
the whole system (see misconception one). But<br />
is an ArrayList a function or a structure? The answer is – <strong>of</strong><br />
course – that it is both. Every part <strong>of</strong> a digital artifact as well<br />
as the whole can be perceived from either the viewpoint <strong>of</strong><br />
function, or from the viewpoint <strong>of</strong> structure. Because the artifact(s)<br />
embody a dual nature: The need to be un<strong>der</strong>stood in<br />
terms <strong>of</strong> function, <strong>of</strong> structure and in terms <strong>of</strong> their dual nature,<br />
there specific link between both sides. (The crucial observation<br />
from philosophy <strong>of</strong> technology is that a) it is quite<br />
hard to see both sides <strong>of</strong> the coin at the same time and b) that<br />
the two sides are based on quite different ontological and<br />
epistemological grounds)<br />
3) Misconceptions regarding structure: structure seen as in data<br />
structure, and missing e.g. algorithms or any other dynamic<br />
aspect <strong>of</strong> the implementation. Of course, structure is not a<br />
term from computing (as it is used here), but from technical<br />
philosophy and as such encompasses the mentioned aspects.<br />
A similar term used in computing might be mechanism.<br />
4) Misconception regarding function: as function as it is used in<br />
computing: the functionality, or as the use <strong>of</strong> the artifact, its<br />
design goals, requirements. To refer to the example used<br />
above, the dichotomy was mechanisms and goals. Similarly<br />
intention could be used. However, such an impression is too<br />
narrow, as function also includes the impact which was not<br />
intended (or as an engineer might say: mal-function).<br />
5) Another misconception might be triggered by the use <strong>of</strong> the<br />
terms insi<strong>der</strong> and outsi<strong>der</strong>, which associate the superiority or<br />
preference for insi<strong>der</strong>s. While it is a legitimate goal to foster<br />
interest for computing, the main goal <strong>of</strong> this approach is fostering<br />
self-determination - which includes <strong>of</strong> course the legitimate<br />
decision not to study computing. But such decisions, as<br />
well as a so-called Outsi<strong>der</strong>s attitude towards digital artifacts<br />
should be based on a somewhat truthful perception <strong>of</strong> the<br />
discipline and the nature <strong>of</strong> digital artifacts.<br />
4. Changing computing education<br />
In the end, this approach strives for a change in computing education<br />
on the school level. As can be seen in natural science or math,