38
Digital Support for Abductive Learning in Introductory Computing Courses Atanas Radenski Chapman University Orange, CA 92866, U.S.A. [email protected]

Digital Support for Abductive Learning in Introductory Computing Courses

  • Upload
    jaimie

  • View
    50

  • Download
    0

Embed Size (px)

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 Presentation

Citation preview

Page 1: Digital Support for Abductive Learning  in Introductory Computing Courses

Digital Support for Abductive Learning

in Introductory Computing Courses Atanas Radenski

Chapman UniversityOrange, CA 92866, [email protected]

Page 2: Digital Support for Abductive Learning  in Introductory Computing Courses

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.

Page 3: Digital Support for Abductive Learning  in Introductory Computing Courses

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

Page 4: Digital Support for Abductive Learning  in Introductory Computing Courses

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.

Page 5: Digital Support for Abductive Learning  in Introductory Computing Courses

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'."

Page 6: Digital Support for Abductive Learning  in Introductory Computing Courses

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.

Page 7: Digital Support for Abductive Learning  in Introductory Computing Courses

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].

Page 8: Digital Support for Abductive Learning  in Introductory Computing Courses

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.

Page 9: Digital Support for Abductive Learning  in Introductory Computing Courses

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.

Page 10: Digital Support for Abductive Learning  in Introductory Computing Courses

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.

Page 11: Digital Support for Abductive Learning  in Introductory Computing Courses

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.

Page 12: Digital Support for Abductive Learning  in Introductory Computing Courses

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.

Page 13: Digital Support for Abductive Learning  in Introductory Computing Courses

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.

Page 14: Digital Support for Abductive Learning  in Introductory Computing Courses

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.

Page 15: Digital Support for Abductive Learning  in Introductory Computing Courses

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

Page 16: Digital Support for Abductive Learning  in Introductory Computing Courses

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.

Page 17: Digital Support for Abductive Learning  in Introductory Computing Courses

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.

Page 18: Digital Support for Abductive Learning  in Introductory Computing Courses

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.

Page 19: Digital Support for Abductive Learning  in Introductory Computing Courses

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.

Page 20: Digital Support for Abductive Learning  in Introductory Computing Courses

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.

Page 21: Digital Support for Abductive Learning  in Introductory Computing Courses

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

Page 22: Digital Support for Abductive Learning  in Introductory Computing Courses

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.

Page 23: Digital Support for Abductive Learning  in Introductory Computing Courses

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

Page 24: Digital Support for Abductive Learning  in Introductory Computing Courses

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.

Page 25: Digital Support for Abductive Learning  in Introductory Computing Courses

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.

Page 26: Digital Support for Abductive Learning  in Introductory Computing Courses

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.

Page 27: Digital Support for Abductive Learning  in Introductory Computing Courses

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.

Page 28: Digital Support for Abductive Learning  in Introductory Computing Courses

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.

Page 29: Digital Support for Abductive Learning  in Introductory Computing Courses

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.

radenski
Page 30: Digital Support for Abductive Learning  in Introductory Computing Courses

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.

Page 31: Digital Support for Abductive Learning  in Introductory Computing Courses

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.

Page 32: Digital Support for Abductive Learning  in Introductory Computing Courses

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

Page 33: Digital Support for Abductive Learning  in Introductory Computing Courses

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*

Page 34: Digital Support for Abductive Learning  in Introductory Computing Courses

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*

Page 35: Digital Support for Abductive Learning  in Introductory Computing Courses

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

Page 36: Digital Support for Abductive Learning  in Introductory Computing Courses

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.

Page 37: Digital Support for Abductive Learning  in Introductory Computing 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].

Page 38: Digital Support for Abductive Learning  in Introductory Computing Courses

Digital Support for Abductive Learning

in Introductory Computing Courses Atanas Radenski

Chapman UniversityOrange, CA 92866, [email protected]