Presentation is loading. Please wait.

Presentation is loading. Please wait.

Questions to Enhance Active Learning in Computer Science Instruction J. Philip East & Mark Fienup Computer Science Department University of Northern Iowa.

Similar presentations


Presentation on theme: "Questions to Enhance Active Learning in Computer Science Instruction J. Philip East & Mark Fienup Computer Science Department University of Northern Iowa."— Presentation transcript:

1 Questions to Enhance Active Learning in Computer Science Instruction J. Philip East & Mark Fienup Computer Science Department University of Northern Iowa

2 Questions to Enhance Active Learning in Computer Science Instruction NECC Philip East and Mark Fienup 2Introduction I’m a colleague—let’s talkI’m a colleague—let’s talk Initial plan was to focus on examples, but...Initial plan was to focus on examples, but... The plan isThe plan is –discuss rationale, educational goals, etc. –generalize ideas about questioning for various goals (examples included but we’ll spend little time on them) –discuss process suggestions Referring to programming & “fluency” coursesReferring to programming & “fluency” courses

3 University of Northern Iowa Questions to Enhance Active Learning in Computer Science Instruction NECC Philip East and Mark Fienup 3 Motivation & Rationale Reduce the amount of lecturing (“demonstration” isn’t much better)Reduce the amount of lecturing (“demonstration” isn’t much better) Attempt to determine student understanding of the material being consideredAttempt to determine student understanding of the material being considered Questioning can, but does not always, result in students actively engaged in the content – it is not a panaceaQuestioning can, but does not always, result in students actively engaged in the content – it is not a panacea

4 University of Northern Iowa Questions to Enhance Active Learning in Computer Science Instruction NECC Philip East and Mark Fienup 4 Some Instructional Goals Provide practice or demonstration of skillProvide practice or demonstration of skill Connect to student experienceConnect to student experience Motivate/justify contentMotivate/justify content Determine student “understanding”Determine student “understanding” Create cognitive dissonance (!)Create cognitive dissonance (!) Knowledge recall (?)Knowledge recall (?) (and others ?)(and others ?)

5 University of Northern Iowa Questions to Enhance Active Learning in Computer Science Instruction NECC Philip East and Mark Fienup 5 Skill Practice or Demonstration What, How, etc. Goal is to provide students with practice or to have them demonstrate competenceGoal is to provide students with practice or to have them demonstrate competence Can do so via:Can do so via: –“board” work –oral “how to” questions –quizzes (grade in class) –in-lab tasks ProgrammingProgramming –trace the given code –revise given code to... –produce code to... –develop test data for... –design a module to … FluencyFluency –use multiple OSs –use “new” applications –identify relevant technical & social features of... (scenario) UNIUNI

6 University of Northern Iowa Questions to Enhance Active Learning in Computer Science Instruction NECC Philip East and Mark Fienup 6 Skill Practice or Demonstration Question Examples – Programming Use the IDE (or OS & editor) to copy, compile, execute a programUse the IDE (or OS & editor) to copy, compile, execute a program Debug (syntax errors in) a programDebug (syntax errors in) a program What does the given code do? [three levels: trace; description of process in words rather than code or pseudo-code; general statement]What does the given code do? [three levels: trace; description of process in words rather than code or pseudo-code; general statement] Debug (logic errors in) a given code segmentDebug (logic errors in) a given code segment Document a given module, i.e., purpose (don’t repeat code), preconditions, post conditions, caveats, etc.Document a given module, i.e., purpose (don’t repeat code), preconditions, post conditions, caveats, etc. Develop a test data suite for a given problem or codeDevelop a test data suite for a given problem or code Provide code for a given algorithmProvide code for a given algorithm Determine the data representation for a given problem [i.e., ADT or class usage and/or definitions]Determine the data representation for a given problem [i.e., ADT or class usage and/or definitions] Develop an algorithm for a given task [i.e., a small module]Develop an algorithm for a given task [i.e., a small module] What tasks are needed to solve …? Does order matter? Any repetition?What tasks are needed to solve …? Does order matter? Any repetition?

7 University of Northern Iowa Questions to Enhance Active Learning in Computer Science Instruction NECC Philip East and Mark Fienup 7 Skill Practice or Demonstration Question Examples – Fluency Create a directory and copy a file to it from across a networkCreate a directory and copy a file to it from across a network Set network, mail, etc. preferencesSet network, mail, etc. preferences Plan an organization. Implement it. Report on the implementation.Plan an organization. Implement it. Report on the implementation. Independently (to extent possible) extend skill to:Independently (to extent possible) extend skill to: –unknown OS –different brand of known application (e.g., Lotus’ suite vs MS Office vs StarOffice) –unknown feature(s) of a known application (e.g., in word processing: tables, mail merge, drawing, …) –unknown application Customize window content/appearance, preferences, etc. of an applicationCustomize window content/appearance, preferences, etc. of an application Identify stakeholders in a given societal issue (and their potential conflicts of interest and biases)Identify stakeholders in a given societal issue (and their potential conflicts of interest and biases) Suggest a solution to a given societal issue (arguing pros & cons)Suggest a solution to a given societal issue (arguing pros & cons)

8 University of Northern Iowa Questions to Enhance Active Learning in Computer Science Instruction NECC Philip East and Mark Fienup 8 Connect to Student Experience Goal: relate current content to expected prior student understandingGoal: relate current content to expected prior student understanding Can do so via:Can do so via: –selection of conceptually familiar tasks & “reminder” questions –planned progression of topics & “reminder” questions –discussion of experiences –advance organizers (course-level and topic level)

9 University of Northern Iowa Questions to Enhance Active Learning in Computer Science Instruction NECC Philip East and Mark Fienup 9 Connect to Student Experience Programming ExamplesProgramming Examples –How would you ask a question to see if both of two situations were true? If either of the two were true? If neither were true? –What does the “2” in 1,298 mean? The “1” in ? –How you sort a set of numbers listed on individual slips of paper? –What happens when values are not explicitly initialized? Fluency ExamplesFluency Examples –What are computers used to do? –What is an icon? –Why might someone care if the grocery store recorded your purchases? –Have you ever been someplace you didn’t want you mother, boy/girlfriend to know?

10 University of Northern Iowa Questions to Enhance Active Learning in Computer Science Instruction NECC Philip East and Mark Fienup 10 Motivate or Justify Content Goal: enhance student “involvement” with current contentGoal: enhance student “involvement” with current content Can do so via:Can do so via: –determining and following student preferences –organizing content order –examples selection –discussion of experiences –requests to justify a choice

11 University of Northern Iowa Questions to Enhance Active Learning in Computer Science Instruction NECC Philip East and Mark Fienup 11 Motivate or Justify Content Programming ExamplesProgramming Examples –What would you do if a program needed to do the same thing twice? Three times? 100 times? –How is 10 cents represented in our programming language? –How does an optimist plan to build the Great Wall of China? –How do you know (or do) …? Fluency ExamplesFluency Examples –When did Web usage become widespread? What will be the next such ubiquitous application? How will you learn it? –Have you ever been told that the computer makes us do it this way?

12 University of Northern Iowa Questions to Enhance Active Learning in Computer Science Instruction NECC Philip East and Mark Fienup 12 Determine Student Understanding What, How, etc. Goal is to get inside students heads (see what/how they understand)Goal is to get inside students heads (see what/how they understand) More general than skill practiceMore general than skill practice Can do so via:Can do so via: –oral questions –small group tasks –5-minute papers ProgrammingProgramming –statement semantics –run-time environment –data representation –design considerations –testing & test data –... FluencyFluency –operation of CPU, Internet, viruses, search engines, … –issue plusses and minuses –risk analyses –... UNIUNI

13 University of Northern Iowa Questions to Enhance Active Learning in Computer Science Instruction NECC Philip East and Mark Fienup 13 Determine Student Understanding Question Examples – Programming Describe the run-time environment at a given point in a program.Describe the run-time environment at a given point in a program. Where would you look to correct the error message, “stack overflows heap”?Where would you look to correct the error message, “stack overflows heap”? What machine code does the same thing as a for loop?What machine code does the same thing as a for loop? Diagram the form and content of data stored as a result of the following code being executed … [e.g., linked list search & insertion]Diagram the form and content of data stored as a result of the following code being executed … [e.g., linked list search & insertion] What test data should be used for the given task?What test data should be used for the given task? Produce code to … [e.g., dangling else situation, complex condition, if-else with some common code, dual condition while loop]Produce code to … [e.g., dangling else situation, complex condition, if-else with some common code, dual condition while loop] Refactor given code … [e.g., to make it more readable, to enhance cohesion]Refactor given code … [e.g., to make it more readable, to enhance cohesion] Provide data representation for …Provide data representation for … Critique the following … [e.g., code, design, data representation, test data]Critique the following … [e.g., code, design, data representation, test data] Describe a particular ADT or class discussing its operations and useDescribe a particular ADT or class discussing its operations and use

14 University of Northern Iowa Questions to Enhance Active Learning in Computer Science Instruction NECC Philip East and Mark Fienup 14 Determine Student Understanding Question Examples – Fluency Diagram a computer and describe the machine cycleDiagram a computer and describe the machine cycle How does a Web page get from across the country to you?How does a Web page get from across the country to you? How is the Web like a database? How is it different?How is the Web like a database? How is it different? How/when is an message at risk for unintended access?How/when is an message at risk for unintended access? Describe data representation of … [e.g., integers, fractional values, sound, pictures]Describe data representation of … [e.g., integers, fractional values, sound, pictures] Who are the stakeholders with respect to routine monitoring of electronic communication by the government? What are their concerns?Who are the stakeholders with respect to routine monitoring of electronic communication by the government? What are their concerns? What are the basic (machine-level) capabilities of computers?What are the basic (machine-level) capabilities of computers? What are the general capabilities of computers? [any problem for which we can prepare a digital representation and appropriate manipulations]What are the general capabilities of computers? [any problem for which we can prepare a digital representation and appropriate manipulations] What can computers not do? Why?What can computers not do? Why?

15 University of Northern Iowa Questions to Enhance Active Learning in Computer Science Instruction NECC Philip East and Mark Fienup 15 Create Cognitive Dissonance Goal: surprise studentsGoal: surprise students Programming ExamplesProgramming Examples –What is 0.1 (base 10) in binary? –Write a program that repeatedly adds 1,000 to a total and displays the result. What happens? –Sort 1,000 items with bubble sort. Sort same items in a direct access file. What happens? Fluency ExamplesFluency Examples –What can a computer not do? –I have a hypothesis: long division using pencil and paper does not teach the concept of division. [… explanation]. What is wrong with my hypothesis?

16 University of Northern Iowa Questions to Enhance Active Learning in Computer Science Instruction NECC Philip East and Mark Fienup 16 An Aside—Receiving Questions I like to address questions that students haveI like to address questions that students have –gives insight about their understanding (if I pay attention) –other students may have the same question –at least one student will be paying attention But,But, –can deflect attention from planned content –sometimes I rely too heavily on it

17 University of Northern Iowa Questions to Enhance Active Learning in Computer Science Instruction NECC Philip East and Mark Fienup 17 Teaching Process Suggestions Read & think about questions & questioningRead & think about questions & questioning PlanPlan –Course – big ideas, content goals, use of groups, … –Unit – initial questions; follow up responses & questions In Class – don’t hurry, wait & thinkIn Class – don’t hurry, wait & think Reflect – daily, after unit, after courseReflect – daily, after unit, after course

18 University of Northern Iowa Questions to Enhance Active Learning in Computer Science Instruction NECC Philip East and Mark Fienup 18 Final Thoughts Learning is not a spectator sport? Work to get students actively involved.Learning is not a spectator sport? Work to get students actively involved. If you decide to move in this direction:If you decide to move in this direction: –Don’t go whole hog (take baby steps) –Be patient with yourself –Don’t expect immediate success Thank youThank you


Download ppt "Questions to Enhance Active Learning in Computer Science Instruction J. Philip East & Mark Fienup Computer Science Department University of Northern Iowa."

Similar presentations


Ads by Google