<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Prompting for Free Self-Explanations Promotes Better Code Comprehension</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Vasile Rus</string-name>
          <email>emailvrus@memphis.edu</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Jeevan Chapagain</string-name>
          <email>emailjchpgain@memphis.edu</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Kamil Akhuseyinoglu</string-name>
          <email>emailKAA108@pitt.edu</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Lasang Tamang</string-name>
          <email>emailljtamang@memphis.edu</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Peter Brusilovsky</string-name>
          <email>emailpeterb@pitt.edu</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Department of Computer Science, Institute of Intelligent System, University of Memphis</institution>
          ,
          <addr-line>Memphis, TN</addr-line>
          ,
          <country country="US">USA</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>School of Computing and Information, University of Pittsburgh</institution>
          ,
          <addr-line>Pittsburgh, PA</addr-line>
          ,
          <country country="US">USA</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>We present in this paper a summary analysis of log les collected during an experiment designed to test the hypothesis that prompting for free self-explanations leads to better comprehension of computer code examples. Indeed, the results indicate that students who were prompted to selfexplain while trying to understand code examples performed signi cantly better at predicting the correct output of the examples than students who were just prompted to read the code examples and predict their output.</p>
      </abstract>
      <kwd-group>
        <kwd>eol&gt;self-explanation</kwd>
        <kwd>code comprehension</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. INTRODUCTION</title>
      <p>
        Code comprehension, i.e., understanding of computer code,
is a critical skill for both learners and professionals.
Students learning computer programming spend a signi cant
portion of their time reading or reviewing someone else's
code (e.g., code examples from a textbook or provided by
the instructor). Furthermore, it has been estimated that
software professionals spend at least half of their time
anaCopyright ©2021 for this paper by its authors. Use permitted under
Creative Commons License Attribution 4.0 International (CC BY 4.0)
lyzing software artifacts in an attempt to comprehend
computer source code. Reading code is the most time-consuming
activity during software maintenance, consuming 70% of the
total life-cycle cost of a software product [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ]. O'Brien [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ]
notes that source code comprehension is required when a
programmer maintains, reuses, migrates, re-engineers, or
enhances software systems. Therefore, o ering support to
enhance learners' source code comprehension skills will have
lasting positive e ects for their academic success and future
professional careers.
      </p>
      <p>
        In fact, such support should have a signi cant impact on
aspiring Computer Science (CS) students' learning, self-e cacy,
and overall success and graduation rates. Indeed, although
computing skills are in high-demand, and the number of
aspiring CS students is encouraging, a large gap between the
supply of CS graduates and the demand persists because
college CS programs have attrition rates of 30{40% (or even
higher) in introductory CS courses (e.g., CS1 and CS2) [
        <xref ref-type="bibr" rid="ref13 ref2">13,
2</xref>
        ]. Advances towards the development of e ective and
engaging instructional interventions to improve comprehension
and learning in introductory Computer Science courses at
the college level, to reduce attrition rates and increase
retention, and to ultimately produce more and better trained
graduates are much needed. The result will be a
win-winwin situation for aspiring students, CS programs and their
organizations, and the overall economy.
      </p>
      <p>Our broader research agenda is to propose and study such
novel instructional interventions to improve comprehension
and learning in intro-to-programming courses at college level.
Speci cally, our goal is to develop a web-based learning and
research environment that allows us to model, monitor,
scaffold, and investigate source code comprehension and
learning processes. A sub-goal is to explore instructional
strategies that promote deep code comprehension and learning.
One such strategy, based on theories of self-explanation, is to
elicit self-explanations, i.e., student self-generated
explanations of a target text, e.g. science paragraph from a science
textbook, or, in our case, of a code example. To this end, we
present in this paper a summary of a randomized controlled
experiment in which we tested the hypothesis that
prompting for free-self explanation, i.e., self-explanations that
students freely generate without any signi cant training.</p>
    </sec>
    <sec id="sec-2">
      <title>2. RELATED WORK</title>
      <p>
        Prior CS education research documented the di culty novice
programmers face with constructing accurate mental
models during key learning activities, such as source code
comprehension [
        <xref ref-type="bibr" rid="ref16 ref21 ref22 ref26">26, 21, 22, 16</xref>
        ]. This challenge is not surprising
given that constructing mental representations is considered
a higher-level skill of comprehension, typically engendering a
high cognitive load [
        <xref ref-type="bibr" rid="ref12 ref14 ref25 ref27">14, 27, 25, 12</xref>
        ]. The importance of
building accurate mental models during learning tasks has been
well established for decades in domains like science [
        <xref ref-type="bibr" rid="ref10 ref11 ref19 ref7">7, 11, 19,
10</xref>
        ] as well as in CS education [
        <xref ref-type="bibr" rid="ref16 ref21 ref22 ref26">26, 21, 22, 16</xref>
        ]. Nevertheless,
further research is needed to fully understand what factors
can mediate the construction of accurate mental model and
learning and build e ective instructional interventions that
can monitor and sca old learners' comprehension and
learning processes. The intervention can be instructor driven or
Arti cial Intelligence driven like in adaptive instructional
systems of the kind we intend to develop.
      </p>
      <p>
        Self-explanation theories [
        <xref ref-type="bibr" rid="ref4 ref5">5, 4</xref>
        ] indicate that students who
engage in self-explanations, i.e. explaining the target
material to themselves, while learning are better learners, i.e.
learn more deeply and show highest learning gains. The
positive e ect of self-explanation on learning has been
demonstrated in di erent science domains such as biology [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] and
physics [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ], math [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ], and programming [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]. Self-explanation's
e ectiveness for learning is attributed to its constructive
nature, e.g., it activates several cognitive processes such
generating inferences to ll in missing information and
integrating new information with prior knowledge, monitoring
and repairing faulty knowledge, and its meaningfulness for
the learner, i.e., self-explanations are self-directed and
selfgenerated making the learning and target knowledge more
personally meaningful, in contrast to explaining the
target content to others [
        <xref ref-type="bibr" rid="ref23">23</xref>
        ]. Several types of self-explanation
prompts have been identi ed and explored such as justi
cationbased self-explanation prompts [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ] and meta-cognitive
selfexplanation prompts [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ].
[
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] which one may argue are not true self-explanations as
the learner does not generate the explanation, i.e., the 'self'
part of the 'self-explanation' is missing. Furthermore,
selfexplanation prompts can emphasize various aspects of
selfexplanations resulting in justi cation-based self-explanation
prompts [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ] or meta-cognitive self-explanation prompts [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ].
Self-explanations can also be categorized based on being
spoken (or thinking out loud) versus typed or written. The
former can be regarded as re ecting more directly students
thinking process whereas the latter may represent a more
re ned version of their thinking process as when writing we
have a tendency to re ne our sentences and therefore one
can argue the typed self-explanation engage some re ection
and re nement processes. Both have been studied in the
literature for other domains, e.g., [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ] studied think aloud
self-explanations of instructional materials in the context of
science learning and science text comprehension, whereas
[
        <xref ref-type="bibr" rid="ref18">18</xref>
        ] explored the role of written self-explanations for
reading comprehension of scienti c texts and learning of target
concepts or trying to solve a problem. They found that this
type of self-explanation bene ts pro cient readers in general
compared to less pro cient readers [
        <xref ref-type="bibr" rid="ref18">18</xref>
        ].
      </p>
      <p>We explore here the role of prompting for typed, free
selfexplanations during comprehension and learning tasks. While
students received no signi cant training with respect to what
a self-explanation should look like, e.g., integrating new
information with prior knowledge through bridging inferences,
they were shown an ideal self-explanation for one code
example at the beginning of the experiment because our pilot
experiments demonstrated that most students just
"translate in plain English" when prompted for self-explanations
of code, i.e., they restate in words each line of code with no
inferencing about the higher level functionality of various
blocks of code. To measure the accuracy of the constructed
mental models for given code example, we ask students' to
predict the output of each of the code examples. As control,
we use a condition in which students are asked to read and
predict the output of the code examples (no self-explanation
were asked for).</p>
    </sec>
    <sec id="sec-3">
      <title>3. EXPERIMENTAL SETUP</title>
      <p>We conducted a randomized control trial experiment in which
participants were assigned to two approximately equal
experimental groups: a free Self-Explanation group and a
Prediction Only (control) group. To balance the number of
participants in each group, we used a group balancing approach
which kept half students in one group while other half
students in second group. Participants were debriefed about
the purpose of the experiment and given an informed
consent form which participants had to read and sign if they
agreed with it. Those who agreed to participate in the
experiment were given clear instructions by the experimenter
and a quick introduction to the interface of the experimental
system which was accessed through a browser.</p>
      <p>
        Indeed, there are di erent ways to elicit self-explanations
which result in di erent types of self-explanations such as
spontaneous self-explanations (no prompting), free or
openended self-explanations (simple prompting to self-explain),
guided (see the Socratic method description later), and sca old- The experiment consisted of students answering a brief
backed self-explanations (in this case students are encouraged ground questionnaire regarding their programming
experito self-explain as much as possible by themselves and of- ence, a more speci c programming knowledge self-e cacy
fered support in the form of hints when oundering). Other questionnaire, a con dence survey targeting the
programforms of self-explanations have been tried such as "complete ming concepts/topics covered by the main task, a pre-test
given self-explanations ( ll-in the blank self-explanations)" assessing their prior knowledge of the topics covered in the
[
        <xref ref-type="bibr" rid="ref15">15</xref>
        ] and "select a self-explanation/menu-based self-explanations" main task, a self-e cacy survey, the main task which
involved understanding 6 Java code examples and predicting
their output, a 1-minute break to allow students to recover
after the main task, a post-test assessing their knowledge
on the same topics, and post main task self-e cacy
survey. The programming concepts that we tried to cover
during our experiment are: operator precedence, nested if-else,
for loops,while loops,arrays,creating objects and using their
methods.
      </p>
      <p>In the main task, students were shown 6 Java code examples
and were asked to read in order to understand what they do
and then based on their understanding predict the output
of the code examples. When predicting the output, they
were also asked to indicate their con dence. The correct
output to each Java code example was shown immediately
after they entered their prediction. In the Self-Explanation
condition, they were asked to self-explain while reading the
code. The following self-explanation instructions were given:
in their own way what does that code block do to collect the
self-explanations from them.</p>
      <sec id="sec-3-1">
        <title>When you read a Java code example in order to</title>
        <p>comprehend it, like the JAVA code below, you
are supposed to read each line of the code
carefully and while doing so explain what the code
means to you. While self explaining, you may
want to think of:</p>
      </sec>
      <sec id="sec-3-2">
        <title>What new information does each line provide for</title>
        <p>you? How does it relate to what you've already
read? Does it give you a new insight into your
understanding of how the code works? or does it
raise a question in your mind?
Describe whatever is going through your mind
even if it seems unimportant. You may need to
go back and re-read parts of the code to really
understand the whole code. Some people nd it
helpful, when reading di cult material, to draw a
picture or take notes on a piece of paper. Please
feel free to do what is best for you. Once you
nished reading the whole code, please explain
brie y what the overall goal of the code is, e.g.,
generating a Bingo board, and predict its output.
Keep in mind that there are no "right" or "wrong"
self-explanations.</p>
        <p>We have been looking for self-explanation instructions in
the literature and with few exceptions they were not
mentioned. The instructions can have a signi cant impact on
the outcome of the experiment which is the reason we show
them here as seen by the participants. We believe any
future attempts to reproduce our results should use the above
instructions verbatim.</p>
        <p>Then, participants were shown 6 code examples and asked to
either self-explain what the code does (free Self-Explanation)
or just predict the output of the code examples (Prediction
Only). As noted before, all participants took a pretest
before being being assigned to an experimental condition and
posttest afterwards. The pre-/post-test scores were used to
calculate learning gains as a measure for the e ectiveness of
the interventions. We used a web-based software system to
run the experiment.</p>
        <p>We conducted a t-test to compare the mean learning gains of
the experimental groups. Furthermore, we categorized
participants into low and high-prior knowledge groups based on
their mean pretest score for both the free Self-Explanation
and the Socratic method groups separately. Then, we
conducted an independent sample t-test to compare learning
gains between the low and high prior knowledge groups.
More details about group design, participants, materials
used, experiment protocol and measures are given in the
following sections. It should be noted that all interactions
between each participant and the system were logged in an
anonymous manner and have been used to do the post
experiment analyses presented later.</p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>3.1 Group Design</title>
      <p>Participants were randomly assigned to two di erent groups
i.e. rst group were shown a model self-explanation of a
code example and then prompted to self-explain 6 Java code
examples and then predict the output of each of the code
examples while the second group had to predict the output
by only reading in order to understand each of the code
examples. Out of the 39 students involved, 20 participants
were assigned to the rst group and 19 participants in the
second group.</p>
    </sec>
    <sec id="sec-5">
      <title>3.2 Participants</title>
      <p>While our intention initially was to recruit participants from
the intro-to-programming classes (CS0, CS1, and CS2), due
to low recruitment rates from those courses we expanded
our pool of subjects to all undergraduates and graduate
students. The low recruitment rates from the CS0, CS1, and
CS2 courses was low due primarily to the timing of our
experiment which was at the end of the Spring semester, right
before the nal exams. Other factors contributed as well
such as the whole COVID-19 (corona virus) situation
because of which all experimental session were run fully online.
We ended up recruiting and fully running 39 participants
from two US universities of which 36 were undergraduate
students and 3 graduates students. The undergraduate
participants were attending the following courses: CS1 (4
students), CS2(21), Data Structures - also called CS3 by some
(8), and CS 3351???? (1). All participants were familiar
with the JAVA programming language.</p>
    </sec>
    <sec id="sec-6">
      <title>3.3 Materials</title>
      <p>Participants in each of the two experimental conditions were
shown same set of 6 source code examples, i.e., we controlled
for content but not for time which as we will see later in the
experimental results analysis had an impact in terms of
tiring e ects for the Self-Explanation group of participants.
We call the 6 code examples the main task. As mentioned
before, participants took a pre-test as well that consisted
of 6 code examples matching in terms of content, i.e.,
target concepts, the code examples in the main task.
Furthermore, participants took a post-test consisting of 6 code
examples matching in content that examples in the main
task and pre-test. For the pre-test and post-test, learners
were supposed to just provide the predicted output. As
already noted, the pre-test and post-test were not identical
but they were equivalent in term of concepts tested and
difculty level. The main programming concepts covered by
the experiment were: operator precedence, nested if else,
f or loops, while loops, arrays, creating objects and using
their methods. Each of these concepts were present in the
in the code examples used in the pre-test, post-test, and the
main task.</p>
    </sec>
    <sec id="sec-7">
      <title>4. RESULTS</title>
      <p>As noted earlier, the experimental system logged all student
responses to various system prompts including time stamps
associated with various student actions. The log les have
been the basis of the analyses presented in this section. The
analyses presented here are just a subset of the type of data
analyses or data mining that can be done on the logged
experimental data.</p>
      <p>
        As a reminder, the key research question or goal of the
experiment was to see if prompting for free self-explanation
helps source code comprehension. This can be measured
by the participant's performance on the main
comprehension tasks: the average score was 5.05 for Self-Explanation
group while the Prediction-only group had an average score
of 4.1 for correctly predicting the output of each of the 6
Java code examples they were supposed to read and
comprehend. The accuracy of the predicted output on the main
comprehension tasks is a direct re ection of the accuracy
of the mental models students constructed during the
reading of those code examples. The results in Table 1 shows
us that there is an statistical signi cant di erence between
Self-Explanation group ( M = 5.05, SD = 1.129) and
Prediction group (M =4.10 and SD = 1.410) in the main task.
The magnitude of the di erence in the means (mean di
erence = -0.953, 95% con dence interval: -1.784 to -0.121) is
large (Cohen's d = 0.199) as suggested by [
        <xref ref-type="bibr" rid="ref24">24</xref>
        ]. Based on
these results, we conclude that prompting for typed, free
self-explanations leads to better code comprehension.
As a next step and as a way to better understand the main
result of the experiment outlined above, we explored whether
prior knowledge, as measured by the pre-test, can be a
mediating factor and if it di ers among the experimental groups.
Overall, participants had an average pre-test score of 4.84
for the Self-Explanation group and 4.75 for the Prediction
group. A t-test, which met all the standard assumptions
(continuous scale for dependent variable, random sampling,
independence of observations, normal distribution and
homogeneity of variance), indicated that the two groups i.e.
Self-Explanation and Prediction, are equivalent in term of
prior knowledge. The result of the t-test can be seen in
Table 2.
      </p>
      <p>Once we showed the groups are equivalent, we performed
an independent t-test between the predictions score of
selfexplanation and prediction group to compare their scores.
We also performed analysis of covariance (ANCOVA) by
taking experimental condition as grouping factor and pre-test
score as covariate which also resulted in a signi cant
difference. The Self-Explanation group performed better than
the Prediction-only group (5.05 - 4.10)/6 * 100 = 15.83 %.
Given the positive impact of prompting for typed, free
selfexplanations, we wondered if prior knowledge is a mediating
factor for participants in the Self-Explanation group. That
is, we wondered if higher prior knowledge leads to better
self-explanations and better comprehension. To this end,
we divided the students in the Self-Explanation group in two
subgroups: high prior knowledge versus low prior knowledge.
We used the mean pre-test score of 4.84 as the splitting
point. We are aware that using the mean score to obtain
the two subgroups may lead to some students in the the two
subgroups having very similar scores, e.g., those participants
with scores close to the mean score. However, using a top
and bottom quartile split, which would eliminate this issue
of students in the di erent subgroups having similar scores,
would have led to small subgroups given that our overall
n = 39 participants.</p>
      <p>Based on the main comprehension task performance, there
was a signi cant di erence between the high prior
knowledge and low prior knowledge subgroups. Table 3 shows
us that there is an statistical signi cant di erence between
main tasks of self-explanation group with low prior
knowledge ( M = 6.00, SD = 0.00) and high prior knowledge (M
= 4.692 and SD = 1.182). The magnitude of the di erence
in the means (mean di erence = 1.307, 95% con dence
interval: 0.165 to 2.449) is large (Cohen's d = 0.498).</p>
    </sec>
    <sec id="sec-8">
      <title>5. CONCLUSIONS</title>
      <p>We presented in this paper the results of a series of analyses
of log data from a randomized controlled trial experiment
designed to test the hypothesis that an instructional
strategy that prompts for typed, free self-explanations can help
code comprehension. The experimental results obtained do
indeed support the hypothesis. Furthermore, we found out
that students with lower prior knowledge are much more
helped by prompting for typed, free self-explanations. That
is, this strategy seems to be particularly useful for low prior
knowledge students.</p>
      <p>We do plan to further analyze the results of the experiment
we conducted. For instance, we would like to analyze the
mental models students constructed by annotating the
selfexplanations along a number of 10 dimensions inspired by
theories of self-explanation and code comprehension as
proposed by Lasang and et al. (2021). Furthermore, we intend
to conduct more experiments to understand what other
factors mediate the quality of the mental models constructed
such as the readability of the code being red. In the current
experiment, the code examples followed professional code
writing style and therefore could be deemed as highly
readable. However, there were no comments in those code
examples which could further increase the readability of the
examples. However, the presence of comments may give
some students the illusion of understanding by
demotivating them to read carefully the code and be tempted to just
read the comments thus leading to less e ective
comprehension processes. There is much work to be done and we are
excited to further the very promising work presented here.</p>
    </sec>
    <sec id="sec-9">
      <title>Acknowledgements</title>
      <p>This work was supported by the National Science
Foundation under award 1822816. All ndings and opinions
expressed or implied are solely the authors'.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>V. A.</given-names>
            <surname>Aleven</surname>
          </string-name>
          and
          <string-name>
            <given-names>K. R.</given-names>
            <surname>Koedinger</surname>
          </string-name>
          .
          <article-title>An e ective metacognitive strategy: Learning by doing and explaining with a computer-based cognitive tutor</article-title>
          .
          <source>Cognitive science</source>
          ,
          <volume>26</volume>
          (
          <issue>2</issue>
          ):
          <volume>147</volume>
          {
          <fpage>179</fpage>
          ,
          <year>2002</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>T.</given-names>
            <surname>Beaubouef</surname>
          </string-name>
          and
          <string-name>
            <given-names>J.</given-names>
            <surname>Mason</surname>
          </string-name>
          .
          <article-title>Why the high attrition rate for computer science students: some thoughts and observations</article-title>
          .
          <source>ACM SIGCSE Bulletin</source>
          ,
          <volume>37</volume>
          (
          <issue>2</issue>
          ):
          <volume>103</volume>
          {
          <fpage>106</fpage>
          ,
          <year>2005</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>K.</given-names>
            <surname>Bielaczyc</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P. L.</given-names>
            <surname>Pirolli</surname>
          </string-name>
          ,
          <article-title>and</article-title>
          <string-name>
            <surname>A. L. Brown.</surname>
          </string-name>
          <article-title>Training in self-explanation and self-regulation strategies: Investigating the e ects of knowledge acquisition activities on problem solving</article-title>
          .
          <source>Cognition and instruction</source>
          ,
          <volume>13</volume>
          (
          <issue>2</issue>
          ):
          <volume>221</volume>
          {
          <fpage>252</fpage>
          ,
          <year>1995</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>M. T.</given-names>
            <surname>Chi</surname>
          </string-name>
          .
          <article-title>Self-explaining expository texts: The dual processes of generating inferences and repairing mental models</article-title>
          .
          <source>Advances in instructional psychology</source>
          ,
          <volume>5</volume>
          :
          <fpage>161</fpage>
          {
          <fpage>238</fpage>
          ,
          <year>2000</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>M. T.</given-names>
            <surname>Chi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Bassok</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M. W.</given-names>
            <surname>Lewis</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Reimann</surname>
          </string-name>
          , and
          <string-name>
            <given-names>R.</given-names>
            <surname>Glaser</surname>
          </string-name>
          .
          <article-title>Self-explanations: How students study and use examples in learning to solve problems</article-title>
          . Cognitive science,
          <volume>13</volume>
          (
          <issue>2</issue>
          ):
          <volume>145</volume>
          {
          <fpage>182</fpage>
          ,
          <year>1989</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>M. T.</given-names>
            <surname>Chi</surname>
          </string-name>
          , N. De Leeuw,
          <string-name>
            <surname>M.-H. Chiu</surname>
            , and
            <given-names>C.</given-names>
          </string-name>
          <string-name>
            <surname>LaVancher. Eliciting</surname>
          </string-name>
          self
          <article-title>-explanations improves understanding</article-title>
          .
          <source>Cognitive science</source>
          ,
          <volume>18</volume>
          (
          <issue>3</issue>
          ):
          <volume>439</volume>
          {
          <fpage>477</fpage>
          ,
          <year>1994</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>M. T.</given-names>
            <surname>Chi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P. J.</given-names>
            <surname>Feltovich</surname>
          </string-name>
          , and
          <string-name>
            <given-names>R.</given-names>
            <surname>Glaser</surname>
          </string-name>
          .
          <article-title>Categorization and representation of physics problems by experts and novices</article-title>
          .
          <source>Cognitive science</source>
          ,
          <volume>5</volume>
          (
          <issue>2</issue>
          ):
          <volume>121</volume>
          {
          <fpage>152</fpage>
          ,
          <year>1981</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>C.</given-names>
            <surname>Conati</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Larkin</surname>
          </string-name>
          , and
          <string-name>
            <given-names>K.</given-names>
            <surname>VanLehn</surname>
          </string-name>
          .
          <article-title>A computer framework to support self-explanation</article-title>
          .
          <source>In Proceedings of AI-ED 97 World Conference on Arti cial Intelligence in Education</source>
          , volume
          <volume>39</volume>
          , pages
          <fpage>279</fpage>
          {
          <fpage>276</fpage>
          .
          <string-name>
            <surname>Citeseer</surname>
          </string-name>
          ,
          <year>1997</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>C.</given-names>
            <surname>Conati</surname>
          </string-name>
          and
          <string-name>
            <given-names>K.</given-names>
            <surname>VanLehn.</surname>
          </string-name>
          <article-title>Further results from the evaluation of an intelligent computer tutor to coach self-explanation</article-title>
          .
          <source>In Int. Conference on Intelligent Tutoring Systems</source>
          , pages
          <fpage>304</fpage>
          {
          <fpage>313</fpage>
          . Springer,
          <year>2000</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10] T. de Jong and M. G.
          <string-name>
            <surname>Ferguson-Hessler</surname>
          </string-name>
          .
          <article-title>Knowledge of problem situations in physics: A comparison of good and poor novice problem solvers</article-title>
          .
          <source>Learning and Instruction</source>
          ,
          <volume>1</volume>
          (
          <issue>4</issue>
          ):
          <volume>289</volume>
          {
          <fpage>302</fpage>
          ,
          <year>1991</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>A. A.</given-names>
            <surname>DiSessa</surname>
          </string-name>
          .
          <source>Toward an epistemology of physics. Cognition and instruction</source>
          ,
          <volume>10</volume>
          (
          <issue>2-3</issue>
          ):
          <volume>105</volume>
          {
          <fpage>225</fpage>
          ,
          <year>1993</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>A. C.</given-names>
            <surname>Graesser</surname>
          </string-name>
          and
          <string-name>
            <given-names>D. S.</given-names>
            <surname>McNamara</surname>
          </string-name>
          .
          <article-title>Computational analyses of multilevel discourse comprehension</article-title>
          .
          <source>Topics in cognitive science</source>
          ,
          <volume>3</volume>
          (
          <issue>2</issue>
          ):
          <volume>371</volume>
          {
          <fpage>398</fpage>
          ,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <given-names>M.</given-names>
            <surname>Guzdial</surname>
          </string-name>
          and
          <string-name>
            <given-names>E.</given-names>
            <surname>Soloway</surname>
          </string-name>
          .
          <article-title>Teaching the nintendo generation to program</article-title>
          .
          <source>Communications of the ACM</source>
          ,
          <volume>45</volume>
          (
          <issue>4</issue>
          ):
          <volume>17</volume>
          {
          <fpage>21</fpage>
          ,
          <year>2002</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>W.</given-names>
            <surname>Kintsch</surname>
          </string-name>
          .
          <article-title>The role of knowledge in discourse comprehension: A construction-integration model</article-title>
          .
          <source>Psychological review</source>
          ,
          <volume>95</volume>
          (
          <issue>2</issue>
          ):
          <fpage>163</fpage>
          ,
          <year>1988</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <given-names>K.</given-names>
            <surname>Kwon</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C. D.</given-names>
            <surname>Kumalasari</surname>
          </string-name>
          , and
          <string-name>
            <given-names>J. L.</given-names>
            <surname>Howland</surname>
          </string-name>
          .
          <article-title>Self-explanation prompts on problem-solving performance in an interactive learning environment</article-title>
          .
          <source>Journal of Interactive Online Learning</source>
          ,
          <volume>10</volume>
          (
          <issue>2</issue>
          ),
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [16]
          <string-name>
            <given-names>L. E.</given-names>
            <surname>Margulieux</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Guzdial</surname>
          </string-name>
          , and
          <string-name>
            <given-names>R.</given-names>
            <surname>Catrambone</surname>
          </string-name>
          .
          <article-title>Subgoal-labeled instructional material improves performance and transfer in learning to develop mobile applications</article-title>
          .
          <source>In Proceedings of the ninth annual international conference on International computing education research</source>
          , pages
          <volume>71</volume>
          {
          <fpage>78</fpage>
          ,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          [17]
          <string-name>
            <given-names>D. S.</given-names>
            <surname>McNamara</surname>
          </string-name>
          and
          <string-name>
            <given-names>J. P.</given-names>
            <surname>Magliano</surname>
          </string-name>
          .
          <article-title>Self-explanation and metacognition: The dynamics of reading</article-title>
          . In Handbook of metacognition in education, pages
          <volume>72</volume>
          {
          <fpage>94</fpage>
          .
          <string-name>
            <surname>Routledge</surname>
          </string-name>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          [18]
          <string-name>
            <given-names>B.</given-names>
            <surname>Mun</surname>
          </string-name>
          ~oz,
          <string-name>
            <given-names>J. P.</given-names>
            <surname>Magliano</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Sheridan</surname>
          </string-name>
          , and
          <string-name>
            <given-names>D. S.</given-names>
            <surname>McNamara</surname>
          </string-name>
          .
          <article-title>Typing versus thinking aloud when reading: Implications for computer-based assessment and training tools</article-title>
          .
          <source>Behavior research methods</source>
          ,
          <volume>38</volume>
          (
          <issue>2</issue>
          ):
          <volume>211</volume>
          {
          <fpage>217</fpage>
          ,
          <year>2006</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          [19]
          <string-name>
            <surname>M. J. Nathan</surname>
            ,
            <given-names>W.</given-names>
          </string-name>
          <string-name>
            <surname>Kintsch</surname>
            , and
            <given-names>E.</given-names>
          </string-name>
          <string-name>
            <surname>Young</surname>
          </string-name>
          .
          <article-title>A theory of algebra-word-problem comprehension and its implications for the design of learning environments</article-title>
          .
          <source>Cognition and instruction</source>
          ,
          <volume>9</volume>
          (
          <issue>4</issue>
          ):
          <volume>329</volume>
          {
          <fpage>389</fpage>
          ,
          <year>1992</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          [20]
          <string-name>
            <surname>M. P. O'Brien</surname>
          </string-name>
          .
          <article-title>Inference-based comprehension and expectation based processing in program comprehension</article-title>
          .
          <source>In 9th International Workshop on Program Comprehension</source>
          , pages
          <volume>71</volume>
          {
          <fpage>78</fpage>
          ,
          <year>2001</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          [21]
          <string-name>
            <given-names>N.</given-names>
            <surname>Pennington</surname>
          </string-name>
          .
          <article-title>Comprehension strategies in programming</article-title>
          .
          <source>In Empirical Studies of Programmers: Second Workshop</source>
          ,
          <year>1987</year>
          , pages
          <fpage>100</fpage>
          {
          <fpage>113</fpage>
          ,
          <year>1987</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          [22]
          <string-name>
            <given-names>V.</given-names>
            <surname>Ramalingam</surname>
          </string-name>
          , D. LaBelle, and
          <string-name>
            <given-names>S.</given-names>
            <surname>Wiedenbeck</surname>
          </string-name>
          .
          <article-title>Self-e cacy and mental models in learning to program</article-title>
          .
          <source>In Proceedings of the 9th annual SIGCSE conference on Innovation and technology in computer science education</source>
          , pages
          <volume>171</volume>
          {
          <fpage>175</fpage>
          ,
          <year>2004</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          [23]
          <string-name>
            <given-names>M.</given-names>
            <surname>Roy</surname>
          </string-name>
          and
          <string-name>
            <given-names>M. T.</given-names>
            <surname>Chi</surname>
          </string-name>
          .
          <article-title>The self-explanation principle in multimedia learning</article-title>
          .
          <source>The Cambridge handbook of multimedia learning</source>
          , pages
          <volume>271</volume>
          {
          <fpage>286</fpage>
          ,
          <year>2005</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          [24]
          <string-name>
            <given-names>S. S.</given-names>
            <surname>Sawilowsky</surname>
          </string-name>
          .
          <article-title>New e ect size rules of thumb</article-title>
          .
          <source>Journal of Modern Applied Statistical Methods</source>
          ,
          <volume>8</volume>
          (
          <issue>2</issue>
          ):
          <fpage>26</fpage>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref25">
        <mixed-citation>
          [25]
          <string-name>
            <given-names>C.</given-names>
            <surname>Snow</surname>
          </string-name>
          .
          <article-title>Reading for understanding: Toward an R&amp;D program in reading comprehension</article-title>
          . Rand Corp.,
          <year>2002</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref26">
        <mixed-citation>
          [26]
          <string-name>
            <given-names>E.</given-names>
            <surname>Soloway</surname>
          </string-name>
          and
          <string-name>
            <given-names>K.</given-names>
            <surname>Ehrlich</surname>
          </string-name>
          .
          <article-title>Empirical studies of programming knowledge</article-title>
          .
          <source>IEEE Transactions on software engineering</source>
          , (
          <volume>5</volume>
          ):
          <volume>595</volume>
          {
          <fpage>609</fpage>
          ,
          <year>1984</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref27">
        <mixed-citation>
          [27]
          <string-name>
            <given-names>R. A.</given-names>
            <surname>Zwaan</surname>
          </string-name>
          and
          <string-name>
            <given-names>G. A.</given-names>
            <surname>Radvansky</surname>
          </string-name>
          .
          <article-title>Situation models in language comprehension and memory</article-title>
          .
          <source>Psychological bulletin</source>
          ,
          <volume>123</volume>
          (
          <issue>2</issue>
          ):
          <fpage>162</fpage>
          ,
          <year>1998</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>