Prerequisite: CIS110 or CIS120 or another college-level computer science course or permission of instructor
Instructors: Jean Griffin, SEAS Senior Lecturer, firstname.lastname@example.org and Quinn Burke, GSE EdD Candidate, email@example.com
Satisfies in SEAS: Technology in Business and Society, or Free Elective
Class meets 1.5 hours TBA. Penn students and instructors meet weekly at a mutually agreed upon time.
Recitation: Penn students choose one:
Wed 1-3:30 Computing workshops for Science Leadership Academy high school students at the Franklin Institute
Tue/Thur 2-3:15 Computing class at University City High School
Summer Session I, 2011:
Weeks 1-4: Tue/Thur 10am-12pm. Penn students and instructors meet (without high school students).
Weeks 5-6: Mon-Fri. Penn students and instructors host a computing camp for Philadelphia high school students called Boot Up!.
Students reinforce and expand their knowledge of computer science by teaching pre-college students in a course, camp, or workshop (outreach activities vary per semester) and by developing AP-level and/or pre-AP-level educational materials. In addition to providing a valuable community service, students learn about educational theories, software engineering principles, technology design, and computer science education practices while developing technical expertise and leadership experience. On an ongoing basis, EAS285 participants create educational software and modules which are shared with educators beyond the university's walls. These contributions and activities are in line with Penn's Compact and are funded by an NSF "BPC" (broadening participation in computing) grant.
Students learn about theories of education, software engineering principles, and technology design through reading and discussion and by writing reflection papers (see the EAS285 reading list). An individualized plan is made for each studet to acquire or strengthen their technical skills in several areas(see the Technical Skills Acquisition section below). Students receive "teacher prep" coaching about classroom management and codes of coduct, and give peer-reviewed practice presentations. Students present or co-present lessons/activities designed by an experienced educator before potentially delivering lessons of their own design. Students learn about computer science education practices (see the EAS285 reading list) and analyze existing curricula in preparation for designing and developing new lessons. Students apply what they have learned from educational theory (e.g. scaffolding, feedback, authenticity, transfer, communities of learners), software engineering (e.g. modularity, reusability, scalability, testing, piloting, evaluation), computer science education practices (e.g. "unplugged" computer science, microworlds, media computation, peer-led team learning) and technology design (e.g. "knowing the client", usability) by designing/developing two assignments: an open-ended assignment (e.g. an "active learning" activity, a creative exploration, or a research exploration with only a few constraints) and a specification-driven assignemt (e.g. a program that should behave "according to spec").
Technical Skills Acquisition
The instructors work with each student to make an individualized plan for the student to develop technical proficiency in several areas (a number of possibilities are listed below) which depend on the activities offered that semester, the lessons being developed that semseter, and the background of the student. For example, one student may need to learn a programming language that will taught to the pre-college students. Another student may already know that language but could benefit from writing unit or integration tests (to test a potentially large number of students' programs) and/or by gain expertise with a version control system ( e.g.to track updates in the educational software developed in the course). A student who has just finised a CS1 course (e.g. CIS110 or CIS120) is likely to have a plan that is different from a mastsers student's plan. If all the course/workshop activities offered that semester are at a pre-AP level, a student's plan may include developing an AP-level lesson even if it is not delivered to students that semester.
Sample 12-Week Spring Semester: - Learn educational theories and practices, software engineering principles, technologies*. - Take test(s) on above - Write reflection papers on readings - Prepare for teaching and practice teaching - Design/develop/pilot an open-ended and a spec-driven lesson - Assist with teaching activities - Write field notes and peer evaluations - Refine/deliver/evaluate the open-ended and spec-driven lessons Sample 6-Week Summer Semester: Weeks 1-4 (Before Camp): - Learn educational theories and practices, software engineering principles, technologies*. - Take test(s) on above - Write reflection papers on readings - Prepare for teaching and practice teaching - Design/develop/pilot an open-ended and a spec-driven lesson Weeks 5-6 (During Camp): - Assist with teaching activities - Write field notes and peer evaluations - Refine/deliver/evaluate the open-ended and spec-driven lessons