Click here to load reader

Mark Guzdial School of Interactive Computing College of Computing Georgia Institute of Technology Teaching High School CS Teachers: Learning CS Without

Embed Size (px)

Citation preview

Teaching High School CS Teachers: Learning CS Without Hours in Front of Eclipse

Mark GuzdialSchool of Interactive ComputingCollege of ComputingGeorgia Institute of TechnologyTeaching High School CS Teachers: Learning CS Without Hours in Front of Eclipse

Big Question: What is a better medium for self-paced computer science learning than a paper book?

Story:We do not have enough high school teachers to create undergraduate CS success. NSFs goal: Computer Science: Principles => CS10KOptions to achieve the CS10K goals:#1. Use technology instead of teachers (Patterson & Kay)#2. Teach in-service teachers CS using distance technology.Idea: Consider the use of worked examples, informed by Goels SBF Model of design knowledge.The choice of worked examples and measuring learning comes from cognitive tutors.Afterword: The Need for CommunityUndergraduate CS success depends onhigh school CS existenceStudents negative perceptions of computer science are well-established by high school years (Yardi & Bruckman, 2007; ACM & WGBH Image Study)Claim: Almost any high school computer science is an improvement.The vast majority (>80%) of Georgia students who enter undergraduate CS had some high school experience.But there are simply not enough high school CS teachers to go around.In US, 2000 AP CS high school teachers, for some 42K high schools.http://nces.ed.gov/programs/digest/d09/tables/dt09_086.asp30,648 public schools; 11,870 private; 850,750 kids in secondary schools, 2007-20084

NSFs Goal: CS:P => CS10KFirst, create a new, high-quality course that attracts students and can be taught nationally.http://www.csprinciples.org

Secondly, have 10,000 teachers ready and able to teach this course in 10,000 schools by 2015: CS10KHow do we get there?From 2,000 to 10,000 teachers in four years?Where are we going to get 8,000 more teachers?

Two options in Teacher Education:Pre-serviceIn-serviceClaimsClaim: They are not going to come from pre-service teacher education.Uteach at U-T@Austin has offered pre-service CS ed for 15 years, with only 7 graduates.Purdue has a program, with only one teacher enrolled.Using pre-service to ramp-up an area doesnt work: U.Ga. storyClaim: We have to do in-service CS teacher education a whole lot better.Columbus State in Georgia offers in-service CS teacher endorsement: First student dropped out in first semester, second student in her first semester.

They dont have the pre-requisite skills; they cant spend hours in front of a computer.11Traditional CS Pedagogy is Wrong for These StudentsTraditional pattern:Lecture, book-reading, maybe some live-coding.Occasional quizzes/exams.Go solve this problem that is related but beyond anything weve done in class.=> Hours in front of EclipseOption 1: Dont Use TeachersDave Patterson (Berkeley) and Alan Kay: Use Technology Instead.My belief that the K-12 CS education problem is practically unsolvable for the next 10-20 years in the US is based on:No room in the high-school curriculum for CS.Low pay for new teachers.Changing education policy is hard and takes a long time, and there is little reason to believe you will succeed.This is a state by state, school district by school district level of change involving many advocacy groups. Most proposed solutions dont scale.There are roughly 50,000 high schools and 80,000 elementary schools and middle schools in the US. Whatever you are proposing, think about the time scale your innovation would take to affect 10% of these schools.

http://computinged.wordpress.com/2010/06/25/dave-patterson-on-fixing-high-school-cs-education/ These are all real and significant problems. #1 and #3 may be solved by APCS. #2 is particular significant for Operation: Reboot.13Could we do this?Best successful large-scale example is probably Open University UK.Very expensive courses, e.g., 2.5M pounds but amortized over thousands of students.Largest single budget item: MentorsSomething you can tell me about:OLI CS Classes?But could we teach all of CS: Principles like this? For high school students? And is that a long-term solution?

Option #2: Figure out a new way to teach high school CS teachersGiven that the focus is in-service teachers:It must be distance education to fit with schedules.Learning must happen primarily in 20-60 minute chunks.What could we use from Cognitive Tutors here?Software-develop problem-solving skills may not be the desired goal-state.What is the knowledge that teachers need to be successful?Knowledge of content, PCK, ability to critique and guide students, etc.Maybe the problem-solving task of importance is identifying and remediating unproductive mental models?Ability to map to several different tools is critical:Scratch, Alice, Excel, Python.Expensive (even with CTAT) to build problem sets for all these tools.Idea: Examples + Exercises + EvaluationCould we teach the knowledge, apart from the problem-solving, less expensively using a worked examples approach (Sweller & Cooper, 1985)?We know how to construct examples a lot better now than then (e.g., Atkinson, Derry, Renkl, & Wortham, 2000).Only Pirolli (with Recker) explored worked examples in CS (until Leigh Ann publishes her work).A LOT more examples than we normally teach, 8 examples for each of 7 SIMPLE primitives just as part of the training.Examples of What?Just look at a lot of code?What are pieces of CS knowledge?Suggestion: Structure, Behavior, and Function (Goel)Successful use (with Hmelo) for teaching biological systems (e.g., aquaria, respiratory systems).

Learning CS as SBFStructure: CodeThats significant and not simple for students (Jadud, 2006)Function: PurposeStudents generally cant figure out purpose from code (BRACELET in Australasia)Behavior: All novices in all disciplines struggle with behavior.Exercises:Conveying and Practicing BehaviorProgram visualization systems demonstrate behavior that results from structure.Meta analysis of studies suggest that the lack of practice leads to a lack of learning (Hundhausen, Douglas, & Stasko, 2002)Suggestion:UUHistle + CTAT?

Imagining a New CS PedagogyStudents review many worked examples.With frequent exercises designed to test knowledge for teacher as well as students needs (Karpicke & Blunt, 2011).They practice: assembling structure (e.g., programming code), tracing behavior, with known function (context),in small-granularity chunks.Research QuestionsWould an approach of CS worked examples plus practice lead to fewer detail errors when faced with a programming task?Does a worked example approach that emphasizes mathematics underpinnings provide the mathematical background that in-service teachers lack when faced with programming classes?Longer-term: Because there are multiple interlocking pieces, they might be constructed as a crowdsourced process. Could this be done cheaply?

Evaluation: How would we know if this was working?What part of cognitive tutors is most responsible for the learning gains:The decomposition of the domain into pieces, and tracking learning (e.g., error rates) on those pieces?The tracing of the behavior through the problem solving?Could we track student learning through examples like tutors track student learning across problem-solving activities?We track the concepts in the examples.We track which examples are seen by which students.We assign credit/blame to examples based on performance on practice exercises.Summary: Examples + Exercises + EvaluationWorked examples might be studied in 20-60 minute chunks.We replace multi-hour sessions in front of an IDE with many smaller exercises.We take inspiration from SBF Models to inform the kinds of examples and the kinds of exercises.Hypothesis: Worked examples + exercises might reduce student effort/time when faced with an IDE.We evaluate the success of examples by tracking student progression and use credit/blame assignment based on exercise performance.Afterword: How do we end up with more than 5K teachers in 2020?50% of STEM teachers leave in first five years.Identifying as a teacher or kind-of teacher has an important impact on retention and quality of teaching, e.g., seeking professional developmentBut primary factor influencing teacher identity: CertificationSo how do we create a sense of identity for high school CS teachers?Community (Ni, 2011)

DCCE. Creating community and creating leaders.26