CSC 313 Teaching Computing
- Instructor: Dr. Ayaan M. Kazerouni firstname.lastname@example.org
- Office hours: TODO
- Class meetings:
- Lecture: 3:10pm to 4:30pm (Building 14 Room 256)
- Lab 4:40pm to 6pm (Building 14 Room 257)
- Tentative course schedule
An introduction to pedagogical methods and practical techniques for computing education: selecting appropriate content, designing assignments and activities, evaluating student learning, and evaluating teaching efficacy. Hands-on guided curricular design activities and real-world practice.
Course learning objectives
- Explain common challenges to learning and teaching computing to broad audiences
- Discuss computational concepts and correct common misunderstandings
- Assess a proposed CS curriculum and teaching methodology on whether it is appropriate for a target audience
- Identify, evaluate, and effectively use evolving tools for computing education
- Identify, evaluate, and disseminate results from a research study
- Identify, evaluate, and disseminate changing pedagogical norms
- Design an effective assignment for teaching fundamental computational concepts
Assessments and Grading
- Coding assignments — self-reflection (15%)
- Weekly reading quiz and/or response (20%)
- Discussion participation/lecture quizzes (20%)
- Practice teaching in introductory classes + self-reflection (10%)
- Virtual tutoring shadow and write-up (5%)
- Virtual tutoring centre tutoring hours with reflection (10%)
- Culminating experience — research proposal, outreach event, written survey, other options available with permission from instructor (20%)
Coding: To think about teaching computing, we will begin with reflections on our own coding process. Thus, this course includes some small coding assignments with process documentation and reflections. This process will include code review and shared assessment of one’s process and code.
Reading: The study of computer science pedagogy is an emerging area of study (most computer science departments are only 50 years old). To explore this field of study, I will assign course readings to help you engage with the material. Please complete these readings before class. Expect in-lecture reading quizzes in addition to turning in complete reading responses each week.
Teaching/tutoring: We will practice teaching computing via both shadowing experienced CS tutors and tutoring in the online tutoring for 101, 202 and 203 students. You’ll also hold a brief session in our introductory class lab sessions.
Culminating experience: In consultation with the instructor, students will select a final culminating experience. Options include a fully developed research methodology, a written survey of literature associated with a specific topic in CS education, a portfolio of educational materials gathered throughout the course and possibly live or virtual outreach events focused on CS education. I will be posting opportunities for this last type of project throughout the quarter.
- Slack channel
- Invite link (expires _____)
All communication for this course will take place in the Slack channel linked above. Questions that are of general interest to the class should be sent to the
#questions channel. If you’re not comfortable asking questions publicly, you can DM me, and I might post the question and answer to the public channel if I think it would be helpful.
Other benefits of using Slack:
- You can communicate with your classmates in Slack as well
- Although there are assigned readings which will sometimes have Canvas Discussions associated with them, you should feel free to raise points of discussion yourself in Slack
- You’re encouraged to seek feedback about projects in the #general channel—that way you can get feedback from me as well as 34 other smart and motivated people!
There is no explicit attendance policy for this class. However,
- There will occasionally be graded activities in class that you must be present to complete.
- This class is heavily driven by discussions of the day’s activity or reading. If you’re not attending class, you’d just be passively following a reading list.
- A non-trivial component of your final grade is based on participation—participation in discussions, participation in small group activities, etc. You cannot participate if you’re not in class.
All this adds up to: I strongly recommend that you come to class!
I do know that you all have a lot going on, so if you need to miss class on a given day, let me know ahead of time and I can let you make up any activity you might have missed.
I know that everyone is unique, and I may have unintentionally overlooked something that limits access to some materials or activities. Please let me know if you cannot access any content. If you need additional accommodations to complete the required course work, please contact me as soon as possible! You should also contact the Disability Resource Center.
SensusAccess is a self-service, alternate media solution made available by Kennedy Library to automatically convert files into a range of alternative media including audiobooks (MP3 and DAISY), e-books (EPUB, EPUB3, and Mobi) and digital Braille. The service can also be used to convert inaccessible files such as image-only PDF files, JPG pictures, and Microsoft PowerPoint presentations into more accessible and less tricky formats. This service is available at no charge.
I consider this classroom to be a place where you will be treated with respect, and I welcome individuals of all ages, backgrounds, beliefs, ethnicities, genders, gender identities and expressions, national origins, religious affiliations, sexual orientations, ability—and other visible and non-visible differences. All members of this class are expected to contribute to a respectful, welcoming and inclusive environment for every other member of the class. It is my goal that together we create an environment that facilitates and fosters access to computer science. We are all learners.
In practice, I expect us to strive to build a community in which:
- We are not code snobs. We do not assume knowledge or imply there are things that somebody should know.
- After our work is complete, we prioritise the education of others and actively offer to help, explain, debug, etc. in order to support one another’s learning. We do not share our working solution, but explain the logic/thinking behind our solution and help others recognise errors in their implementation when invited to do so.
- We consistently make the effort to actively recognise and validate multiple types of contributions to a positive classroom environment.
This is the schedule used in Spring 2023. This schedule shows the “big assignments” and doesn’t include all the reading quizzes/reflection prompts which accompanied most readings.
Much of this course (structure and materials) is inspired by or carried over from Zoë Wood’s initial offering of the course.