Syllabus, CMPSC 190J, Fall 2017
Basic Facts
- Course Web Site: http://ucsb-cs190j.github.io
-
Instructors: Phill Conrad and Diba Mirza
- Lecture: R 3:30pm-5:00pm Phelps 1250, ATTENDANCE REQUIRED.
-
Lab (3 hours discussion section depending on which course you are assigned to) in Phelps 3525 (co-located with courses as shown below)
- Tuesday 8:00am - 10:50am (CMPSC 8)
- Tuesday 11:00am- 1:50pm (CMPSC 8)
- Wednesday 3pm-5:50pm (CMPSC 56)
About this course
CMPSC 190J: Teaching Computer Science
This course is designed for outstanding students who intern as undergraduate mentors in lower division CS courses. Lecture/discussion surveys current research and best practices in CS pedagogy including student development theories, different pedagogical techniques, and methods for assessing learning. Students gain experience working one-on-one with students, fostering positive learning environments, and providing feedback on student work.
Students who successfully complete this course will earn 4 units towards their major field electives by serving as a mentor. They will also be eligible to apply for paid tutoring positions in lower division undergraduate courses in the following quarters.
Course components:
The course has three main components lectures, discussions and homeworks as described below.
- Lectures will cover best practices and current research in CS pedagogy with the goal of providing students with the knowledge and skill set needed to be an effective mentor and teacher of Computer Science. Students will learn about student development theories, different pedagogical techniques, methods for assessing learning, and the ethics of being a mentor. These topics will be presented in the context of two specific undergraduate courses: CS8 and CS 56. Attendance is mandatory and a student may miss no more than one lecture (with consent of the instructor).
-
In discussion sections students will apply the content covered in lectures to mentor students in the context of either CS 8 or CS56. At the outset of the course, each student in CS190J will be assigned to one of these two courses where they will gain hands-on experience as “course mentors”. Students must attend one discussion section weekly that is co-located with the discussion section(s) of the course that they have been assigned to (either CS8 or CS56). See the following sections on “Mentoring in the context of CS8/56” for more information.
- Homeworks include reading and writing assignments, as well as the completion of specific tasks that will be specific to the course that students have been assigned to. Assignments include reading scholarly articles and writing summaries/reviews about them, writing reflections on tutoring activities, and providing feedback on student work. Other tasks may be assigned as homework by instructors of the courses that students are mentoring for. For more information, please see the following subsections.
Mentoring in the context of CMPSC 8
CMPSC 8 is usually the first CS course that students take at UCSB. The mentors in CMPSC 8 will assist students with different levels of programming experience understand concepts that are foundational to CS and gain study habits and skills that will help them succeed in future CS courses. Mentors are central to creating a supportive learning environment and helping students engage with the material.
The mentors will assist students during the CS 8 lab sections, while they work on their programming assignments, provide feedback on student code and homework, and review student work on exams. Mentors will also be involved with creating collaborative study guides and assisting with study sessions prior to exams.
Mentoring in the context of CMPSC 56
As you may recall, when you were enrolled in Phill Conrad’s CMPSC 56 course, there were a number of CS undergrads that served as “mentors” for the course, particularly for the legacy code projects. These students help with curating the legacy code projects, reviewing student code, approving “issues” (bug fixes, feature proposals), and in many other aspects of the course.
It is a great opportunity to build on your understanding of Java, Design Patterns, git/github, software testing, and other materials from CS56, as well as developing communication and leadership skills in a software development context.
More information on mentor responsibilities for CS56 can be found at these links: