COP 3502 Study Group Materials
My research has shown me that if students form study groups in COP 3502,
meet weekly and operate in a particular way, that quiz/exam grades rise by
about 10% on average. (Most of the gains are made by the students who have
lower grades as one might imagine, and this is a good thing for the whole
group, for everyone.) Groups shouldn't just meet to give each other
homework answers - worst possible use of groups that may actually lower
exam scores. Instead, groups should focus on helping all students in the
group learn concepts. To do this, one person in a group should scout out
some extra study questions, beyond the homework prior to group meetings.
Another person should organize schedules and set the group meeting times
and keep other accountable.
Prior to the meetings, students should attempt
the problems picked out by the problem scout. During the meetings,
students should discuss their solutions with each other and, if there is
disagreement, see if they can talk through it and figure out which
solution is correct. For this critical part to work, at least one person
in the group must know what they are doing and be confident about when
they are right and when they might not be. At different points in time,
different people may understand concepts and help explain to others in the
group, but there will definitely be asymmetry in terms of who is doing the
explaining. The key is that after the problems are reviewed, all students
in the group feel more comfortable with the underlying concepts. Right
when assignments are given, it's okay for the group to discuss the
assignment at a high level and make sure that all students in the group
carefully understand the prompt. (It's shocking how many students
misunderstand what question they are being asked on homework and only come
to find out that they're coding a solution to the wrong problem less than
48 hours before the due date. This is a preventable error.) Also, at a
high level, without looking at any code, a group can talk about general
approaches to solving a problem (it's okay to say something like, "yeah,
you have to store which values have been used so far in a used array.")
Also, before exams, groups should work with each other to find each
other's weaknesses and help each individual improve their understanding of
those topics. Though not necessary if it's not graded, having a secretary
who takes notes about when the group meets, who attended each meeting and
a summary of what occurred is really helpful. (I require it if I am
grading study groups in a class.)
I had casually asked students to form these groups for many semesters, and
when I finally got lab assistants, I decided to do the problem scouting
for the group and put together some sets of problems on several key areas
of COP 3502. The table below has links to the sets of problems and
solutions I have collated for this purpose.