Follow us on Twitter at http://twitter.com/blogCACM
The Communications Web site, http://cacm.acm.org,
features more than a dozen bloggers in the BLOG@CACM
community. In each issue of Communications, we’ll publish
selected posts or excerpts.
there may be issues in your classes that
I haven’t seen or learned about from
the research literature.
My suggestions here do not in any
way suggest that students visiting office
hours is a bad thing. Students should
interact with instructors. However, I
don’t believe that the long queues do
anyone any good. I suggest every student
should interact with teachers and teaching assistants one-to-one (1: 1) at several
points in every class, but if most students
need 1: 1 help on most assignments or
to revisit most topics, then maybe there
are inefficiencies elsewhere in the system. How can we meet student learning
needs without those long lines?
Here are the five tweets, with commentary:
1. Use Peer Instruction. It is the most
effective in-class teaching method I’ve
ever used. If students learn more in-
class, maybe they’ll need less 1: 1 help.
Beth Simon, Leo Porter, and Cyn-
thia Lee taught me how to do peer in-
struction. They had to convince me. I
blogged about my first experiences in
2011 (see example post at http://bit.
ly/2wyoCGW). It changed how I taught,
and it changed me into a better teacher.
I have always taught with peer instruction and other forms of active learning (like inverse live coding, http://bit.
ly/2Wda9L1) ever since.
Let’s be really clear: The research
supports the Peer Instruction protocol
(see a nice description of it at http://
bit.ly/2HTBxti). Hiring lots of teaching assistants is NOT Peer Instruction
(though that might be part of Peer
Mentoring or Peer-Led Team Learning). Having students work in small
groups is NOT Peer Instruction. There
are other active learning methods in CS
classes. Peer Instruction in CS has the
strongest research evidence in support
of its effectiveness.
ming. Students do need 1: 1 help. Pair
programming can lead to better learning
and improved attitudes about CS. But ac-
tually organize it—form pairs, expect it.
Just saying “You can collaborate”
or “I encourage Pair Programming”
is not the same as (a) organizing how
pairs are formed, (b) teaching how to
do pair programming, and (c) expect-
ing it in grading.
Students often need personalized help. It doesn’t always have to
How to Reduce Long
Lines at CS Office
Hours in Five Tweets
May 2, 2019
My Ph.D. student, Katie Cunningham,
tweeted the possibility that we could
reduce long lines at computer science
(CS) class office hours with improved
teaching (see http://bit.ly/2ESfr8N).
I agreed ( http://bit.ly/2HTpIDv), and
received a significant and somewhat
There are some well-supported
methods that might reduce the long
lines at office hours, but few people
use them. Based on the latest research at SIGCSE 2019 (https://doi.
adoption rate of these methods is likely less than 5%. I decided to write five
tweets with these methods (which you
can see at http://bit.ly/2Z1cev8). Since a
tweet is limited to only a few characters,
I am expanding on those tweets here.
I’ll admit up front that the title is
a bit of click-bait. I can’t guarantee
that I can reduce the long lines at office hours. I have seen these methods
work. I recommend them. Of course,
Cutting the Wait
DOI: 10.1145/3339456 http://cacm.acm.org/blogs/blog-cacm
For CS Advice
Mark Guzdial suggests ways to cut the long lines for college students
seeking to meet with their computer science advisors.