You are on page 1of 21

6

Teaching Programming by Emphasizing Self-Direction: How Did
Students React to the Active Role Required of Them?
VILLE ISOM
¨
OTT
¨
ONEN and VILLE TIRRONEN, University of Jyv¨ askyl ¨ a
Lecturing is known to be a controversial form of teaching. With massed classrooms, in particular, it tends to
constrain the active participation of students. One of the remedies applied to programming education is to
use technology that can vitalize interaction in the classroom, while another is to base teaching increasingly
on programming activities. In this article, we present the first results of an exploratory study, in which we
teach programming without lectures, exams, or grades, by heavily emphasizing programming activity, and,
in a pedagogical sense, student self-direction. This article investigates how students reacted to the active
role required of them and what issues emerged in this setting where self-direction was required. The results
indicate three issues that should be taken into account when designing a student-driven course: the challenge
of supporting students’ theoretical synthesis of the topics to be learned, the individual’s opportunities for
self-direction in a group work setting, and mismatch between individual learning processes and academic
course scheduling.
Categories and Subject Descriptors: K.3.2 [Computers and Education]: Computers and Information
Science Education—Computer Science Education
General Terms: Human Factors, Theory
Additional Key Words and Phrases: Self-direction, programming education
ACM Reference Format:
Isom¨ ott¨ onen, V. and Tirronen, V. 2013. Teaching programming by emphasizing self-direction: How did
students react to the active role required of them? ACM Trans. Comput. Educ. 13, 2, Article 6 (June 2013),
21 pages.
DOI: http://dx.doi.org/10.1145/2483710.2483711
1. INTRODUCTION
Many studies on programming education have concentrated on paradigm, language,
and tools. Recently, course content, for example, the use of games, has also gained
attention. One key question for researchers has been how to facilitate the learning of
programming without introducing a gap between the educational and industrial realms
[Kelleher and Pausch 2005]. Research focusing on content (e.g., games) has sought to
increase students’ engagement in programming and thereby to improve their learning
(see, e.g., Leutenegger and Edgington [2007]).
Holistic pedagogic studies are less frequent, although the need for such studies
has been clearly articulated [Berglund and Lister 2010]. A recent trend of this kind
is the attempt to place students in an active instead of the more traditional, pas-
sive information-absorbing role (see, e.g., Vihavainen et al. [2011]). One example of
such emerging teaching models is “the inverted classroom” or “the flipped classroom,”
where the contact teaching traditionally devoted to lecturing is expended on supporting
Authors’ address: V. Isom¨ ott¨ onen and V. Tirronen, Department of Mathematical Information Technology,
P.O. Box (35), FI-40014 University of Jyv¨ askyl ¨ a, Finland.
Permission to make digital or hard copies of part or all of this work for personal or classroom use is granted
without fee provided that copies are not made or distributed for profit or commercial advantage and that
copies showthis notice on the first page or initial screen of a display along with the full citation. Copyrights for
components of this work owned by others than ACM must be honored. Abstracting with credit is permitted.
To copy otherwise, to republish, to post on servers, to redistribute to lists, or to use any component of this
work in other works requires prior specific permission and/or a fee. Permissions may be requested from
Publications Dept., ACM, Inc., 2 Penn Plaza, Suite 701, New York, NY 10121-0701 USA, fax +1 (212)
869-0481, or permissions@acm.org.
c 2013 ACM 1946-6226/2013/06-ART6 $15.00
DOI: http://dx.doi.org/10.1145/2483710.2483711
ACM Transactions on Computing Education, Vol. 13, No. 2, Article 6, Publication date: June 2013.
6:2 V. Isom¨ ott ¨ onen and V. Tirronen
students’ in-class activities. The students acquire the necessary information on the
course topics in the form of self-study outside class hours.
Overall, the present-day movements that emphasize self-direction, such as the Khan
academy
1
and its postulate “learn what you want, when you want, and at your own
pace,” challenge formal educational institutions to providing flexible ways of studying
that match the current social environment. We find that this change in educational
thinking encourages action research of which the present study is an example.
Our approach resembles the inverted classroom, but rather than inverting learning
activities, our thinking has been informed by the notion of self-directed learning. We
would prefer students to drive their own learning and to prompt learning that is ori-
ented toward course topics as opposed to preset course standards [Klug 1976]. With
this agenda in mind, we designed a course with no lectures, exams, or grades—instead,
the course consists of programming and program reviews. We are interested in the stu-
dents’ acceptance of these course arrangements and, in particular, what kinds of issues
emerged during a course requiring self-direction. This article presents the results of
our first action research cycle.
2. SELF-DIRECTED LEARNING
The idea of self-directed learning has its roots in many different phenomena, including
reactions to behaviorism, an interest in minority rights, technology development, inter-
nationalism, and the increasing size of the school and university population [Gremmo
and Riley 1995]. Drawing on Candy [1991], self-direction refers to the learner’s ability
to evaluate and make decisions within a particular domain of knowledge. This implies
learner autonomy, meaning that the control of the learning process is transferred from
the instructor to the learners. Self-directed learning is often closely associated with
informal learning and life-long learning.
Encouraging self-directed learning is a challenge. Merely taking an active role may
mean a great change in the learner’s study habits and cause anxiety [Akerlind and
Trevitt 1999]. Successful self-directed learning may require a proper orientation phase
[Taylor and Burgess 1995] and still take time to mature [van den Hurk et al. 1999].
Furthermore, self-direction has been argued to be a situational matter. A student can
be highly self-directed in one subject of study but much more dependent on expert
direction in another [Grow 1991].
Grow [1991] emphasizes that when a teaching style does not match the learner’s
degree of self-direction, problems are likely to arise. He gives anexample of a highly self-
directed learner encountering a highly directive teacher, which can cause the learner
to rebel and become bored and the teacher to judge the learner as uncooperative. On
the other hand, self-direction should not be imposed on those who prefer to depend on
the instructor. As Rogers [1983, p. 154] puts it, there should be provision for those who
do not want freedomand prefer to be instructed. To overcome these kinds of challenges,
a responsive teacher role is obviously required.
The ability to be self-directed is affected by many factors. Kim and Park [2011] stud-
ied advanced nursing practices and found self-esteem and belongingness to contribute
to self-direction. The study by Fry [1972] on first-year psychology students focused
on the effects of different learning styles and found that high-ability students with
high inquisitiveness perform well in a setting requiring self-direction. Yet another
challenging variable is group work. On the one hand, it can constrain individuals’
freedom, as mentioned by Faltin et al. [2002], while on the other hand, it can pro-
vide both a safe peer learning context [Gibbs 1981] and a source of information for
informal learning [McCartney et al. 2010]. All in all, there is no universal formula
1
http://www.khanacademy.org/.
ACM Transactions on Computing Education, Vol. 13, No. 2, Article 6, Publication date: June 2013.
Teaching Programming by Emphasizing Self-Direction 6:3
for supporting self-directed learning, as there are always many variables in action
[Gremmo and Riley 1995].
2.1. Teaching Approaches Emphasizing Self-Direction
Within programming education, studies can be found that emphasize active learning
with the characteristics of self-direction. One way to activate students has been through
the introduction of technology into classrooms. For example, Pears and Rogalli [2011]
engage students in collaborative code development workshops and test the students’
knowledge throughout the classes. This is done using a smartphone interface, which
allows for individualized feedback. The authors refer to this means of instruction by
the term active pedagogy.
Vihavainen et al. [2011] emphasize a type of active learning in which most of the
students’ time is expended on exercises. Another constructivist idea they adopt is the
cognitive apprenticeship. In practice, this means that worked examples are preferred
over showing completed example code and that guidance is always available during
the exercise sessions. In this way, viable problem-solving strategies are demonstrated
to students and student problem solving is directed toward such strategies. In the
exercise sessions, students mark completed exercises on checklists; this allows them
to monitor their own learning processes. Checklists are available on the Web allowing
the students to compare with each other. Three small bi-weekly exams also enable the
students to monitor their own learning.
The study by Boyer et al. [2008] focused on investigating self-direction in program-
ming education. Teaching is based on students’ questions, which allows the teacher to
cover topics that are relevant for the current course population. Peer learning is central
in this Web-based course, which is implemented using a shared learning platform. A
student who is picked to solve a programming assignment takes a keyboard and pro-
grams the assignment in the presence of others, and so demonstrates problem-solving
strategies at a peer level. Thus, the study provides an example of how peer learning
takes a central role in a context that is less formal than the traditional classroom
setting.
The closest approximations to our course model are probably “the inverted classroom”
or “the flipped classroom.” These terms refer to settings where students acquire the
information they need outside class hours (e.g., from podcast lectures), while the class
hours are devoted to activities that have traditionally taken place outside the class
[Gannod et al. 2008]. The experiences reported by Gannod et al. are positive, although,
as suggested by the authors, managerial issues, such as the time needed for preparing
the learning activities, may arise. Their students responded positively to the several
questions that validate the course model, while there are indications of challenges that
need to be addressed. For example, Gannod et al. [2008] write the following.
From the standpoint of student perceptions, the inverted classroom appears
to be well-received, although the suggestions indicate that the acceptance
level is not unanimous. The suggestions also point to the recognized need
that the viewing of lectures must be incentivized in order to provide motiva-
tion for students to prepare for in-class exercises.
The other interesting details in the study are that over a half of the 22 respondents
agreed on the suggestion to use podcasts to supplement class lectures instead of replac-
ing them, and that 92% of the 16 respondents agreed that the class should not rely so
heavily on podcasts. Such observations motivate the rather critical lens through which
we review our exercise-driven course with its emphasis on self-study based on a wide
range of materials. Our aim is to identify the key research questions that will inform
our subsequent action research cycles.
ACM Transactions on Computing Education, Vol. 13, No. 2, Article 6, Publication date: June 2013.
6:4 V. Isom¨ ott ¨ onen and V. Tirronen
2.2. Criticism of and Our Emphasis on Self-Direction
Self-directed learning is occasionally associated with unguided discovery learning,
which has consistently produced strong objections. For example, Kirschner, Sweller,
and Clark [2006] warn that minimally guided approaches can cause cognitive load
that hinders learning, and support this claim by referring to an extensive body of em-
pirical evidence. Sweller et al. [2007] insist that it is always more efficient to provide
learners with information and solutions directly than through any degree of discovery
learning, the latter of which is prone to be associated with the constructivist teach-
ing approaches such as problem-based learning (PBL). Furthermore, they state that
the topics such as group work should be directly taught as opposed to teaching them
embedded in real-world problem-solving tasks.
The criticismleveled at minimally guided approaches by Kirshner, Sweller, and Clark
has prompted several responses from authors advocating PBL. For example, Smith
et al. [2007] and Hmelo-Silver et al. [2007] emphasize that constructivist teaching
approaches (e.g., PBL) do not imply unguided instruction or conflict with the human
cognitive architecture, as claimed by Kirschner et al. [2006]. Rather, student learning
processes are monitored and an appropriate degree of instruction (scaffolding) can be
provided. Smith et al. argue that PBL does not only emphasize the acquisition of direct
knowledge but also the development of the ability to prepare for future learning.
We would stress that our reliance on self-directed learning should not be misinter-
preted to mean that our aimis pure discovery learning or minimally guided instruction.
We are willing to provide proper support for self-directed learning and to investigate
student views of our course in the context of the debate on guided versus unguided
learning.
Our emphasis on self-direction relates to the self-determination theory (SDT) [Ryan
and Deci 2000]. This theory considers human motivation and personality by under-
lining the human need for competence, relatedness, and autonomy. According to SDT,
these three factors enhance constructive social development and personal well-being
and can be emphasized by avoiding such conditions that undermine intrinsic motiva-
tion: tangible rewards, deadlines, directives, pressured evaluations, and imposed goals
[Deci et al. 1999].
Furthermore, we find the discussion by Klug [1976] relevant to SDT. Klug questions
grading and the degree system by pondering how learners’ study processes are prone
to be directed by the external expectations set by academic standards. In other words,
in their studies, learners are easily directed to focus on aspects which will (directly)
assist them to fulfill externally given expectations (e.g. pass an exam), a practice which
may be in conflict with the learner’s personal intellectual development.
SDT and the work of Klug have informed and motivated our course design with
respect to our aim to promote student-drivenness, and emphasize the philosophical
position on teaching adopted in our study, that is, enabling over assessing. Overall,
these references motivate educational research on the social conditions that foster
versus undermine development, performance, and well-being.
3. PROGRAMMING COURSE EMPHASIZING SELF-DIRECTION
3.1. Background and Motivation
At our department, students in all the study lines (educational technology, software
and telecommunication technology, and computational science) usually take two ba-
sic programming courses (CS1 and CS2). These can be complemented with several
bachelor’s- and master’s-level elective programming courses that include Web pro-
gramming, programming for graphical user interfaces, programming for mobile ter-
minals, an advanced course on object-oriented programming, a theoretical course on
ACM Transactions on Computing Education, Vol. 13, No. 2, Article 6, Publication date: June 2013.
Teaching Programming by Emphasizing Self-Direction 6:5
Table I. The Course Learning Topics
Topic
Language constructs
Induction & Recursion
Lazy evaluation
First order functions
Use of advanced type systems
Basic persistent data structures
Type classes
Functors & Applicative functors Monads
Parallel computation
Problem solving in FP
programming languages, and a master’s-level course on functional programming (FP),
which is the course studied in this article. This course is worth 6 credits and spans 12
weeks, during which the learning topics in Table I are studied. The exercises on these
topics range from simple recursive tasks such as writing the merge sort algorithm
to challenging projects like applying monadic structure for writing modular recursive
descent parsers. After the course, we expect students to be able to complete such tasks
and to continue to study FP topics independently. Most of the students who took the
course during our research period had taken both CS1 and CS2, although there were
a few (13%) who had taken only CS1. The student course feedback indicates that they
took this course to further broaden their view on programming.
Our motivation for formulating a new teaching model for the FP course was based on
observations from previous lecture-based course instances. First, teaching resources
were expended on issues that students could have easily studied by themselves (e.g.,
syntax and basic structures with the FP language Haskell). Second, it was observed
that students had difficulties in following the more complicated structures during the
lectures, as they had not yet realized the need for these structures through program-
ming work. We thus observed “waste,” that is, resources were not efficiently utilized to
satisfy students’ needs. Such observations gave rise to the action research reported in
this article.
3.2. The Course Model
The course model that we used to emphasize student self-direction is depicted in
Figure 1. The course is divided into weekly cycles of independent study interleaved with
two contact sessions and is driven by exercises. At the end of each week, the teacher
announces a new set of exercises for the forthcoming week. The first contact session
(Practice Session) is intended to help with the difficulties students have encountered,
and the second contact session (Review Session) is intended to provide feedback on
the student solutions, after which the cycle begins again with a new set of exercises.
We thus emphasize a challenge-first mindset, where the student is given the exercises
first and then directed to work on solving them. This can be compared with the inverted
classroom by Gannod et al. [2008], who found that students should have been incen-
tivized to watch podcasts (thus to learn frommaterials) on their own when preparing for
in-class activities. In our exercise-driven course, all of the self-study should be immedi-
ately motivated, as the exercises that require learning from materials are given first.
To put the emphasis on student-drivenness, we formalized a “question-making
protocol,” which the students should use to direct the course by asking questions at a
certain time during the week. The protocol begins after the teacher has announced a
new set of exercises for the forthcoming week. After the students have independently
studied the exercises and identified difficult and interesting topics, they can request (by
ACM Transactions on Computing Education, Vol. 13, No. 2, Article 6, Publication date: June 2013.
6:6 V. Isom¨ ott ¨ onen and V. Tirronen
Fig. 1. The course design.
e-mail) these topics to be elaborated during the first contact session of the forthcoming
week.
Students continue to work on the exercises in the formof independent study between
the two contact sessions. The student solutions are delivered to the teacher before the
review session, which enables the teacher to give proper feedback and examine in-
teresting student solutions in comparison to example solutions during the reflective
review session. The two contact sessions are intended to give structure to the course
such that both the teacher and the students have the time needed to fulfill their roles
in preparing or answering questions.
With our challenging topic of functional programming, we decided to rely on group
work (peer learning) as an additional source of learning. In an attempt to create bal-
anced and functional groups, we preferred to form groups in which the students both
had a similar skill level and did not know each other before the class. We devised a
strategy where students are singled out randomly to explain the work of their group in
the review session, which we hoped would drive the sharing of solutions (peer learning)
within the groups before the session. Additionally, we tried to stimulate self-direction
by including reflective questions in the weekly exercises.
With this course model, we decided to focus all our effort on the programming tasks
and program review and do away with everything else. We used no exams or grades,
and we started the research exploratively with the initial requirement that the student
groups must complete all the given exercises to pass the course.
The course design decisions were informed by the literature. SDT and Klug encour-
age implementing a course without imposed goals (e.g., numeric grades). Likewise,
we considered that group work might contribute to relatedness, support, and peer
learning among the students, and that focusing teaching according to the students’
questions might be a workable approach (see Section 2). The course design is discussed
in Tirronen and Isom¨ ott¨ onen [2011].
4. METHOD
The method of our study is action research [Lewin 1946], which is a wide research
arena encompassing a variety of foundations and intentions [Herr and Anderson 2005].
Action research focuses on the improvement of social practices and situations, where
the transformation of social reality is induced by action taking [Carr and Kemmis 1986;
Clear 2004]. While action researchers emphasize social change as a study outcome, they
also accept that transformation of social reality cannot be achieved without focusing
ACM Transactions on Computing Education, Vol. 13, No. 2, Article 6, Publication date: June 2013.
Teaching Programming by Emphasizing Self-Direction 6:7
on the understandings of the people involved [Carr and Kemmis 1986, p. 181]. In the
educational context, action researchers are often teacher-as-researchers who aim to
improve and understand their educational practices, and improve the situations where
these practices take place [Carr and Kemmis 1986, pp. 167, 180].
Action research is often divided into three categories: technical, practical, and eman-
cipatory (critical) (see, e.g., Carr and Kemmis [1986], Grundy [1990], McCutcheon and
Jung [1990]). This categorization is associated with the concept of cognitive interests
in the critical social theory of Habermas, while a similar categorization is present in
several more general taxonomies on research paradigms [Clear 2004]. Technical per-
spective points to the solving of predefined problems with scientific procedures. Prac-
tical perspective tackles problems that arise in the study context and aims to develop
understanding of the practices that can solve such problems. Emancipatory perspec-
tive refers to the aim of emancipating participants in the action from the dictates of
compulsions of tradition.
We aim to develop a course model and an understanding of the model in which
the emphasis is on self-direction on the part of students. At the present stage of our
action research, we identify with the practical action research perspective where we
investigate the course by interpreting student responses in relation to our own subjec-
tive experiences. Considered from an organizational-historical perspective, we identify
in our aims a transformation in which certain traditional teaching conventions are
dropped (lectures, exams), starting from local motivations (see Section 3.1), and where
an understanding of a new setting evolves—this is in line with the emphasis of action
research on the historical process of transforming practices and understanding of them
[Carr and Kemmis 1986, p. 182].
The emancipatory perspective will receive attention in our future work: At present,
we can potentially induce enthusiasm for self-directed (informal) learning in a formal
academic context, which in turn necessitates discussion in our local setting with
regard to the implications of our experiences for prevailing organizational-educational
structures [Robinson 1994]. We would also point out that the results of the present
research are able to raise focused questions, which can then be studied in a controlled
way (thereby including the technical perspective) during the succeeding action
research cycles.
The research goal of the present study is to investigate student engagement in learn-
ing programming with reference to our course model. In particular, we are interested
in issues that inhibit students’ learning processes in a setting requiring self-direction.
We do not directly measure learning with objective measures [Lister 2001], which we
find to be reasonable only after the key issues have been identified (i.e., during the
future iterations of this research). Consequently, attributes such as the pass rate and
student preferences regarding the course arrangements give us information about en-
gagement, and thus our references to these attributes should not be taken as implying
an attempt to evaluate learning.
Lewin’s [1946] original paper on action research described the cyclic nature of a
social inquiry that aims to improve practice, with each cycle consisting of a planning,
action taking, and reflective phase. In this article, we report the results of our first
action research cycle, where we adopted a highly exploratory approach to be able to
learn what challenges emerge with the course arrangements we chose to use.
We surveyed the students’ views on the course arrangements three times. These
surveys will be referred to as Survey 1, Survey 2, and Survey 3. For the exploratory
research approach, and the vagueness of the notion of self-direction (see Section 2), we
did not develop a strict conceptual framework fromwhich to derive the survey questions
[Miles and Huberman 1984]. Rather, the selection of our course arrangements was
influenced by educational theory and discourse, and, consequently, the survey questions
ACM Transactions on Computing Education, Vol. 13, No. 2, Article 6, Publication date: June 2013.
6:8 V. Isom¨ ott ¨ onen and V. Tirronen
mostly investigate student opinion about these arrangements. For example, we found
that group work could be a helpful source of student-driven learning (see Section 2),
decided to base the course on group work, and then included survey questions on
group work. Teacher observations made during the course were allowed to affect the
final selection and form of the survey questions, as we did not want a predefined
research instrumentation to blind us to issues emerging at the research site [Miles and
Huberman 1984, p. 42].
With Survey 1, we studied how groups had functioned and how students saw their
role as a learner. The survey was conducted on the third week and contained the
following questions.
—How would you describe your role in the group?
—Does this role challenge you as a learner?
—Would you change your role?
Survey 2, conducted a little after the first half of the course, was based on our
observation that students failed to pose focused questions by which they could have
directed the course and meet their specific needs. We studied why this was the case
and what features of the course the students had found instead to be of greatest help.
The following questions were included.
—Is there enough learning material/information available to support your learning?
—If not, how would you change the course in this respect?
—What has been the biggest help during the course?
—Which of the exercises have been most useful . . . least useful?
—We have received very few questions. What might be the reason for this (tips: “I
don’t dare,” “questions are difficult to formulate,” “there is no time to,” “everything
is clear”)?
With Survey 3, conducted at the end of the course, we wanted students to summarize
their experience. We contrasted our course arrangements with the more traditional
ones and included general questions which were intended to reveal the uppermost
issues concerning the students’ learning processes.
—How did you like FP (as a topic, not as a course)? (The analysis of this question is
omitted in this article, as it relates more to our interest in teaching certain aspects
of functional programming.)
—What changes would you suggest for the course to better support your learning?
—I would take the course (select boxes with comment fields):
—alone . . . in a group
—lectured. . . by programming the exercises
—with grades . . . with no grades (pass or fail)
—Describe your motivation during the course.
The analysis of the open-ended answers followed the pattern coding process in the
qualitative data analysis (see Miles and Huberman [1984, pp. 67–69]). Pattern coding
(thematization) means identification of explanatory reoccurring regularities (themes)
that the research site suggests to the analyst. This reduces data into a smaller number
of analytic units. Accordingly, we go through the survey answers by raising several
aspects (lower level themes) that we could identify in the data, and then conclude the
analysis of each survey by discussing what we interpreted to be the most informa-
tive theme(s). Further, toward the end of our analysis, we highlight particular (three)
themes that we interpreted as reoccurring across the three surveys and considered
beneficial for our subsequent action taking. While we previously noted that some of
the survey questions were informed by the literature, the data analysis itself was thus
ACM Transactions on Computing Education, Vol. 13, No. 2, Article 6, Publication date: June 2013.
Teaching Programming by Emphasizing Self-Direction 6:9
data-driven. All the data were tabulated and the themes that emerged were extracted
on the basis of similarities and differences in the data through multiple iterations: The
analyst extracted the themes in the data and also compared new data extracts with the
themes extracted so far. The new data segments informed the previously found themes
and the analysis process became an iterative one. While the present study is definitely
not a grounded theory study, the analytical process with its focus on emergent issues
resembles grounded theory data analysis, in particular the open coding of the data,
where categories are developed by comparison [Glaser 1978].
As well as analyzing these survey data, we summarize the observations and conclu-
sions made by the primary teacher of the course (the second author). This will clarify
how well we were able to adhere to our initial plan, why some adjustments occurred,
and what the biggest challenges experienced by the teacher were. We divided the work
so that the first author analyzed the student data, the results of which were then dis-
cussed in the light of the experiences of the primary teacher. Discussion on the results
of the analysis of the student data took place after the teacher’s view had been authen-
tically documented. Our objective in doing this was to first give genuine attention both
to the teacher’s view and to the views of the students. The action research community
acknowledges the reflection of teachers as an important tool in educational improve-
ment [Klafki 1988, pp. 236, 243]. The results section starts with the teacher’s view to
further set the context in which the students were surveyed.
We should also make it clear that inthe current state of our actionresearch, where the
research approach is exploratory and interpretivist, we are not principally concerned
with quantification and statistics. Frequencies are provided as additional references,
while the principal interest is in qualitative aspects that can inform our subsequent
action taking. In our view, we must be self-conscious about when to work with fre-
quencies [Miles and Huberman 1984, p. 215]. We can emphasize content analysis with
the help of statistics in future stages of the research, after we have been informed by
the focused research questions raised by the present study and have observed more
iterations of the course. Altogether, relative thinking is present in our analysis in that
certain higher level aspects emerged repeatedly in the survey data and as such they
were considered to be very “capturing” and explanatory themes.
With regard to the generalizability of the results, we acknowledge the local nature of
action research, meaning that variation in the social–cultural conditions can give rise to
issues other than those reported in this article. Thus, it is not assumed that the research
result is context-free, that is, generalizable in the classic sense of the word [Lincoln and
Guba 1985, pp. 110–128], but can principally benefit those attempting to implement
similar course models. We would rather employ the naturalistic generalization, which
is intuitive, empirical, and based on personal direct and vicarious experience (see the
discussion in Lincoln and Guba [1985, pp. 110–128]).
5. RESULTS
5.1. The Teacher’s View
This section summarizes the course through the voice of the primary teacher of the
course.
5.1.1. Completion of the Course. In previous instances of the course, passing the course
was based on an exam. With our new model, the course began on the assumption that
to pass the course, students should do all the exercises given them. However, because I
was running the course for the first time, I had to learn what number of assignments it
was reasonable to require of the students during the course. I finally relaxed the initial
“do all” requirement and passed all the groups who had completed, on average, at least
80% of the weekly exercises.
ACM Transactions on Computing Education, Vol. 13, No. 2, Article 6, Publication date: June 2013.
6:10 V. Isom¨ ott ¨ onen and V. Tirronen
Although I found no clear way to compare between the two rather different course
instances, the new teaching model appeared to engage students better. In the previous
instances, the pass rates were 61%(2008) and 43%(2009). For our redesigned course, 48
students registered and 41 attended a starting lecture where the course was introduced
to students. We lost a few students after the starting lecture but gained some new ones
after the first practice session. Altogether, 35 students passed the course, increasing
the pass rate to 85%. During the first third of the course, the groups completed nearly
all the exercises given, and later, even with the most difficult topics, the completion rate
was well over 50%. During the last weeks, the students performed at a slightly lower
level compared with the early stage of the course, probably owing to fatigue. For one
group with three students, I had to give extra exercises at the end of the academic period
to be able to accept their performance as “pass.” The rest of the student cohort passed
the course, in my subjective view, with skills ranging from acceptable to extraordinary.
All of those who failed had dropped out during the course.
5.1.2. Deviations from the Course Plan. Relatively few changes were made to the course
plan, apart from two bigger issues.
We planned to realize student drivenness by responding to the questions received
through the question-making protocol described in Section 3.2. Although the students
had difficulties with the exercises, I soon noticed that they were unable or unwilling to
pose questions. In this instance of the course, I received less than 10 questions (in total)
in conformity with the protocol. Because there were so few questions, I was unable to
prepare a summary of the topics causing difficulties for the first contact session each
week, as originally planned. I compensated for this by preparing short topic videos on
the basis of what I observed during the contact sessions, which was possible since the
students did raise informal questions during both weekly contact sessions.
The second major deviation fromour plan was the reviewsession, where I felt obliged
to adopt a more relaxed atmosphere. I did not assign exercises to students at random
during the session, which was our initial plan. Similarly, I did not monitor whether the
students shared their understanding of the exercises within their groups before the
session. This change was made due to my strong feeling that making people explain
arbitrary questions at random would not harmonize with the mood of the current
student cohort. Instead, it emerged that groups as opposed to individuals presented
solutions to the exercises during the review session.
5.1.3. Providing Feedback. As we had no lectures and our question-making protocol
failed, I felt there was no opportunity for giving the kind of feedback that would
properly support the students’ learning. For example, while the students were able
to complete most of the exercises, there was too little dialogue going on to enable
reflection on the quality of the results. Hearing the solutions of other groups during
the review sessions was not a sufficient remedy, as this kind of information tended
to be inaccurate—often the students’ solution to a given exercise was functional, but
neither elegant nor efficient. My hypothesis is that this, in part, explains the students’
wishes to receive more example material. These observations led us, as researchers, to
conclude that we had introduced some discovery learning, although this was not our
goal.
Furthermore, I found that the busy weekly cycles (Figure 1) stood in the way of
quality feedback. As the more formal comments on the students’ work were given at
the end of the weekly cycle, during the review session, the students had hardly any
opportunities to apply this new information to the exercises they had already done.
5.1.4. Effect on Workload. This course instance had 10 student groups and some 6 to 15
exercises were given per week. This resulted in up to a hundred or so lengthy answers
ACM Transactions on Computing Education, Vol. 13, No. 2, Article 6, Publication date: June 2013.
Teaching Programming by Emphasizing Self-Direction 6:11
each week. Going through this pile of material on a weekly basis in order to create
feedback that would be relevant for the entire class was arduous. Even seemingly
minor details such as badly named directories in the returned exercises accumulated
into large boilerplate tasks, diverting precious hours away from the actual subject
matter. During the course, I read around 10,000 lines of code. It now appears to us
that giving feedback in the form of summaries for the entire class was a nonscalable
solution.
Rather than making sense of what the whole of the current student cohort needs, I
should have focused on individualized (and group-specific) feedback. This would most
likely be easier, since the task of summarizing can be dropped and the exercise review
could be, in part, automated by means of technology (see, e.g., Auvinen et al. [2009]).
This would also allow dropping the review session in favor of a more efficient training
session, since personal feedback can be delivered through other channels. In any event,
I need to reconsider the form of feedback in relation to the teacher’s workload.
5.1.5. Course Materials. In this course instance, we had two electronic books, a size-
able set of exercises, and a large body of unordered material, such as additional book
chapters and Web-based texts, such as blogs that the students could study of their own
accord. Based on the student feedback I received, it seems that two elements are more
critical than others: exercises and examples.
In a course model of this kind, which was driven, if not by the students, then by
the exercise sets, it is very important to get the exercises correct. Badly formulated
exercises were observed to cause anxiety, as the students were fooled into thinking
they are spending time on superfluous details instead of a core course topic. I also feel
that the usual challenges in exercise design were present, for example, how to make
the exercises interesting and suitably challenging (scaffolding).
Although there are enormous amounts of example code easily available on the Inter-
net and in the course books, a restricted set of examples that has the teacher’s blessing
to help the students not to drown in the material should be available. The tight course
timetable simply does not allow the students to evaluate what part of the unordered
collection of available material is currently relevant to them.
Finally, one minor change that ended up having a large beneficial effect on the course
was the introduction of an IRC channel. The channel provided instant messaging
between the students and the teaching staff during off-course hours. This channel
ended up functioning practically every hour of the week, with some students from
previous course instances participating on a regular basis. This provided students
with support with the course topics and technical problems at home.
5.2. Survey 1
This section summarizes our analysis of the students’ answers to Survey 1. Of the 25
respondents, 21 allowed their answers to be used in the research.
5.2.1. How Would You Describe Your Role as a Learner? We identified the following group
work patterns from the viewpoint of an individual learner.
(1) Astudent works independently and the group provides a safety net when difficulties
emerge (14%)
(2) A student takes care of their own learning in a satisfyingly functioning group; a
student both teaches and learns from others (33%)
(3) On top of taking programming tasks, a student is in a team leader role monitoring
the practical aspects of group work (19%)
(4) A student does random things without taking responsibility for group work and, if
need be, simply copies solutions from others (10%)
ACM Transactions on Computing Education, Vol. 13, No. 2, Article 6, Publication date: June 2013.
6:12 V. Isom¨ ott ¨ onen and V. Tirronen
(5) A student tries but is challenged all the time, desperately hanging on to a lifebelt
(14%)
(6) A student rushes to complete the exercises in order to get a chance to work as he
or she feels appropriate (5%)
(7) Previous experience gives a student a dominant role (5%)
We interpret items 1–3 (66%) as indicating healthy group work where learners can
take control of their own learning. Items 4 and 5 are clearly problematic with regard
to the individual’s learning, and do not demonstrate or enable self-direction. Item
6 indicates that a student takes an active role but is constraining the work of the
other group members. Item 7 indicates that variation in initial skill levels dictates
the group dynamics, inevitably giving experienced students more responsibility. This
can overload experienced students and constrain the learning of other group members.
Those representing items 4 and 5 are often satisfied enough with their role, as it fits
their current life situation, giving them a chance to attend to some degree and learn
something.
Student: This role matches my current life situation well. It is an enormous
relief to me that I do not need to program all the tasks by myself.
5.2.2. Does this Role Challenge You as a Learner? The students’ answers indicate the
groups had already self-organized. Of the 21 students, 16 said they had been challenged
as a learner in their group, one could not tell, and the remaining four said they had not
been challenged. The students in this last category had previous experience of FP, and
for this reason, the first topics of the course, focusing on syntax and basic conventions
with Haskell, were probably easy for them. As indicated by the group work patterns in
the previous section, a few students were already in trouble with the level of challenge.
It appears that to better support individual learning processes, we should allowa faster
walk-through of the topics (weekly cycles) for experienced students and rethink how to
allow for more practice time for slower ones.
5.2.3. Would You Change Your Role? Altogether, 18 out of the 21 students did not want to
change the role they currently had in their group. Of the remaining three, one indicated
item 4 and one item 5, as given in Section 5.2.1. The third student simply noted that
he or she would need to practice the version management tool used in the course, to be
able to use that skill in doing the group work. None of the three students blamed the
course or their group members but referred to personal challenges related to time and
skill.
5.2.4. Conclusions. It appears that individual learning processes are not that well
supported in an intensive course run in fixed cycles. First, we found that students
already familiar with FP experienced idle time. Second, we identified group work
patterns that were likely to constrain individuals’ learning. With regard to the latter,
it is important to note that it is likely that it is not only the group work situations
but the need to keep up with the pace of the course that constrains learning. That is,
mismatch between an individual’s learning process (time and skill) and the pace of the
course may manifest itself and become emphasized in the group work.
Student: I do programming tasks at my own pace, I’m so slow in doing the
tasks that I wouldn’t want to change my role in the group.
Student: I do what I can and try to heed the advice given by the more advanced
students. I try to do my best. I try to keep up with the others.
In Section 5.1, it was noted that teaching, in particular giving sufficient feedback to
students, was also constrained due to the constant and rapid pace of the course.
ACM Transactions on Computing Education, Vol. 13, No. 2, Article 6, Publication date: June 2013.
Teaching Programming by Emphasizing Self-Direction 6:13
We could redesign the course to enable students to choose between group work and
individual work. Furthermore, group work could be used merely to provide support for
individuals, who would all complete the exercises according to their own personal goals.
In relation to such student-set individual goals, we should consider how to increase
flexibility so as to allow both repetition of difficult topics and faster progress with easy
topics.
5.3. Survey 2
Replies to Survey 2 were received from 22 students, of whom 21 gave permission for
their use in research.
5.3.1. Is There Enough Learning Material/Information Available to Support Your Learning? Basi-
cally, all 21 students reported that there was enough material, but they quite consis-
tently mentioned challenges experienced with it. Of the 21 answers, 13 (62%) indicated
issues that could be categorized into the themes below. In five of the remaining eight
answers, the wording of the answer also revealed a slight hesitation. The three clearly
affirmative answers indicated that a student was self-directed in finding help from the
group or Internet resources. We extracted the following issues (themes) from the 13
answers.
—Students would need clear examples to be able to make sense of the challenging
learning topics (15%).
—Students find it difficult to locate the essential information they would need for
understanding the current learning topic (38%).
—Students find it difficult to make a proper synthesis of the material (15%).
—Students do not have sufficient time to properly make sense of the material; dis-
cerning what information is essential and making a synthesis of it take a lot of time
(8%).
—Students find learning from materials to be a burdensome task (8%).
—Short topic videos provided by the teacher were reported to be useful and some
students hoped for lectures that would serve to introduce the course topics (15%).
We see all of these items as relating to one major issue (theme): the task of making a
synthesis of the learning topics. This issue prompts an important question: Who is re-
sponsible for making/providing the synthesis—the teacher or the students? Clearly, the
attribute of time in the students’ learning processes is closely related to this question,
as active learning based on self-help appears to be burdensome and time-consuming.
5.3.2. . . . If Not, How Would You Change the Course in This Respect? The majority of the
responses indicated that there should be more examples. Students would appreciate
the provision of examples that are as simple and illustrative as possible, in order
to make sense of the challenging topics. We conjecture that this would have most
likely helped the students in synthesis making. Furthermore, students would like to
be able to mimic the style used in illustrative examples, a request that might relate to
their particular learning styles in the context of learning new and difficult things in
programming.
An interesting detailed observation is that the reported need for lectures also arises
along with this question, which again highlights the issue of synthesis making: We ob-
serve a student preference for being provided with a ready-made synthesis of the topics
instead of being required to create it by themselves. We conclude that the students’
learning processes (self-direction) are constrained by their previous habits, and hence
we would need to explicitly orient them toward new ways of studying. This interpre-
tation is in line with a student comment that directly included a request for education
on the use of materials.
ACM Transactions on Computing Education, Vol. 13, No. 2, Article 6, Publication date: June 2013.
6:14 V. Isom¨ ott ¨ onen and V. Tirronen
Student: Well, information acquisition with Haskell could be better demon-
strated at the beginning . . . or those who appear passive should at least be
prompted to identify proper information sources.
5.3.3. What Has Been the Biggest Help during the Course? The students mentioned what-
ever materials they can find on the Internet, electronic books, their group, IRC chan-
nels, topic videos prepared by the teacher, the weekly practice session and the review
session, copying from others, Hoogle (Haskell API search tool) and Google, and the mo-
tivating talks given by the teacher. Roughly speaking, some emphasized self-help with
a wide range of materials, whereas some placed more stress on support gained from
other people. It is interesting that for some students the biggest help was asking ques-
tions during the practice session and being present in the discussional review session.
It seems that some of the students got help for synthesis making, in particular, in the
discussional review session and associated this session with a lecture—that, however,
comes too late in the weekly cycle.
Student: The demonstration, or the practice session, where you can program
and make questions. The lectures, or the sessions, where it is lectured on how
things should be done, albeit in retrospect.
It seems that students would need to have theory first but cannot make a proper
synthesis (see the theory) on the basis of self-help and the materials available. However,
we also see that students have difficulties in adopting new ways of studying, and they
insist on seeing things as they used to be.
5.3.4. Which of the Exercises Have Been Most Useful . . . Least Useful? Students liked the
exercises that they felt were sufficiently clear and specific as well as the ones where
they made their own programs. The more interesting the exercises were, the more
useful they were perceived to be. Further, frustration emerged with overly difficult
exercises and with those where an external learning topic, like program testing or
geometry, occupied a more central place than the topics of FP and Haskell. No clear
patterns emerged in the students’ preferences, meaning that one student’s dislikes may
be the likes of another.
An interesting point emerges from the following student quote.
Student: The least useful have been the reflection tasks, as these matters are
covered in the review session.
This illustrates student reluctance to the task of reflection that we would associate with
synthesis making. This again suggests that, for students, synthesis making may appear
as a wholly new experience. Another important detail concerns exercise sequences
where the task to be done depend on the solutions to the previous ones. These can
hinder the division of work within a group and hence needs to be taken into account in
the future.
5.3.5. We Have Received Very Few Questions. What Might be the Reason for This? As stated
in Section 5.1, students did not direct the course with questions as we had expected.
There are many reasons for this. The students did not dare to ask questions, as they
considered it to be their responsibility to resolve problems. Sometimes they knew
they could resolve a problem, given sufficient time, which created a barrier to asking
questions. Some students found the practice session to be an appropriate informal
context for asking questions. Thus, rather than following a guided question-making
protocol, the students relied on what they felt to be informal question-making contexts.
It appears that they relied on a wide range of information sources in their learning
(see Section 5.3.3) but least on the formal question-making protocol suggested by us.
ACM Transactions on Computing Education, Vol. 13, No. 2, Article 6, Publication date: June 2013.
Teaching Programming by Emphasizing Self-Direction 6:15
Another challenge has been the difficulty of formulating questions. When students
do not yet possess a proper theoretical understanding of the learning topic, they find it
difficult to come up with an appropriate question. This again relates to the issue raised
in this section: synthesis making and the skills it requires.
Student: Coming up with a question requires at least some theoretical under-
standing behind it. Thus questions rely on things you know already. Still a
weak understanding of the topic does not enliven a poetic vein. Compare this
to asking an octopus to put on tights.
Furthermore, when students come up with questions, this does not match the preset
question-making protocol in our weekly cycle (see Figure 1). It was probably unrealistic
to expect students always to make sufficient progress with the exercises early on and
thereby be able to frame useful questions before our first weekly contact session.
5.3.6. Conclusions. Above all, Survey 2 raised the issue of synthesis making in the con-
text of active self-directed learning. Due to the failure of our question-making protocol, a
component that would support students’ conceptual understanding of the topics early
during the weekly cycles was missing. However, as our analyses indicate, students’
habits were also constrained by the expectations they currently held about studying,
which in turn can be assumed to have constrained their self-directed synthesis making.
Students wanted to learnby example. To contribute to students’ synthesis making, we
can clearly benefit from the design of examples and exercises that are both interesting
to them and properly scaffold their learning. Concise examples and other materials
could compensate for the fact that self-directed active learning takes time, which is a
great challenge when a course like this is run according to the usual academic time
unit (here, 12 weeks).
5.4. Survey 3
Survey 3 received replies from 19 students, 18 of whom gave permission for their use
in research.
5.4.1. What Changes Would You Suggest for the Course to Better Support Your Learning? The
students would have preferred more examples, more simple examples, better instruc-
tions for exercises, and more concise materials. Some called for an introduction to the
topic (FP) at the beginning of the course, and some would prefer one lecture each week
before doing the exercises. These confirm the challenges we identified in Survey 2 (the
question of synthesis making).
In addition, the students requested more supervision time along with structures that
would force shared schedules in group work. In Section 5.1, we notice that the teacher
experiences indicated an already high teaching workload, while yet more supervision
would have been welcomed, and conclude that workload has also presented a challenge
for the students. One student would have liked to know the minimum amount of work
needed to pass the course, which is likely to indicate frustration with a rather informal
study context.
5.4.2. In Group. . . Alone? A clear majority of the respondents preferred group work
over individual work (67%) (see Table II). The students contrasted their group work
experience with their previous group work experiences and noted that group work was
likely to be a successful arrangement in this course where all of the participants had
at least some motivation toward the topic.
Compared with Survey 1, devised earlier in the course, we found stronger comments
on the group work in both a positive and negative sense, as the students had now
encountered the most difficult topics on the course. On the one hand, group work
ACM Transactions on Computing Education, Vol. 13, No. 2, Article 6, Publication date: June 2013.
6:16 V. Isom¨ ott ¨ onen and V. Tirronen
Table II. The Students’ Preferences of the Course Arrangements at the End of the Course When Contrasted
with Traditional Lectured Courses
N = 18
In Groups Alone Both With exercises With lectures Both No grades Grades All the same
12 3 3 12 1 5 9 1 8
See the survey questions in Section 4. Students could select more than one option.
served as a safety net from which the students got necessary help and as an incentive
not to drop out from the course. In particular, the former was our conscious aim, given
such a challenging topic as functional programming.
Student: Impossible without the support of the group
On the other hand, those who preferred individual work had experienced an unequal
skill level or differences in the commitment such as to cause problems. As might have
been expected, our strategy of placing students with the same level of prior experience
in the same group was not successful in all cases.
Student: Although experience of group work is valuable, the workload is here
too arbitrarily divided.
According to some students, the first part of the course could have been completed
individually, while the remainder of it benefited more from group work. Obviously, this
follows from the increasing difficulty in the exercises.
Our conclusion drawn on the basis of Survey 1 was confirmed. That is, we could
profitably allow both individual and group work and find a way to use group work
primarily as a support tool so that each student completes the exercises individually.
5.4.3. With Exercises . . . with Lectures? Learning by programming was preferred over lec-
turing (67%) (see Table II). This was experienced as educative and motivating compared
with a lecture-based option; the students considered that learning programming re-
quires a hands-on approach. We find that the one student who would have preferred
lecturing also reported a negative group work experience. Those who suggested that
both are needed hoped for a few support lectures during the course. Two of those who
preferred exercises also commented that both are needed. The need for support lectures
was indicated by our analyses of Survey 2, in particular regarding the question of who
is responsible for making a synthesis of the learning topics. We return to this question
in Section 6.
5.4.4. Grades . . . No Grades? Half of the students preferred no grades, whereas one stu-
dent specifically hoped for grades on account of their motivating effect. The remaining
eight answered in the middle and said they did not really mind one way or the other. The
sumof those who preferred no grades and those who had no strong opinion amounted to
94% of responses (see Table II). Those who preferred no grades said it motivated them
to work more than they otherwise expected to, and avoided unnecessary cramming.
One student reproduced exactly our motivation for not grading, that is, that the idea
of the course was not set the standards to be met but to provide a context for learning.
Student: The course did not emphasize particular aspects of Haskell →it is
nicer to decide on your own learning.
At the end of the course, the students were asked whether they would prefer grades
or pass-or-fail also in a face-to-face contact session. None of those present opted for
grades. Additionally, they were asked to correspond by e-mail if they wanted to vote on
this matter privately. No e-mails were received.
ACM Transactions on Computing Education, Vol. 13, No. 2, Article 6, Publication date: June 2013.
Teaching Programming by Emphasizing Self-Direction 6:17
5.4.5. Describe Your Motivation during the Course. The students enjoyed the practicality
of the course and made favorable comparisons with other courses. They valued the
chance for hands-on work, which was experienced as educative. Some were inspired
by the Haskell language, but some said their motivation was reduced because they did
not know how useful learning Haskell would eventually be.
The answers principally raise one matter, which is the same that we already put
forward in Section 5.2: how to keep up with the pace of the course. When students
run into difficulties, the rest of the course tends to be about surviving it. Problems
accumulate and students start to lose their motivation.
Student: The problem was the sequence of tasks, which started from the
“rectangles” [refers to a particular programming task] . . . If you start to have
problems they accumulate later
It is not always the difficulty of the programming tasks but the students’ current life
situation that would necessitate a lower pace during the course. As we have emphasized
earlier, the time factor occupies a central role in the students’ learning processes.
The students say this time/learning pace-related challenge was compensated for by
the support gained from group work, by the attraction of the Haskell language, and by
the enthusiasm and the supportive attitude of the teacher and teaching assistants.
5.4.6. Conclusions. With Survey 3, we basically confirmed the conclusions drawn from
the first two surveys. These were group work as both a constraining and supporting
factor in a setting requiring self-direction, conflict between the pace of the course and
the individuals’ learning processes, and the challenge of synthesis making. A new
question was grading, a topic which had not really occupied the students during the
course. All in all, we find that when our course arrangements were contrasted with
more traditional ones, most of the students preferred the present options.
We find that the issues emerging fromthe student data conformclosely to the teacher
experiences described in Section 5.1, which might followfromthe close contact between
the teacher and students in a course of this kind [Gannod et al. 2008].
6. DISCUSSION AND SUGGESTIONS FOR FURTHER ACTIONS
Taking an action research approach, we have critically reviewed a programming course
that emphasizes self-direction on the part of students. Despite the difficulties reported,
we are encouraged to continue with the research. We saw a considerable increase
in the pass rate, and the students preferred the present course arrangements to more
traditional ones. The goal of our practical action research was to develop understanding
of our course model, in particular to find out what issues arise in a learning setting
requiring self-direction. The main issues that we identified are:
(1) students’ opportunities for self-direction in a group work setting;
(2) mismatch between individual learning processes and the hurried pace of the course,
the latter of which was implied by academic course scheduling; and
(3) the challenge of supporting students’ synthesis making.
To avoid the group work obstacles reported in this article, we will, in our next imple-
mentation of the course, show students the group work patterns discovered here. This,
we hope, will enable the students to self-regulate their role in the group. Furthermore,
we will allow the students to choose between individual and group work. We will guide
those who select group work to find group mates who not only have similar previous
experience but also similar resources and schedule. Above all, we aim to design group
work so that help is available at a peer level but each individual completes the ex-
ercises. This conforms to Thelen’s [1949] view that, following from the postulate of
ACM Transactions on Computing Education, Vol. 13, No. 2, Article 6, Publication date: June 2013.
6:18 V. Isom¨ ott ¨ onen and V. Tirronen
experiential learning, an individual’s first-hand learning experience may be preferred
over an individual’s “being in the audience,” while social interactions are known to
valuably expose the individual’s thought processes to criticism and consequences. If
we take programming as the fundamental skill in computing, then the emphasis on
individual work over being in the audience should be well reasoned in our course.
We found that running the course in fixed time cycles necessitated a constant work
pace from the students. Thus, while we heavily emphasized active participation (pro-
gramming) with no lectures, we did not really consider how to support individual
learning processes. In this sense, our teaching model still resembles a lectured course;
it is the attribute of time that we need to focus on. In the future, we will continue
to provide contact sessions during one academic period but increase the overall time
span of the course to cover a full semester. In this connection, we will formulate the
weekly exercises as compact modules to enable course work that is flexible and easy
to grasp. All the modules will be available to be worked on at the beginning of the
semester. With these changes we hope to allow for rapid progress on easy topics and
increased practice time for difficult ones on an individual basis. The attribute of time is
present in the recent sociology literature, where the speeding up of life and the related
scarcity of time are under debate [Wajcman 2008]. By making the course more flexible,
we aim to adjust our teaching to today’s social environment. Here, we set the research
question of whether increased flexibility decreases the problems related to time and
skill or whether we begin to see study motivational issues.
Perhaps the most interesting issue we located concerns students’ difficulties with
making a synthesis of the learning topics. Our observations on students asking for
support lectures resemble those by Boustedt et al. [2011], who found that some students
value formal learning (when contrasted with informal learning) for the experience,
deeper knowledge, and structure provided by an instructor. We need to ask if we tried
to force informal learning into an academic time unit or forced discovery learning with
too little time available for it. We found two aspects that relate to these questions. First,
we would have needed to better orient the students to the study habits required by
our course model to properly set their expectations. Encouraged by the study by Taylor
and Burgess [1995], we should demonstrate the study skills needed and leave room for
sharing and discussing precourse experiences. We assume the latter could contribute
to the emergence of self-directed study groups. Second, our question-making protocol
was not successfully realized, and hence we will need to rethink how the students’
theoretical understanding (synthesis making) of the learning topics can be supported.
Students appeared to prefer informal question-making contexts, which we need to
emphasize in our subsequent research.
We will begin to address the question of synthesis making by redesigning the exam-
ples and exercises with the cognitive load theory [Sweller et al. 1998] as the guiding
theoretical framework. This is encouraged by Miller and Settle [2011] who also refer
to this theory. They studied how different ways of studying affect learning and found
conceptual questions about examples and self-study based on examples to produce
good learning. In contrast, as found by Miller and Settle, the situations where stu-
dents could mimic the answers from examples were not that successful. The authors
concluded the latter did not challenge students’ cognition toward the construction of
useful transferable knowledge.
The cognitive load theory proposes that tasks introducing unwanted cognitive load
should be replaced by ones that induce construction of useful schemas, by which a
learner is able to apply a newly acquired understanding in new situations. It is also
worth noting that prior to being able to deal with challenging meanings in the learning
material, some automation of knowledge structures may be required (compare this
ACM Transactions on Computing Education, Vol. 13, No. 2, Article 6, Publication date: June 2013.
Teaching Programming by Emphasizing Self-Direction 6:19
to learning letters versus being able to understand meanings in a text). From these
standpoints, and based on the findings by Miller and Settle, during the first weeks of
the course, we will increase the number of exercises in which students answer con-
ceptual questions about the given examples. This could show the students a sufficient
number of examples of “what constitutes a Haskell program” and thereby contribute
to the automation of knowledge structures concerning the basics of Haskell. In sum,
we will try to contribute to the students’ synthesis making by relying on self-study
with examples, a portion of which could consist of short topic videos where the teacher
programs the examples. A set of examples would then serve as the primary learning
material, enabling a good connection between the material and the design of the exer-
cises. We will investigate whether these improvements in materials allow us to retain
a very active role on the part of the students in synthesis making and reduce the time
needed for it.
We feel that our exploratory start with action research has been successful. This
article highlights three issues that can be taken into account when implementing a
student-driven course. With the design ideas and research questions raised here, we
are in a more informed position to continue with the research. The design of the next
action research cycle will merit a separate study.
REFERENCES
AKERLIND, G. S. AND TREVITT, A. C. 1999. Enhancing self-directed learning through educational technology:
When students resist the change. Innovations Educ. Teach. Int. 36, 2, 96.
AUVINEN, T., KARAVIRTA, V., AND AHONIEMI, T. 2009. Rubyric: an online assessment tool for effortless authoring
of personalized feedback. SIGCSE Bull. 41, 3, 377–377.
BERGLUND, A. AND LISTER, R. 2010. Introductory programming and the didactic triangle. In Proceedings of
the 12th Australasian Conference on Computing Education (ACE’10). Australian Computer Society, Inc.,
Darlinghurst, Australia, 35–44.
BOUSTEDT, J., ECKERDAL, A., MCCARTNEY, R., SANDERS, K., THOMAS, L., AND ZANDER, C. 2011. Students’ perceptions
of the differences betweenformal and informal learning. InProceedings of the 7thInternational Workshop
on Computing Education Research (ICER’11). ACM, New York, 61–68.
BOYER, N. R., LANGEVIN, S., AND GASPAR, A. 2008. Self direction & constructivism in programming education.
In Proceedings of the 9th ACM SIGITE Conference on Information Technology Education (SIGITE’08).
ACM, New York, 89–94.
CANDY, P. C. 1991. Self-Direction for Life-Long Learning: A Comprehensive Guide to Theory and Practice.
Jossey-Bass, San Franscisco, CA.
CARR, W. AND KEMMIS, S. 1986. Becomming Critical: Education, Knowledge and Action Research. Falmer Press,
London.
CLEAR, T. 2004. Critical Enquiry in Computer Science Education. Routledge Falmer, Abingdon, Oxon,
Chapter 2.
DECI, E. L., KOESTNER, R., AND RYAN, R. M. 1999. A meta-analytic review of experiments examining the effects
of extrinsic rewards on intrinsic motivation. Psychol. Bull. 125, 627–668.
FALTIN, N., BHNE, A., TUTTAS, J., AND WAGNER, B. 2002. Distributed team learning in an internet-assisted
laboratory. In Proceedings of the International Conference on Engineering Education.
FRY, J. P. 1972. Interactive relationship between inquisitiveness and student control of instruction. J. Educ.
Psychol. 63, 5, 459–465.
GANNOD, G., BURGE, J., AND HELMICK, M. 2008. Using the inverted classroom to teach software engineering.
In Proceedings of the ACM/IEEE 30th International Conference on Software Engineering (ICSE’08).
777–786.
GIBBS, G. 1981. Teaching Students to Learn: A Student-Centred Approach. Open University Press, Milton
Keynes, UK.
GLASER, B. G. 1978. Theoretical Sensitivity: Advances in the Methodology of Grounded Theory. Sociology
Press, San Francisco, CA.
GREMMO, M.-J. AND RILEY, P. 1995. Autonomy, self-direction and self access in language teaching and learning:
The history of an idea. System 23, 2, 151–164.
ACM Transactions on Computing Education, Vol. 13, No. 2, Article 6, Publication date: June 2013.
6:20 V. Isom¨ ott ¨ onen and V. Tirronen
GROW, G. O. 1991. Teaching learners to be self-directed. Adult Educ. Q. 41, 3, 125–149.
GRUNDY, S. 1990. Three models of action research. In The Action Research Reader 3rd Ed. S. Kemmis and
R. McTaggart, Eds., Deakin University Press, 353–364.
HERR, K. AND ANDERSON, G. L. 2005. The Action Research Dissertation: A Guide for Students and Faculty.
Sage, Thousand Oaks, CA.
HMELO-SILVER, C., DUNCAN, R., AND CLARK, A. 2007. Scaffolding and achievement in problem-based and inquiry
learning: A response to kirschner, sweller, and clark (2006). Educ. Psychol. 42, 2, 99–107.
KELLEHER, C. AND PAUSCH, R. 2005. Lowering the barriers to programming: A taxonomy of programming
environments and languages for novice programmers. ACM Comput. Surv. 37, 2, 83–137.
KIM, M. AND PARK, S.-Y. 2011. Factors affecting the self-directed learning of students at clinical practice course
for advanced practice nurse. Asian Nursing Res. 5, 1, 48–59.
KIRSCHNER, P., SWELLER, J., AND CLARK, R. 2006. Why minimal guidance during instruction does not work:
An analysis of the failure of constructivist, discovery, problem-based, experiential, and inquiry-based
teaching. Educ. Psychol. 41, 2, 75–86.
KLAFKI, W. 1988. Decentralised curriculumdevelopment in the formof action research. In The Action Research
Reader 3rd Ed. S. Kemmis and R. McTaggart, Eds., Deakin University Press, 235–244.
KLUG, B. 1976. To grade, or not to grade: A dramatic discussion in eleven parts. Stud. Higher Educ. 1, 2,
197–207.
LEUTENEGGER, S. AND EDGINGTON, J. 2007. A games first approach to teaching introductory programming. In
Proceedings of the 38th SIGCSE Technical Symposium on Computer Science Education (SIGCSE’07).
ACM, New York, 115–118.
LEWIN, K. 1946. Action research and minority problems. J. Social Issues 2, 4, 34–46.
LINCOLN, Y. S. AND GUBA, E. G. 1985. Naturalistic Inquiry. Sage, Newbury Park, CA.
LISTER, R. 2001. Objectives and objective assessment in CS1. ACM SIGCSE Bull. 33, 292–296.
MCCARTNEY, R., ECKERDAL, A., MOSTR¨ OM, J. E., SANDERS, K., THOMAS, L., AND ZANDER, C. 2010. Computing
students learning computing informally. In Proceedings of the 10th Koli Calling International Conference
on Computing Education Research (Koli Calling’10). ACM, New York, 43–48.
MCCUTCHEON, G. AND JUNG, B. 1990. Alternative perspectives on action research. Theor. Pract. XXIX, 3,
144–151.
MILES, M. B. AND HUBERMAN, A. M. 1984. Qualitative Data Analysis: A Sourcebook of New Methods. Sage,
Thousand Oaks, CA.
MILLER, C. S. AND SETTLE, A. 2011. When practice doesnt make perfect: Effects of task goals on learning
computing concepts. ACM Trans. Comput. Educ. 11, 4, 22.
PEARS, A. AND ROGALLI, M. 2011. mJeliot: A tool for enhanced interactivity in programming instruction. In
Proceedings of the 11th Koli Calling International Conference on Computing Education Research (Koli
Calling’11). ACM, New York, 16–22.
ROBINSON, H. A. 1994. The Ethnography of Empowerment: The Transformative Power of ClassroomInteraction.
Falmer Press, Bristol.
ROGERS, C. R. 1983. Freedom to Learn for the 80’s. Charles E. Merrill Publishing, Columbus, OH.
RYAN, R. M. AND DECI, E. L. 2000. Self-determination theory and the facilitation of intrinsic motivation, social
development, and well-being. Am. Psychol. 55, 1, 68–78.
SCHMIDT, H., LOYENS, S., VAN GOG, T., AND PAAS, F. 2007. Problem-based learning is compatible with human
cognitive architecture: Commentary on Kirschner, Sweller, and Clark (2006). Educ. Psych. 42, 2, 91–97.
SWELLER, J., KIRSCHNER, P., AND RICHARD, E. 2007. Why minimally guided teaching techniques do not work: A
reply to commentaries. Educ. Psychol. 42, 2, 115–121.
SWELLER, J., VAN MERRIENBOER, J. J. G., AND PAAS, F. G. W. C. 1998. Cognitive architecture and instructional
design. Educ. Psychol. Rev. 10, 3, 251–296.
TAYLOR, I. AND BURGESS, H. 1995. Orientation to self-directed learning: Paradox or paradigm? Stud. Higher
Educ. 20, 1, 87–98.
THELEN, H. A. 1949. Group dynamics in instruction: Principle of least group size. School Rev. 57, 3, 139–148.
TIRRONEN, V. AND ISOM¨ OTT¨ ONEN, V. 2011. Making teaching of programming learning-oriented and learner-
directed. In Proceedings of the 11th Koli Calling International Conference on Computing Education
Research (Koli Calling’11). ACM, New York, 60–65.
VAN DEN HURK, M. M., WOLFHAGEN, I. H. A. P., DOLMANS, D. H. J. M., AND VAN DER VLEUTEN, C. P. M. 1999. The
impact of student-generated learning issues on individual study time and academic achievement. Med.
Educ. 33, 808–814.
ACM Transactions on Computing Education, Vol. 13, No. 2, Article 6, Publication date: June 2013.
Teaching Programming by Emphasizing Self-Direction 6:21
VIHAVAINEN, A., PAKSULA, M., AND LUUKKAINEN, M. 2011. Extreme apprenticeship method in teaching pro-
gramming for beginners. In Proceedings of the 42nd ACM Technical Symposium on Computer Science
Education (SIGCSE’11). ACM, New York, 93–98.
WAJCMAN, J. 2008. Life in the fast lane? Towards a sociology of technology and time. Brit. J. Sociol. 59, 1,
59–77.
Received April 2012; revised January 2013; accepted February 2013
ACM Transactions on Computing Education, Vol. 13, No. 2, Article 6, Publication date: June 2013.