Experiences and Results from three Years of CSE 211...

69
Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” Matthias Scheutz Department of Computer Science and Engineering University of Notre Dame http://www.nd.edu/˜mscheutz/ Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 1/21

Transcript of Experiences and Results from three Years of CSE 211...

Page 1: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

Experiences and Results fromthree Years of CSE 211

“Fundamentals of Computing I”Matthias Scheutz

Department of Computer Science and EngineeringUniversity of Notre Dame

http://www.nd.edu/˜mscheutz/

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 1/21

Page 2: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

OutlinePre-text of CSE at Notre Dame

Structure of CSE 211 – Fundamentals ofComputing I3 Hypotheses about Student Performance inCSE 211Results and Conclusions

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 2/21

Page 3: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

OutlinePre-text of CSE at Notre DameStructure of CSE 211 – Fundamentals ofComputing I

3 Hypotheses about Student Performance inCSE 211Results and Conclusions

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 2/21

Page 4: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

OutlinePre-text of CSE at Notre DameStructure of CSE 211 – Fundamentals ofComputing I3 Hypotheses about Student Performance inCSE 211

Results and Conclusions

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 2/21

Page 5: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

OutlinePre-text of CSE at Notre DameStructure of CSE 211 – Fundamentals ofComputing I3 Hypotheses about Student Performance inCSE 211Results and Conclusions

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 2/21

Page 6: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

Pre-textCSE at Notre Dame

CSE curriculum only 3 years, because all engineeringstudents take “first year engineering sequence”

Hence, core CS/CE materials that are usually spreadover two years at institutions with 4 year programshave to be covered as quickly as possible

The new CSE 2002 undergraduate curriculum at NotreDame (ND02)

Modelled based on IEEE/ACM Computing Curricula2001 (CC2001)

No single CC2001 proposal fits without adaptation

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 3/21

Page 7: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

Pre-textCSE at Notre Dame

CSE curriculum only 3 years, because all engineeringstudents take “first year engineering sequence”

Hence, core CS/CE materials that are usually spreadover two years at institutions with 4 year programshave to be covered as quickly as possible

The new CSE 2002 undergraduate curriculum at NotreDame (ND02)

Modelled based on IEEE/ACM Computing Curricula2001 (CC2001)

No single CC2001 proposal fits without adaptation

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 3/21

Page 8: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

Pre-textCSE at Notre Dame

CSE curriculum only 3 years, because all engineeringstudents take “first year engineering sequence”

Hence, core CS/CE materials that are usually spreadover two years at institutions with 4 year programshave to be covered as quickly as possible

The new CSE 2002 undergraduate curriculum at NotreDame (ND02)

Modelled based on IEEE/ACM Computing Curricula2001 (CC2001)

No single CC2001 proposal fits without adaptation

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 3/21

Page 9: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

Pre-textCSE at Notre Dame

CSE curriculum only 3 years, because all engineeringstudents take “first year engineering sequence”

Hence, core CS/CE materials that are usually spreadover two years at institutions with 4 year programshave to be covered as quickly as possible

The new CSE 2002 undergraduate curriculum at NotreDame (ND02)

Modelled based on IEEE/ACM Computing Curricula2001 (CC2001)

No single CC2001 proposal fits without adaptation

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 3/21

Page 10: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

Pre-textCSE at Notre Dame

CSE curriculum only 3 years, because all engineeringstudents take “first year engineering sequence”

Hence, core CS/CE materials that are usually spreadover two years at institutions with 4 year programshave to be covered as quickly as possible

The new CSE 2002 undergraduate curriculum at NotreDame (ND02)

Modelled based on IEEE/ACM Computing Curricula2001 (CC2001)

No single CC2001 proposal fits without adaptationExperiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 3/21

Page 11: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

Curriculum 2001 Y1&Y2

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 4/21

Page 12: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

Curriculum 2001 Y1&Y2vs. ND 02

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 5/21

Page 13: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

Curriculum 2001 Y3&Y4

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 6/21

Page 14: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

Curriculum 2001 Y3&Y4vs. ND 02

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 7/21

Page 15: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

US4Y ⊂ ND02The US4Y curriculum requires 15 CSEcourses, 6 math and science courses, 2undergrad project courses and one capstone

ND02 requires 16 CSE, 9 math and sciencecourses, 3 tech electives (for undergradresearch and capstone), and 2 courseintroduction to engineering sequenceThus, ND02 meets the CC01 requirement forUS4Y

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 8/21

Page 16: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

US4Y ⊂ ND02The US4Y curriculum requires 15 CSEcourses, 6 math and science courses, 2undergrad project courses and one capstoneND02 requires 16 CSE, 9 math and sciencecourses, 3 tech electives (for undergradresearch and capstone), and 2 courseintroduction to engineering sequence

Thus, ND02 meets the CC01 requirement forUS4Y

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 8/21

Page 17: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

US4Y ⊂ ND02The US4Y curriculum requires 15 CSEcourses, 6 math and science courses, 2undergrad project courses and one capstoneND02 requires 16 CSE, 9 math and sciencecourses, 3 tech electives (for undergradresearch and capstone), and 2 courseintroduction to engineering sequenceThus, ND02 meets the CC01 requirement forUS4Y

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 8/21

Page 18: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

CSE 211“Functional First”

CSE 211 (3 cr) based on CSE 233 FunctionalProgramming plus new mandatory lab section (1cr)

CSE 233 was essentially based on MIT’s 6.001Structure and Interpretation of Computer Programs

Appealing was the book’s quick focus on proceduraland data abstraction and its methodological goal ofkeeping new syntactic constructs to a minimum, whichis facilitated by using SCHEME

Typically, about half of the incoming CS and CEstudents have very limited or no programmingbackground

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 9/21

Page 19: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

CSE 211“Functional First”

CSE 211 (3 cr) based on CSE 233 FunctionalProgramming plus new mandatory lab section (1cr)

CSE 233 was essentially based on MIT’s 6.001Structure and Interpretation of Computer Programs

Appealing was the book’s quick focus on proceduraland data abstraction and its methodological goal ofkeeping new syntactic constructs to a minimum, whichis facilitated by using SCHEME

Typically, about half of the incoming CS and CEstudents have very limited or no programmingbackground

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 9/21

Page 20: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

CSE 211“Functional First”

CSE 211 (3 cr) based on CSE 233 FunctionalProgramming plus new mandatory lab section (1cr)

CSE 233 was essentially based on MIT’s 6.001Structure and Interpretation of Computer Programs

Appealing was the book’s quick focus on proceduraland data abstraction and its methodological goal ofkeeping new syntactic constructs to a minimum, whichis facilitated by using SCHEME

Typically, about half of the incoming CS and CEstudents have very limited or no programmingbackground

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 9/21

Page 21: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

CSE 211“Functional First”

CSE 211 (3 cr) based on CSE 233 FunctionalProgramming plus new mandatory lab section (1cr)

CSE 233 was essentially based on MIT’s 6.001Structure and Interpretation of Computer Programs

Appealing was the book’s quick focus on proceduraland data abstraction and its methodological goal ofkeeping new syntactic constructs to a minimum, whichis facilitated by using SCHEME

Typically, about half of the incoming CS and CEstudents have very limited or no programmingbackground

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 9/21

Page 22: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

Why SCHEME?SCHEME is a syntactically simple language

SCHEME is easy and quick to learn

SCHEME allows students to focus on programmingconcepts right away (rather than having to spend asignificant time on learning syntactic constructs as isthe case with syntactically complex languages likeC++)

SCHEME does not advantage students with priorprogramming background in imperative languageslikes C/C++

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 10/21

Page 23: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

Why SCHEME?SCHEME is a syntactically simple language

SCHEME is easy and quick to learn

SCHEME allows students to focus on programmingconcepts right away (rather than having to spend asignificant time on learning syntactic constructs as isthe case with syntactically complex languages likeC++)

SCHEME does not advantage students with priorprogramming background in imperative languageslikes C/C++

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 10/21

Page 24: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

Why SCHEME?SCHEME is a syntactically simple language

SCHEME is easy and quick to learn

SCHEME allows students to focus on programmingconcepts right away (rather than having to spend asignificant time on learning syntactic constructs as isthe case with syntactically complex languages likeC++)

SCHEME does not advantage students with priorprogramming background in imperative languageslikes C/C++

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 10/21

Page 25: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

Why SCHEME?SCHEME is a syntactically simple language

SCHEME is easy and quick to learn

SCHEME allows students to focus on programmingconcepts right away (rather than having to spend asignificant time on learning syntactic constructs as isthe case with syntactically complex languages likeC++)

SCHEME does not advantage students with priorprogramming background in imperative languageslikes C/C++

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 10/21

Page 26: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

Topics in CSE 211Procedural abstraction, Recursion, Data abstraction

Algorithms and problem-solving, Object-orientedparadigm

Basic computability theory, Basic computationalcomplexity

Overview of programming languages, Fundamentalprogramming constructs

Evaluation strategies, Software developmentmethodology

Machine level representation of data

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 11/21

Page 27: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

Topics in CSE 211Procedural abstraction, Recursion, Data abstraction

Algorithms and problem-solving, Object-orientedparadigm

Basic computability theory, Basic computationalcomplexity

Overview of programming languages, Fundamentalprogramming constructs

Evaluation strategies, Software developmentmethodology

Machine level representation of data

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 11/21

Page 28: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

Topics in CSE 211Procedural abstraction, Recursion, Data abstraction

Algorithms and problem-solving, Object-orientedparadigm

Basic computability theory, Basic computationalcomplexity

Overview of programming languages, Fundamentalprogramming constructs

Evaluation strategies, Software developmentmethodology

Machine level representation of data

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 11/21

Page 29: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

Topics in CSE 211Procedural abstraction, Recursion, Data abstraction

Algorithms and problem-solving, Object-orientedparadigm

Basic computability theory, Basic computationalcomplexity

Overview of programming languages, Fundamentalprogramming constructs

Evaluation strategies, Software developmentmethodology

Machine level representation of data

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 11/21

Page 30: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

Topics in CSE 211Procedural abstraction, Recursion, Data abstraction

Algorithms and problem-solving, Object-orientedparadigm

Basic computability theory, Basic computationalcomplexity

Overview of programming languages, Fundamentalprogramming constructs

Evaluation strategies, Software developmentmethodology

Machine level representation of data

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 11/21

Page 31: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

Topics in CSE 211Procedural abstraction, Recursion, Data abstraction

Algorithms and problem-solving, Object-orientedparadigm

Basic computability theory, Basic computationalcomplexity

Overview of programming languages, Fundamentalprogramming constructs

Evaluation strategies, Software developmentmethodology

Machine level representation of dataExperiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 11/21

Page 32: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

Topics in CSE 211Breakdown by lectures

Topics and Time Spent on Topics in CSE211 (out 41)Graphs and trees (3) Fundamental programming constructs (3)Algorithms and problem-solving (2) Fundamental data structures (6)Recursion (5) Basic algorithmic analysis (2)Algorithmic strategies (2) Fundamental computing algorithms (4)Basic computability (1) Overview of programming languages (1)Declarations and types (1) Abstraction mechanisms (2)Functional programming (4) Concurrency (2)Software design (1) Software tools and environments (1)History of computing (1)

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 12/21

Page 33: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

CSE 211Course Organization

50% for assignments (25% for weekly individual and25% for five large group assignments)

5% for class participation and attendance (which ismandatory in both sections)

15% for three short examinations after the first threechapters in SICP (5% each)

30% for the comprehensive final exam

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 13/21

Page 34: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

CSE 211Course Organization

50% for assignments (25% for weekly individual and25% for five large group assignments)

5% for class participation and attendance (which ismandatory in both sections)

15% for three short examinations after the first threechapters in SICP (5% each)

30% for the comprehensive final exam

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 13/21

Page 35: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

CSE 211Course Organization

50% for assignments (25% for weekly individual and25% for five large group assignments)

5% for class participation and attendance (which ismandatory in both sections)

15% for three short examinations after the first threechapters in SICP (5% each)

30% for the comprehensive final exam

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 13/21

Page 36: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

CSE 211Course Organization

50% for assignments (25% for weekly individual and25% for five large group assignments)

5% for class participation and attendance (which ismandatory in both sections)

15% for three short examinations after the first threechapters in SICP (5% each)

30% for the comprehensive final exam

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 13/21

Page 37: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

TopicsGroup Assignments

Recursion and basic functions

Recursion and data structures, multiplerepresentations of data types

Pattern matching and tree search

Object-oriented programming

Program interpretation and register machines

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 14/21

Page 38: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

TopicsGroup Assignments

Recursion and basic functions

Recursion and data structures, multiplerepresentations of data types

Pattern matching and tree search

Object-oriented programming

Program interpretation and register machines

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 14/21

Page 39: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

TopicsGroup Assignments

Recursion and basic functions

Recursion and data structures, multiplerepresentations of data types

Pattern matching and tree search

Object-oriented programming

Program interpretation and register machines

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 14/21

Page 40: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

TopicsGroup Assignments

Recursion and basic functions

Recursion and data structures, multiplerepresentations of data types

Pattern matching and tree search

Object-oriented programming

Program interpretation and register machines

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 14/21

Page 41: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

TopicsGroup Assignments

Recursion and basic functions

Recursion and data structures, multiplerepresentations of data types

Pattern matching and tree search

Object-oriented programming

Program interpretation and register machines

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 14/21

Page 42: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

Computing Infrastructure2002: KAWA, XEmacs (on Sun UNIX workstationsonly), execution on the command line, editor withsynatx highlighting

2003/2004: DrSCHEME (available for UNIX, Mac OSX, Windows, Linux), integrated programmingenvironment, synatx highlighting, different languageextensions selectable, error highlighting, debugger,etc.

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 15/21

Page 43: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

Computing Infrastructure2002: KAWA, XEmacs (on Sun UNIX workstationsonly), execution on the command line, editor withsynatx highlighting

2003/2004: DrSCHEME (available for UNIX, Mac OSX, Windows, Linux), integrated programmingenvironment, synatx highlighting, different languageextensions selectable, error highlighting, debugger, etc.

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 15/21

Page 44: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

3 Hypothesesunderwriting CSE 211

CSE 211 is feasible (i.e., to include materials in the firstintroductory course that are intended for the secondaccording CC01 without sacrificing the students’ levelof understanding of other materials)

SCHEME as a programming language eliminatesadvantages and/or disadvantages of students basedon high school programming background

An appropriate programming environment (plussyntactically simple programming language) is criticalto students’ learning and perception of the course

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 16/21

Page 45: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

3 Hypothesesunderwriting CSE 211

CSE 211 is feasible (i.e., to include materials in the firstintroductory course that are intended for the secondaccording CC01 without sacrificing the students’ levelof understanding of other materials)

SCHEME as a programming language eliminatesadvantages and/or disadvantages of students basedon high school programming background

An appropriate programming environment (plussyntactically simple programming language) is criticalto students’ learning and perception of the course

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 16/21

Page 46: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

3 Hypothesesunderwriting CSE 211

CSE 211 is feasible (i.e., to include materials in the firstintroductory course that are intended for the secondaccording CC01 without sacrificing the students’ levelof understanding of other materials)

SCHEME as a programming language eliminatesadvantages and/or disadvantages of students basedon high school programming background

An appropriate programming environment (plussyntactically simple programming language) is criticalto students’ learning and perception of the course

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 16/21

Page 47: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

ResultsNo significant difference with respect to students’perception of overall teaching quality in three offerings

No significant difference in students’ perception ofwhat they learned in CSE211

Most students thought that they learned how to solveproblems well (16/28 in 2002, 20/30 in 2003, and 25/38in 2004), followed by very good skill development(11/28 in 2002, 5/30 in 2003, and 8/38 in 2004)

Attrition rates in CSE211 are very low: 5/36 (2002),3/40 (2003), and 4/48 (2004)

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 17/21

Page 48: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

ResultsNo significant difference with respect to students’perception of overall teaching quality in three offerings

No significant difference in students’ perception ofwhat they learned in CSE211

Most students thought that they learned how to solveproblems well (16/28 in 2002, 20/30 in 2003, and 25/38in 2004), followed by very good skill development(11/28 in 2002, 5/30 in 2003, and 8/38 in 2004)

Attrition rates in CSE211 are very low: 5/36 (2002),3/40 (2003), and 4/48 (2004)

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 17/21

Page 49: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

ResultsNo significant difference with respect to students’perception of overall teaching quality in three offerings

No significant difference in students’ perception ofwhat they learned in CSE211

Most students thought that they learned how to solveproblems well (16/28 in 2002, 20/30 in 2003, and 25/38in 2004), followed by very good skill development(11/28 in 2002, 5/30 in 2003, and 8/38 in 2004)

Attrition rates in CSE211 are very low: 5/36 (2002),3/40 (2003), and 4/48 (2004)

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 17/21

Page 50: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

ResultsNo significant difference with respect to students’perception of overall teaching quality in three offerings

No significant difference in students’ perception ofwhat they learned in CSE211

Most students thought that they learned how to solveproblems well (16/28 in 2002, 20/30 in 2003, and 25/38in 2004), followed by very good skill development(11/28 in 2002, 5/30 in 2003, and 8/38 in 2004)

Attrition rates in CSE211 are very low: 5/36 (2002),3/40 (2003), and 4/48 (2004)

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 17/21

Page 51: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

H1: FeasibilityResults based on student survey (4=disagree,3.2=agree, 2.4=indifferent, 1.6=disagree, 0.8=stronglydisagree

“I feel I have a good overview of different aspects ofCS”: 2.9 (2002) vs. 3.1 2003

“Have good idea of CS topics coming up later in ND02Curr.:” 2.7 (2002) vs. 3.1 (2003)

“I feel my programming skills improved significantly”:2.9 (2002) vs. 3.2 (2003)

“I learned to decompose complex problems intosimpler ones”: 2.9 (2002) vs. 3.1 (2002)

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 18/21

Page 52: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

H1: FeasibilityResults based on student survey (4=disagree,3.2=agree, 2.4=indifferent, 1.6=disagree, 0.8=stronglydisagree

“I feel I have a good overview of different aspects ofCS”: 2.9 (2002) vs. 3.1 2003

“Have good idea of CS topics coming up later in ND02Curr.:” 2.7 (2002) vs. 3.1 (2003)

“I feel my programming skills improved significantly”:2.9 (2002) vs. 3.2 (2003)

“I learned to decompose complex problems intosimpler ones”: 2.9 (2002) vs. 3.1 (2002)

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 18/21

Page 53: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

H1: FeasibilityResults based on student survey (4=disagree,3.2=agree, 2.4=indifferent, 1.6=disagree, 0.8=stronglydisagree

“I feel I have a good overview of different aspects ofCS”: 2.9 (2002) vs. 3.1 2003

“Have good idea of CS topics coming up later in ND02Curr.:” 2.7 (2002) vs. 3.1 (2003)

“I feel my programming skills improved significantly”:2.9 (2002) vs. 3.2 (2003)

“I learned to decompose complex problems intosimpler ones”: 2.9 (2002) vs. 3.1 (2002)

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 18/21

Page 54: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

H1: FeasibilityResults based on student survey (4=disagree,3.2=agree, 2.4=indifferent, 1.6=disagree, 0.8=stronglydisagree

“I feel I have a good overview of different aspects ofCS”: 2.9 (2002) vs. 3.1 2003

“Have good idea of CS topics coming up later in ND02Curr.:” 2.7 (2002) vs. 3.1 (2003)

“I feel my programming skills improved significantly”:2.9 (2002) vs. 3.2 (2003)

“I learned to decompose complex problems intosimpler ones”: 2.9 (2002) vs. 3.1 (2002)

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 18/21

Page 55: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

H1: FeasibilityResults based on student survey (4=disagree,3.2=agree, 2.4=indifferent, 1.6=disagree, 0.8=stronglydisagree

“I feel I have a good overview of different aspects ofCS”: 2.9 (2002) vs. 3.1 2003

“Have good idea of CS topics coming up later in ND02Curr.:” 2.7 (2002) vs. 3.1 (2003)

“I feel my programming skills improved significantly”:2.9 (2002) vs. 3.2 (2003)

“I learned to decompose complex problems intosimpler ones”: 2.9 (2002) vs. 3.1 (2002)Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 18/21

Page 56: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

H2: Computing BackgroundIn 2002 and 2003 about 50% (15 out of 31 and 19 outof 37) had prior exposure to C++

Only 40% (18 out of 45) in 2004 had C++ experience(and 25/48 had no programming experiencewhatsoever)

None of the students in all three offerings had priorexperience with SCHEME

Correlations between prior programming experienceand final grade (2004): r = .11

Correlating C++ and final grade (2004): r = .18

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 19/21

Page 57: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

H2: Computing BackgroundIn 2002 and 2003 about 50% (15 out of 31 and 19 outof 37) had prior exposure to C++

Only 40% (18 out of 45) in 2004 had C++ experience(and 25/48 had no programming experiencewhatsoever)

None of the students in all three offerings had priorexperience with SCHEME

Correlations between prior programming experienceand final grade (2004): r = .11

Correlating C++ and final grade (2004): r = .18

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 19/21

Page 58: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

H2: Computing BackgroundIn 2002 and 2003 about 50% (15 out of 31 and 19 outof 37) had prior exposure to C++

Only 40% (18 out of 45) in 2004 had C++ experience(and 25/48 had no programming experiencewhatsoever)

None of the students in all three offerings had priorexperience with SCHEME

Correlations between prior programming experienceand final grade (2004): r = .11

Correlating C++ and final grade (2004): r = .18

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 19/21

Page 59: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

H2: Computing BackgroundIn 2002 and 2003 about 50% (15 out of 31 and 19 outof 37) had prior exposure to C++

Only 40% (18 out of 45) in 2004 had C++ experience(and 25/48 had no programming experiencewhatsoever)

None of the students in all three offerings had priorexperience with SCHEME

Correlations between prior programming experienceand final grade (2004): r = .11

Correlating C++ and final grade (2004): r = .18

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 19/21

Page 60: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

H2: Computing BackgroundIn 2002 and 2003 about 50% (15 out of 31 and 19 outof 37) had prior exposure to C++

Only 40% (18 out of 45) in 2004 had C++ experience(and 25/48 had no programming experiencewhatsoever)

None of the students in all three offerings had priorexperience with SCHEME

Correlations between prior programming experienceand final grade (2004): r = .11

Correlating C++ and final grade (2004): r = .18

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 19/21

Page 61: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

H3: ProgrammingEnvironment

Most differences in student ratings between 2002 &2003

Since all course materials were almost identical(including assignments and exams), the differencemust have come from the programming environment

“The SCHEME implementation worked well for me:”2.4 (2002) vs. 2.9 (2003) p=.005

“The programming environment worked well for me:”2.5 (2002) vs. 3.2 (2003) p=.004

“I see the utility of SCHEME as an instructionallanguage”: 2.3 (2002) vs. 2.8 (2003)

Course content appropriate: 2.5 (2002) vs. 2.9 (2003),p=.049

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 20/21

Page 62: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

H3: ProgrammingEnvironment

Most differences in student ratings between 2002 &2003

Since all course materials were almost identical(including assignments and exams), the differencemust have come from the programming environment

“The SCHEME implementation worked well for me:”2.4 (2002) vs. 2.9 (2003) p=.005

“The programming environment worked well for me:”2.5 (2002) vs. 3.2 (2003) p=.004

“I see the utility of SCHEME as an instructionallanguage”: 2.3 (2002) vs. 2.8 (2003)

Course content appropriate: 2.5 (2002) vs. 2.9 (2003),p=.049

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 20/21

Page 63: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

H3: ProgrammingEnvironment

Most differences in student ratings between 2002 &2003

Since all course materials were almost identical(including assignments and exams), the differencemust have come from the programming environment

“The SCHEME implementation worked well for me:”2.4 (2002) vs. 2.9 (2003) p=.005

“The programming environment worked well for me:”2.5 (2002) vs. 3.2 (2003) p=.004

“I see the utility of SCHEME as an instructionallanguage”: 2.3 (2002) vs. 2.8 (2003)

Course content appropriate: 2.5 (2002) vs. 2.9 (2003),p=.049

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 20/21

Page 64: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

H3: ProgrammingEnvironment

Most differences in student ratings between 2002 &2003

Since all course materials were almost identical(including assignments and exams), the differencemust have come from the programming environment

“The SCHEME implementation worked well for me:”2.4 (2002) vs. 2.9 (2003) p=.005

“The programming environment worked well for me:”2.5 (2002) vs. 3.2 (2003) p=.004

“I see the utility of SCHEME as an instructionallanguage”: 2.3 (2002) vs. 2.8 (2003)

Course content appropriate: 2.5 (2002) vs. 2.9 (2003),p=.049

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 20/21

Page 65: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

H3: ProgrammingEnvironment

Most differences in student ratings between 2002 &2003

Since all course materials were almost identical(including assignments and exams), the differencemust have come from the programming environment

“The SCHEME implementation worked well for me:”2.4 (2002) vs. 2.9 (2003) p=.005

“The programming environment worked well for me:”2.5 (2002) vs. 3.2 (2003) p=.004

“I see the utility of SCHEME as an instructionallanguage”: 2.3 (2002) vs. 2.8 (2003)

Course content appropriate: 2.5 (2002) vs. 2.9 (2003),p=.049

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 20/21

Page 66: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

ConclusionFunctional-first plus additional topics (e.g.,OO-programming) feasible in first CSE course

No effect of prior programming background on coursegrades (given the use of SCHEME)

Programming environments make a big difference instudent’s perceptions of the course and leads to highertime commitments

BUT: no significant difference between students’performance on the finals (64.6/100 in 2002 and64.8/100 in 2003)

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 21/21

Page 67: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

ConclusionFunctional-first plus additional topics (e.g.,OO-programming) feasible in first CSE course

No effect of prior programming background on coursegrades (given the use of SCHEME)

Programming environments make a big difference instudent’s perceptions of the course and leads to highertime commitments

BUT: no significant difference between students’performance on the finals (64.6/100 in 2002 and64.8/100 in 2003)

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 21/21

Page 68: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

ConclusionFunctional-first plus additional topics (e.g.,OO-programming) feasible in first CSE course

No effect of prior programming background on coursegrades (given the use of SCHEME)

Programming environments make a big difference instudent’s perceptions of the course and leads to highertime commitments

BUT: no significant difference between students’performance on the finals (64.6/100 in 2002 and64.8/100 in 2003)

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 21/21

Page 69: Experiences and Results from three Years of CSE 211 ...nr/cs257/archive/matthias-scheutz/fie...Outline Pre-text of CSE at Notre Dame Structure of CSE 211 ΠFundamentals of Computing

ConclusionFunctional-first plus additional topics (e.g.,OO-programming) feasible in first CSE course

No effect of prior programming background on coursegrades (given the use of SCHEME)

Programming environments make a big difference instudent’s perceptions of the course and leads to highertime commitments

BUT: no significant difference between students’performance on the finals (64.6/100 in 2002 and64.8/100 in 2003)

Experiences and Results from three Years of CSE 211 “Fundamentals of Computing I” – 21/21