28.03.2014 Views

isbn9789526046266

isbn9789526046266

isbn9789526046266

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Contents<br />

1 Here is How to Make Sense of This Thesis 11<br />

1.1 This work is about a pedagogical technique for improving programming education ..... 11<br />

1.2 This is computing education research on software visualization ............... 11<br />

1.3 This thesis consists of six main parts ............................. 13<br />

1.3.1 The thesis is driven by a sequence of questions and answers ............ 13<br />

1.3.2 There are different ways of reading the thesis .................... 13<br />

I The Challenge of Introductory Programming Education 17<br />

2 Introductory Programming Courses are Demanding 19<br />

2.1 Bloom’s taxonomy sorts learning objectives by cognitive complexity ............ 19<br />

2.1.1 The taxonomy distinguishes between six types of cognitive process ......... 19<br />

2.1.2 Applying Bloom to programming is tricky but increasingly popular ......... 20<br />

2.1.3 The goals of introductory programming courses are cognitively challenging ..... 21<br />

2.2 The SOLO taxonomy sorts learning outcomes by structural complexity ........... 22<br />

2.2.1 SOLO charts a learning path from disjointed to increasingly integrated knowledge . 22<br />

2.2.2 SOLO has been used to analyze programming assignments ............. 22<br />

2.2.3 The expected outcomes of programming courses are structurally complex ..... 24<br />

3 Students Worldwide Do Not Learn to Program 25<br />

3.1 Many students do not learn to write working programs ................... 25<br />

3.2 Code-writing skill is (loosely?) related to code-reading skill ................. 26<br />

3.3 But many students do not learn to read code, either .................... 28<br />

3.4 What is more, many students understand fundamental programming concepts poorly . . . 28<br />

II Learning Introductory Programming 31<br />

4 Psychologists Say: We Form Schemas to Process Complex Information 33<br />

4.1 Cognitive psychology investigates mental structures . .................... 33<br />

4.1.1 Inside minds, there are mental representations .................... 33<br />

4.1.2 Working memory can only hold a handful of items at a time ............ 34<br />

4.1.3 Chunking and automation help overcome the limitations of working memory .... 35<br />

4.2 Westoreourgenericknowledgeasschemas ......................... 35<br />

4.3 Schemas keep the complexity of problem solving in check .................. 37<br />

4.3.1 Scripts and problem-solving schemas tell us what to do . . . ............ 37<br />

4.3.2 Schemas are a key ingredient of expertise ...................... 37<br />

4.3.3 An introductory course starts the novice on a long road of schema-building . . . . 38<br />

4.4 People form and retrieve schemas when writing programs . ................. 39<br />

4.4.1 Plan schemas store general solution patterns ..................... 39<br />

4.4.2 Programming strategy depends on problem familiarity (read: schemas) ....... 40<br />

4.5 Cognitive load strains the human working memory during learning ............. 43<br />

4.5.1 Some cognitive load is unavoidable, some desirable, some undesirable ....... 43<br />

4.5.2 Cognitive load theory has many recommendations for instructional design ..... 44<br />

2

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!