EDEC 575 / COMP 598: The Teaching of Computer Science

Term: Fall 2020

Course description:
Principles of teaching computer science and computational thinking. This course provides an overview of the computer science education research literature. Topics include how diverse learners learn computing concepts, inclusive pedagogy, and the social context of computing education. Multiple audiences of learners will be considered (primary, secondary, tertiary, informal). The course will focus on how computing topics are taught at an introductory-level; such topics may include programming, computational thinking, robotics, algorithms, data structures, logic, networking, and security.

Prerequisites: none

Number of credits: 3 credits

Instructor: Elizabeth Patitsas (to contact: Direct Message on Microsoft Teams)

Schedule: Tuesdays 5:35-8:25pm starting Sep 8 2020

Course Forum: EDEC 575 / COMP 598 on Microsoft Teams

Location: Online via Microsoft Teams (you'll need to join the Team to access the meeting; auditors will need to join the Team first)

CS breadth category: Category C: Applications

Course Structure

This is a discussion and activity-oriented course. Each week we will have 2-3 papers to read in advance of class; we will have a group discussion of the papers in class. Short group activities will be organized around the readings and topics each week.

Student-Centred Teaching

I prefer to teach in a participatory, student-directed style. This means that you as students will have a say in what readings we read: I as an instructor will give you a range of options and we as a class will decide what directions to pursue within the realm of CS education. Instead of starting the term with me picking out all the readings in advance, we will instead pick readings collaboratively --- I will ask you what you are interested in and your learning goals, and then I will use my expertise to pick readings to match your interests and goals.

This also means I will craft the assessment of this course around what you as a class would find most valuable. Do you want this course to be a hands-on class about how to instruct computing, where you give practice lessons and have a micropracticum at the end? Do you want this course to be a research-focused course where we delve into the research literature and understand the psychology/sociology/etc of CS education, and write a paper at the end of the course? Some combination of the two? Something else? We will discuss these options and more in our first class.

Indeed, much of our first class will be spent on co-constructing the syllabus around your interests. Given the pandemic we'll also be collaboratively deciding upon course policies surrounding attendance/etc and the format of the course.

I'll propose that on a weekly basis, instead of meeting for 3 hours, we meet for 1.5 hours and then I give you 1.5 hours worth of small group activities to do on your own time in between each class. But I am flexible about this format and we will discuss how this sounds to you!

Last time I taught this course I also co-designed the syllabus with the students! This is what we came up with in 2018.

Course Schedule

Week 1: September 8, 2020: Student-Centred Pedagogy

  1. Read before class:
    1. If you are new to using Microsoft Teams, here's a video on how the chat works and here's a video on how the videoconferencing works and one on breakout rooms
    2. Optional: Chapter 1 (Engaged Pedagogy) of hooks, bell. (2014). Teaching to transgress. Routledge. -- To give some background on why I'm engaging you in the syllabus creation process
    3. Optional: Bergmark, U., & Westman, S. (2016). Co-creating curriculum in higher education: promoting democratic values and a multidimensional view on learning. International Journal for Academic Development, 21(1), 28-40. --- gives a case study of student-directed teaching in higher education
  2. Set up before class:
    1. Complete this form to tell me about yourself
    2. Join the Team and set up notifications
    3. Introduce yourself to your classmates in the IntroduceYourself channel of the Teams chat
  3. Slides for tonight
  4. In-class activity: co-construct course syllabus with students
    1. Course-level learning goals
    2. Broad ideas for assessment
    3. Course policies (attendance, integrity, safe space, etc)
    4. Online format

Week 2: September 15, 2020: Pedagogies for Teaching Programming

In this class we'll continue our conversation from last week about what we want to do with this term

Week 3: September 22: Lesson Planning

Week 4: September 29: The Push for K-12 CS

Week 5: October 6: Ideology in CS Education

Week 6: October 13: Historical Context

Future weeks