9-12, AP Computer Science A

Individualized Learning in AP CSA and CSII

This summer I found myself attempting to plan to teach two different courses at the same time.  Partly my own doing, this school year we gave students the option to take our second computer science course with or without AP credit.  As a result, I have a few meetings a cycle (two weeks) with all my students and about 80 extra minutes a cycle with just the students preparing for the AP exam.  On top of that, I knew that I had to be ready to switch to an entirely remote model at a moment’s notice.  I’ve been teaching Java and object-oriented programming in CSII for a few years now, but this is the first year we’ll be offering the AP option.

At the CSTA 2020 Conference* this year, I attended Pam Whitlock’s excellent and informative session on what she refers to as “individualized learning.” The concept is relatively simple: students take a pre-test and then work through a series of modules for the unit at their own pace.  The modules provide opportunities for students to choose how they want to learn and class time can be used to work with small groups or individual students.  Here’s my plan of attack:

  1. Students will have the option to take a pre-test in which each question corresponds to a module.  If they’re successful on individual questions, they can earn exemption from that module or part of that module.
  2. Students will be given a playlist/checklist for the unit.  In each module, the objectives are listed as well as activities and readings from the textbook that they may find helpful in mastering those objectives.  I purposely chose a textbook, Big Java: Early Objects (Hortsmann), that included self-checking interactive exercises.  I also included links to other resources such as the CSAwesome curriculum and videos.  I plan on treating this as a living document and adding more resources as I find them and see what topics students need additional support on.  Students don’t need to do all of the activities and will hopefully return some of the activities when reviewing for assessments.
  3. The final column in the playlist highlights assignments that are due at the end of the module to demonstrate mastery of the module’s objectives.  You’ll see that because we have a two-week cycle, each module corresponds to a week with assignments due on Sundays.
  4. During class time, students will have some level of choice.  Sometimes, we’ll do whole class activities or lessons.  Other times, I’ll be able to pull a small group to review a topic they found challenging, give students the option to participate in a group coding session, or work with students one-on-one.  As time permits, they can use classroom time to work on their playlist of activities.

I’m really excited for the level of student choice and ownership this model provides.  I think it will also allow me to build in differentiated activities for students preparing for the AP exam versus those who are not.  I’m hoping to better respond to student needs in real-time without the pressure of trying to stick to a planned lesson.

I will admit that adapting this model requires a lot of advanced planning, and, if I wasn’t starting a new course, I’d probably try it with one unit or concept first.  Even so, I plan on soliciting feedback from students throughout the year so I’m expecting some flexibility.  (I’ll keep you updated!)  Over the summer, I was able to take a few days to really plan out Unit 1 and will have to spend another chunk with each unit throughout the year.  However, I think it’s a trade-off because I spend less time planning for the class period; it’s now combined with the time I spend giving feedback on work.


*You should definitely look into attending CSTA 2021 this summer!