digital support for abductive learning in introductory computing courses
DESCRIPTION
Digital Support for Abductive Learning in Introductory Computing Courses. Atanas Radenski Chapman University Orange, CA 92866, U.S.A. [email protected]. Abductive Learning: Rationale. Today, the textbook market offers a wide variety of high-quality CS1/2 textbooks. - PowerPoint PPT PresentationTRANSCRIPT
Digital Support for Abductive Learning
in Introductory Computing Courses Atanas Radenski
Chapman UniversityOrange, CA 92866, [email protected]
March 08, 2007 SIGCSE-07, Covington, Kentucky
2
Abductive Learning: Rationale Today, the textbook market offers a wide variety
of high-quality CS1/2 textbooks. These books are developed by talented computer
science educators who employ their multifaceted experiences to motivate and support student learning.
Yet, there are reports that textbook popularity among teachers and students alike may be declining.
March 08, 2007 SIGCSE-07, Covington, Kentucky
3
A recent survey - conducted in six European universities in five countries - reveals that students and teachers alike give low ratings to textbooks [Lahtinen et al., ITiCSE'05].
The same survey gives highest ratings to example programs.
Resource and Their Ratings (1-5) By Students By TeachersTextbooks 3.35 3.30Lecture notes and printed slides 3.39 3.47Exercise questions & answers 3.33 3.62Example programs 4.19 4.24Pictures of program structures 3.15 3.70Interactive Visualizations 3.33 4.07
Abductive Learning: Rationale
March 08, 2007 SIGCSE-07, Covington, Kentucky
4
Abductive Learning: Rationale In our own surveys [Radenski, ITiCSE'06] conducted
three times at Chapman University in California since 2004, CS1/2 students consistently rate paper textbooks among the least helpful resources.
Our students identify sample programs as most beneficial, exactly as European students do.
March 08, 2007 SIGCSE-07, Covington, Kentucky
5
Abductive Learning: Rationale In various forums, CS educators informally
express their concerns about the increasing unwillingness of students to systematically read textbooks.
For example, the following message was sent by computer science professor to the SIGSE mailing list in April 2006:
"Alas, I find that one of the biggest challenges is the increasing inability (or willingness) of students to read. Witness my Alice lab this semester where a student looked at a page in the textbook (only half a page of text, since the top half was a picture, and large print at that), sighed, and said 'I'm just going to muddle through with the software because I don't have the patience to read these [ed: 4 or 5] sentences'."
March 08, 2007 SIGCSE-07, Covington, Kentucky
6
Abductive Learning: Rationale I believe that low ratings of textbooks can be
caused by discrepancies between: the teaching preferences of textbook authors and
instructors on one end, and the learning preferences of students on the other.
While textbooks often focus extensively on general concepts and paradigms, entry-level computing students normally prefer to learn by concrete examples and experiments.
March 08, 2007 SIGCSE-07, Covington, Kentucky
7
Abductive Learning: Rationale For instance, many computing textbooks lead
instructors to emphasize abstraction early in their classes, whereas beginning computing students often fail to connect to abstract concepts.
This issue is illustrated by the following message posted by an educator in the SIGSE mailing list.
"Increasingly I find [that] student's [sic] ability to understand, let alone write, even slightly abstract statements of any kind about programs is seriously deficient. All that many can relate to is numerous examples of program behavior."
Some educators even question students' willingness and ability to reason about the subject matter [SIGSE mailing list, 2006].
March 08, 2007 SIGCSE-07, Covington, Kentucky
8
Abductive Learning: Rationale I believe that contemporary computing students
do reason as well as we - their professors - do, but in a different way, as advocated in the rest of this talk.
We, the academics, by virtue of our profession, are masters of sound deduction.
Deduction is a reasoning process that involves the inference of conclusions from general premises.
Because many of us are at our best when we derive the specific from the general, we like to read and learn this way, and we often choose to write textbooks and to teach this way.
March 08, 2007 SIGCSE-07, Covington, Kentucky
9
Abductive Learning: Rationale Contemporary computing students grew up
browsing and reading on the Web rather than reading paper books alone.
On the Web, our students have learned: to surf rapidly from one piece of information to another, to correlate a variety of observations, to search useful facts quickly, and to make relevant conclusions.
Contemporary students are particularly capable of abduction.
Abduction is a reasoning process that starts with a set of observations and then generates the best possible explanation of those observations.
March 08, 2007 SIGCSE-07, Covington, Kentucky
10
Abductive Learning: Rationale Abduction and induction are distinct forms of
probable inference that have been initially studied by Charles Sanders Peirce in the 19th century.
In the computer age, abduction has been explored by philosophers and artificial intelligence researchers.
March 08, 2007 SIGCSE-07, Covington, Kentucky
11
Abductive Learning: Rationale While induction is typically used to generate
predictions, abduction is used to generate explanations [Bell, JCAI'97].
Example of induction: The sun rose today, yesterday, the day before yesterday, etc., therefore the sun will rise tomorrow as well.
Example of abduction: The sun rose today, yesterday, the day before yesterday, etc., because the earth rotates around its pivot.
Pierce advocated that abduction is the main method for generating new knowledge.
March 08, 2007 SIGCSE-07, Covington, Kentucky
12
Abductive Learning: Rationale Abductive reasoning occurs naturally in most
disciplines. For example, abductive reasoning in a computing
class may: begin with the study of a sample program then continue with some experimental changes to the
program, and finally generate plausible explanations of various algorithmic
and linguistic program features. When a computing student says “I will figure it out
by myself”, he is likely to apply abductive reasoning: by first browsing through concrete samples and then finding the best possible explanation for what has been
observed.
March 08, 2007 SIGCSE-07, Covington, Kentucky
13
Abductive Learning: Rationale I use the general term abductive learning to
refer to any form of active learning that triggers abductive reasoning.
Recall that abductive reasoning generates the best possible explanation of a set of observations.
Consequently, abductive reasoning is a learning process by itself because students actually learn the generated explanations.
March 08, 2007 SIGCSE-07, Covington, Kentucky
14
Abductive Learning: Implementation As educators, we do not have the ability to
change the reasoning and learning preferences of entry-level computing students, but we can adapt to, and exploit these preferences.
March 08, 2007 SIGCSE-07, Covington, Kentucky
15
In order to adapt to, and exploit the abduction skills of entry-level computing students, I have developed integrated CS1/2 online study packs that support abductive learning.
The digital packs are published on a dedicated server at studypack.com.
Abductive Learning: Implementation
March 08, 2007 SIGCSE-07, Covington, Kentucky
16
Abductive Learning: Implementation I am among those who advocate the benefits
of two different languages for CS1 and CS2 [Radenski, ITiCSE'06].
I have chosen Python for CS1 because it is simple to learn and because it offers an easy-to-use interactive mode that effectively promotes abductive learning.
I have chosen Java for CS2 because it is a mainstream commercial language that focuses on large scale OO software development.
March 08, 2007 SIGCSE-07, Covington, Kentucky
17
Abductive Learning: Implementation
This is a snapshot of
the Graphics
topic from the Java
study pack.
A digital study pack is all-in-one integrated resource, a collection of online topics.
March 08, 2007 SIGCSE-07, Covington, Kentucky
18
Abductive Learning: Implementation
This is a snapshot of the e-text on Classes from the Python study
pack.
A typical topic consists of e-text / tutorial, slides, lab assignment, report, and quiz.
An e-text in a study pack is the digital
equivalent of a paper book chapter.
March 08, 2007 SIGCSE-07, Covington, Kentucky
19
Abductive Learning: Implementation
Self-guided labs are based on instructive
sample programs.
Completed labs are submitted online into the
digital pack.
The lab assignment for each topic consists of a number of detailed self-guided labs.
The Python pack includes 62 labs, while the Java pack incorporates 41 labs.
March 08, 2007 SIGCSE-07, Covington, Kentucky
20
Abductive Learning: Implementation
Self-guided labs incorporate (1)
necessary background information and (2)
detailed sequences of instructions that walk students step-by-step
through program exploration and development.
Self-guided labs contain sufficient details to allow most students to work independently.
March 08, 2007 SIGCSE-07, Covington, Kentucky
21
By design, Python supports a highly interactive programming style that gives students a great opportunity to learn through interactive experiments and exploration.
In Python's interactive mode, students can type various statements and immediately observe and
analyze the results from the execution.
Abductive Learning: Implementation
March 08, 2007 SIGCSE-07, Covington, Kentucky
22
Abductive Learning: Implementation Interactive labs trigger abduction
in a straightforward way.
Students observe each statement as they type it and then analyze the result of its
execution.When necessary, students browse and search digital resources included in the pack, such as e-texts and
slides.While students experiment interactively, they
generate plausible explanations of the form, meaning, and purpose of individual interactive statements.
March 08, 2007 SIGCSE-07, Covington, Kentucky
23
By design, Java is less interactive than Python. Yet, many Java IDEs support interactive exploration.
This similarity helps for a smooth transition from the
CS1's Python to the CS2's Java.
DrJava's interactive mode is very similar, visually and
functionally, to the interactive mode of Python.
Abductive Learning: Implementation
March 08, 2007 SIGCSE-07, Covington, Kentucky
24
Abductive Learning: Implementation Sample programs are designed to
demonstrate new concepts or techniques.
For example, the Transform Sequence sample program demonstrates the Java 2D
Graphics translation transform by drawing a sequence of
rectangles.
March 08, 2007 SIGCSE-07, Covington, Kentucky
25
Non-interactive self-guided labs are based on sample programs.
Abductive Learning: Implementation
A typical self-guided lab instructs the student to explore and
experiment with the sample program.
After exploration, the lab calls for a transformation of the sample program into a target program.
Students are free to follow the detailed step-by-step instructions or to try the lab independently.
March 08, 2007 SIGCSE-07, Covington, Kentucky
26
Abductive Learning: Implementation Non-interactive labs trigger
abductive reasoning by drawing parallels between sample programs and target programs.
The study of programs in transition, from samples to targets, is a
powerful abductive learning method.
March 08, 2007 SIGCSE-07, Covington, Kentucky
27
Abductive Learning: Implementation
This Java non-interactive lab triggers abduction by drawing a parallel between translation and rotation.
The lab teaches students, among other things, that translation and rotation are actually specific instances of the more general transform concept.
March 08, 2007 SIGCSE-07, Covington, Kentucky
28
Abductive Learning: Implementation*
Last, but not least, students naturally affirm their knowledge of step-wise program development - by simply following the recommended lab steps.
March 08, 2007 SIGCSE-07, Covington, Kentucky
29
Abductive Learning: Implementation
Abductive learning through self-guided labs can be very stimulating. Students often
choose to go beyond what is required by the lab. For example, one of our students went beyond the required lab activities to study
constructive area geometry, in order to produce the stem and the leaves of his
dancing flower.
March 08, 2007 SIGCSE-07, Covington, Kentucky
30
Abductive Learning: Implementation
The receipt of instant credit
for a completed lab gives
students an incentive to
enthusiastically engage in the
next lab.
Students submit completed labs into the online study pack and receive provisional credit instantly, upon the completion of an honor lab report.
March 08, 2007 SIGCSE-07, Covington, Kentucky
31
Abductive Learning: Implementation
To improve their scores with additional quiz submissions,
students search, browse, and read e-texts, tutorials, and
slides. To find answers to quiz
questions, students experiment interactively,
observe the results, and try to find the best possible
explanation for what they see.
The study of each topic is completed with an online quiz which allows multiple submissions.
March 08, 2007 SIGCSE-07, Covington, Kentucky
32
Abductive Learning: Implementation Note that abductive learning does not eliminate
other forms of learning, such as lectures and reading - it works in concert with them.
An abducted explanation may be initially imprecise or incomplete.
It is further refined and corrected through various activities, such as reading and interaction with the instructor.
Abductivelearning
Lectures & Reading
March 08, 2007 SIGCSE-07, Covington, Kentucky
33
In 2004/5, draft versions of Python and Java digital study packs were adopted in the CS1/2 courses at Chapman University.
In two years, the failure rate in the CS1/2 courses fell from 14% to 5%.
Academic year 2003/4 2004/5 2005/6
Total enrollment 44 45 74Passing grades 38 39 70Non-passing grades 6 6 4Failure rate 14% 13% 5%
Abductive Learning: Evaluation*
March 08, 2007 SIGCSE-07, Covington, Kentucky
34
In surveys conducted at Chapman University in 2005/06, students give high ratings to the Python and Java digital study packs and to their components.
Study pack resources / activities
Python Java
Sample programs 4.7 4.1The entire online study pack 4.5 4.5Online lab assignments 4.3 4.5Online quizzes 3.8 3.5Printed textbooks (if available) 1.8 2.9
Abductive Learning: Evaluation*
March 08, 2007 SIGCSE-07, Covington, Kentucky
35
This is how students from Chapman and Columbus State evaluated Python & Java packs in Fall of 2006.
Scale is from 1 to 5.
Study pack / Effect Python JavaHelps COMPREHENSION 4.4 4.5Stimulates IMAGINATION 4.2 4.2Helps build CONFIDENCE 4.2 4.4Improves SELF-MOTIVATION 4.3 4.4Increases DESIRE TO LEARN MORE
4.4 4.4
Causes BOREDOM 2.1 2.2
Abductive Learning: Evaluation
March 08, 2007 SIGCSE-07, Covington, Kentucky
36
In early Summer of 2006, the first full editions of the packs were published at http://studypack.com.
Since then, several instructors at five institutions have adopted pack instances for their 2006/7 courses.
Abductive Learning: Evaluation
The Python and Java packs can be adapted to various courses.
March 08, 2007 SIGCSE-07, Covington, Kentucky
37
Abductive Learning: Announcements Preview packs are available to educators at
studypack.com. A printed companion book Python First: The Joy of
Success will be published in April 2007. 3rd Summer Python Workshop will be held in June
18-21, Chapman University, Orange, California. Tuition is free, $50 nominal registration fee. Search Google: Python First Workshop at Chapman.
Ideas for future work? Abductive learning of Ruby, C/C++, programming in
other languages. Beyond CS: Math, Sciences, and more? Contact: [email protected].
Digital Support for Abductive Learning
in Introductory Computing Courses Atanas Radenski
Chapman UniversityOrange, CA 92866, [email protected]