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. 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 2 Abductive Learning: Rationale 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 Teachers Textbooks 3.35 3.30 Lecture notes and printed slides 3.39 3.47 Exercise questions & answers 3.33 3.62 Example programs 4.19 4.24 Pictures of program structures 3.15 3.70 Interactive Visualizations 3.33 4.07 March 08, 2007 SIGCSE-07, Covington, Kentucky 3 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 4 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 5 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 6 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 7 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 8 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 to to to surf rapidly from one piece of information to another, correlate a variety of observations, search useful facts quickly, and 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 9 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 10 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 11 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 12 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 13 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 14 Abductive Learning: Implementation 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. March 08, 2007 SIGCSE-07, Covington, Kentucky 15 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 16 Abductive Learning: Implementation A digital study pack is all-in-one integrated resource, a collection of online topics. This is a snapshot of the Graphics topic from the Java study pack. March 08, 2007 SIGCSE-07, Covington, Kentucky 17 Abductive Learning: Implementation A typical topic consists of e-text / tutorial, slides, lab assignment, report, and quiz. This is a snapshot of the e-text on Classes from the Python study pack. An e-text in a study pack is the digital equivalent of a paper book chapter. March 08, 2007 SIGCSE-07, Covington, Kentucky 18 Abductive Learning: Implementation The lab assignment for each topic consists of a number of detailed selfguided labs. Self-guided labs are based on instructive sample programs. The Python pack includes 62 labs, while the Java pack incorporates 41 labs. Completed labs are submitted online into the digital pack. March 08, 2007 SIGCSE-07, Covington, Kentucky 19 Abductive Learning: Implementation Self-guided labs contain sufficient details to allow most students to work independently. Self-guided labs incorporate (1) necessary background information and (2) detailed sequences of instructions that walk students step-bystep through program exploration and development. March 08, 2007 SIGCSE-07, Covington, Kentucky 20 Abductive Learning: Implementation 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. March 08, 2007 SIGCSE-07, Covington, Kentucky 21 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 22 Abductive Learning: Implementation By design, Java is less interactive than Python. Yet, many Java IDEs support interactive exploration. DrJava's interactive mode is very similar, visually and functionally, to the interactive mode of Python. This similarity helps for a smooth transition from the CS1's Python to the CS2's Java. March 08, 2007 SIGCSE-07, Covington, Kentucky 23 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 24 Abductive Learning: Implementation Non-interactive self-guided labs are based on sample programs. 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 25 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 26 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 27 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 28 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 29 Abductive Learning: Implementation Students submit completed labs into the online study pack and receive provisional credit instantly, upon the completion of an honor lab report. The receipt of instant credit for a completed lab gives students an incentive to enthusiastically engage in the next lab. March 08, 2007 SIGCSE-07, Covington, Kentucky 30 Abductive Learning: Implementation The study of each topic is completed with an online quiz which allows multiple submissions. 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. March 08, 2007 SIGCSE-07, Covington, Kentucky 31 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. Lectures Abductive & Reading learning March 08, 2007 SIGCSE-07, Covington, Kentucky 32 Abductive Learning: Evaluation* 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 74 Passing grades 38 39 70 Non-passing grades 6 6 4 14% 13% 5% Failure rate March 08, 2007 SIGCSE-07, Covington, Kentucky 33 Abductive Learning: Evaluation* 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.1 The entire online study pack 4.5 4.5 Online lab assignments 4.3 4.5 Online quizzes 3.8 3.5 Printed textbooks (if available) 1.8 2.9 March 08, 2007 SIGCSE-07, Covington, Kentucky 34 Abductive Learning: Evaluation 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 Java Helps COMPREHENSION 4.4 4.5 Stimulates IMAGINATION 4.2 4.2 Helps build CONFIDENCE 4.2 4.4 Improves SELF-MOTIVATION 4.3 4.4 Increases DESIRE TO LEARN MORE 4.4 4.4 Causes BOREDOM 2.1 2.2 March 08, 2007 SIGCSE-07, Covington, Kentucky 35 Abductive Learning: Evaluation 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. The Python and Java packs can be adapted to various courses. March 08, 2007 SIGCSE-07, Covington, Kentucky 36 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. Ideas for future work? Tuition is free, $50 nominal registration fee. Search Google: Python First Workshop at Chapman. Abductive learning of Ruby, C/C++, programming in other languages. Beyond CS: Math, Sciences, and more? Contact: [email protected]. March 08, 2007 SIGCSE-07, Covington, Kentucky 37 Digital Support for Abductive Learning in Introductory Computing Courses Atanas Radenski Chapman University Orange, CA 92866, U.S.A. [email protected]
© Copyright 2026 Paperzz