State of CSI Mikhail Nesterenko CS Faculty Retreat May 3, 2013.

13
State of CSI Mikhail Nesterenko CS Faculty Retreat May 3, 2013

Transcript of State of CSI Mikhail Nesterenko CS Faculty Retreat May 3, 2013.

Page 1: State of CSI Mikhail Nesterenko CS Faculty Retreat May 3, 2013.

State of CSI

Mikhail Nesterenko

CS Faculty RetreatMay 3, 2013

Page 2: State of CSI Mikhail Nesterenko CS Faculty Retreat May 3, 2013.

Outline

• student performance data• challenges and philosophy• organization• evaluation• topics• components

– lab– lecture

• recent changes and future trends

2

Page 3: State of CSI Mikhail Nesterenko CS Faculty Retreat May 3, 2013.

taught by Mikhail

Student Performance, Long Term

3

S02 F02 S03 F03 S04 F04 S05 F05 S06 F06 S07 F07 S07 F08 S09 F09 S10 F10 S11 F11 S12 F120.0%

10.0%

20.0%

30.0%

40.0%

50.0%

60.0%

70.0%

80.0%

90.0%

100.0%

56.8%

74.7%74.7%

55.6%

62.5%

51.1%

57.8%

36.1%

55.3%

43.3%

62.0%

40.0%

62.9%62.9%

72.0%

45.7%

58.8%

51.7%

74.3%72.5%

43.4%

56.8%

Success Rate grade C above

no discernible pattern or trendthe “usual” success rate is approx. 55-60%

Page 4: State of CSI Mikhail Nesterenko CS Faculty Retreat May 3, 2013.

Student Performance, Recent

4

Success Rate

1 2 30.0%

10.0%

20.0%

30.0%

40.0%

50.0%

60.0%

70.0%

80.0%

90.0%

100.0%

0.196721311475410.277777777777779

0.230769230769231

0.0819672131147541

0.1527777777777780.1868131868131870.0655737704918033

0.0277777777777779 0.065934065934066

0.098360655737705

0.180555555555556 0.131868131868132

0.557377049180328

0.361111111111111 0.384615384615385

34.4%

45.8%48.4%

succeeded

F/W/dropped

C-/D

C+/C

B+/B/B-

A/A-

accumulationof repeatstudents

depressedrate?

backup lab instructors introduced,

rate improved?

success rate is smaller than in prev. slidesince students who dropped the course in the first 2 weeks are considered

Page 5: State of CSI Mikhail Nesterenko CS Faculty Retreat May 3, 2013.

Setup and Challengesorganization• 4 – 6 sections of up 20 students (50-90 students)

– 2 lectures + 1 lab session a week (lecture session combined, separate lab session for each section)

• 1 lecturer + 2-3 TAs– TA conducts labs in 2 sections, backs up two more sections, grades

labs, quizzes

challenges• diverse background of incoming students

– some straight from high school: may lack work ethics, motivation, discipline; some took AP programming courses in college

– evening section: may be distracted by work/family obligations, some may have programming experience at work, possibly in a different language

• need to keep everyone interested, accommodate different learning styles • need to ensure uniform set of basic learned skills

5

Page 6: State of CSI Mikhail Nesterenko CS Faculty Retreat May 3, 2013.

Evaluation• 2 exams (midterm, final)

100 points each, non-cumulativegraded by lecturer

• 4 quizzes (worst score dropped to eliminate need for makeups) – 10 points each

• 13 labs – 10 points eachgraded by TA

• participation (or extra project) – 10 points

6

54.1%

8.1%

35.1%

2.7%grade weight

exams quizzes

labs participation

reasons• large exam weight – keeps semester grade under control of instructor, makes it more

consistent• TAs grade labs differently, students may get help doing labs should not weigh heavily

• participation – keeps students engaged during lectures• quizzes – easy to grade, keeps students on track with studies between tests• a person finishing with C should be proficient enough to succeed in CSII

• note that this C may be obtained through labs or exam have to balance the weight

Page 7: State of CSI Mikhail Nesterenko CS Faculty Retreat May 3, 2013.

Topics• basic, covered by a lab, students need to have “hands on” proficiency

1. First Program2. Branching3. Looping4. Predefined Functions5. Programmer-Defined Functions, Call-by-Value, Multiple Files6. Call-by-Reference, Arrays7. Strings, File I/O8. Structures9. Classes10. Pointers, Dynamic Memory Allocation11. Objects with Dynamically Allocated Members (constructor, destructor, copy constr.)12. Vectors13. Multdimentional Arrays, Vectors of Vectors

• come at end of semester (due to grading delay), need to have “heard of” proficiency– recursion– namespaces– diagrams (UML), automatic code documentation systems

7

Page 8: State of CSI Mikhail Nesterenko CS Faculty Retreat May 3, 2013.

Organization

– lecture quickly followed by a lab then individual work• lab assignment is such that it is often not done in lab time – have

to be finished at home

– two lectures + one lab per week• first lecture introduces topic• lab backs it up • second lecture reviews• the “home” part of the lab completes the cycle

– each component is important • missed lecture – have to repeat to each student at the lab • “overcoached” lab assignment – no learning

– additional tools : mailing list with archive (forward answers to student questions there), slides, program examples, lab assignments are on the web

8

Page 9: State of CSI Mikhail Nesterenko CS Faculty Retreat May 3, 2013.

Lab• Windows, Visual Studio IDE, one lab in Unix&g++, code submitted to repository

– we encourage to set up tools at home for individual work. Half the students come to lab with own laptops

• lab attendance – 2 points• lab deadline – 1 week (first 7, “easy” labs 2 points off after 4 days)• lab assignment is on the web, opened a week in advance (students may study or attempt it

before lab)• assignment (e.g. programmer defined functions) usually contains two parts

1. basic part (e.g. code BMR for a man/woman – simple formula – and calculate number of doughnuts to be consumed). Basic part contains explanation of IDE feature (e.g. observing program stack). Students have to learn and demo to lab instructor (for participation points)

2. extended part (e.g. a menu of functions printing geometric shapes)– assignment usually contains references to code examples studied in class, hints and

pseudocode

• lab starts with lead TA explaining the lab assignment, then both TAs start helping students• weekly meetings with TAs to introduce the next lab, get their feedback on previous. Good idea

to have TAs code the lab– might be helpful for lecture inst. to attend one lab session per week to gauge

performance

9

Page 10: State of CSI Mikhail Nesterenko CS Faculty Retreat May 3, 2013.

Lectures• first lecture - new material

– explain material with slides– demonstrate with examples in Visual Studio– time allows – explain the lab

• second lecture – material review– questions on slides– examples on the board– more detailed discussion of the lab

10

Page 11: State of CSI Mikhail Nesterenko CS Faculty Retreat May 3, 2013.

Participation• issues

– students tune out during lecture if not engaged

– understanding varies by semester, need feedback

– students skip lecture

• simply asking students engages only a few better performing ones

• each lecture has a slide with a list of simple questions

• put up on next (review) lecture• go through all students using cards

– if answer – give plus– if not – skip

successful answers scaled to 10 points at end of semester

• motto: students who show up for most classes and answer most questions get full credit

11

Page 12: State of CSI Mikhail Nesterenko CS Faculty Retreat May 3, 2013.

Recent Changes and Trends• this semester’s changes

– Multidimensional Array/Vectors of Vectors lecture/lab replaced Exceptions – more appropriate for CSI

– removed Bit Manipulation lecture – replaced with documentation/diagrams – more appropriate for CSI

– removed Abstraction, Stubs/Wrappers lecture – replaced with basic materials review– provided sample midterm exam – improved exam preparation, had to rewrite

midterm– added a part to Parameter Passing lab that uses swap() function – good illustration of

pass-by-value (important concept)– added pointer & iterator arithmetic other: standardized, streamlined and corrected labs, lectures, slides; changed labs a bit

to eliminate code reuse from previous semesters

• longer- term trend – move towards focusing and drilling specific basic tasks – in effect the same skill, say nested loops, is taught then practiced then tested on– more students succeed and learn basic programming skills– students learn less of critical thinking, independent problem solving (burden shifts to

downstream courses)

12

Page 13: State of CSI Mikhail Nesterenko CS Faculty Retreat May 3, 2013.

Future Changes and Wish List

next semester• switch all examples to pre-increment (recent style); import specific names from std

rather than using namespace std;• start coordinating midterm and that week’s lab – to smooth load• cover incremental code development, use structures/classes lab to illustrate it –

simplifies harder labs• fold Namespace material into blocks/scopes lecture

wish list• would be nice to have two midterms but too much grading• crate a list of programming techniques to be trained (e.g. nesting loops, finding

minima, loop with break in the middle) and reorganize lectures/labs around them • replace the textbook: Savitch is wordy, has some awkward code, no-self study

questions

13