[? LADORE: ?] My name
is [? Ladore. ?] I'm 21.
I'm from Israel.
And my question is I would
love to know some more
information about how your walk-through
videos for various problems sets
are written.
Right now I am on problem
set five, and I'm not
sure about most of the questions there.
And I'm sure the
walk-through videos helped me
a lot to understand some of those
basics and ideas of the code.
So, generally, what
are your considerations
and/or inspirations when
making one of those videos,
and how do you decide what to include
in them or what not to include?
SPEAKER 2: That's a
really good question.
I can speak, perhaps,
to some of the history
and then have Brian elaborate on
his particular approach to them.
So we've been doing
these walk-through videos
for CS50, which are these
short YouTube videos that
are embedded into the
homework assignments
for CS50 itself, for those unfamiliar,
for, probably, 10 plus years now.
And different Teaching Fellows or
TFs have led them over the years.
[? Martin ?] [? Bralek ?] was
the first some 10 plus years ago,
Tommy MacWilliam, after that, who you
might remember from other CS50 videos,
and then Zamyla Chan, who
held the title for, probably,
eight or so years while she was an
undergraduate as well as a PhD student
at Harvard.
And she only just recently
moved out into the real world.
In fact, as an aside, before
I forget, those of you
who know Zamyla from past years of CS50,
I've just pasted into the chat window
a URL of her graduation speech that
she gave upon receiving her PhD.
But the motivation for
the walkthroughs early on
was really to start to answer a
frequently asked question or FAQ, which
was quite simply, where do I begin?
I had hoped we have fairly detailed
specifications in the problem sets,
telling students what they
ultimately need to do.
But they deliberately don't really
tell the students how to do that,
and, frankly, we have found
through trial and error
that the longer, the longer, the longer
the problem sets, English language,
gets, the less, the less,
the less the students
actually read it, even the
native English speakers.
And so we wanted to use
another media format
to convey ideas and hints
for those students who
might want the additional guidance.
Early on, these walkthroughs
were only in person.
We would hold them in a
lecture hall on campus,
and students would come and
attend these classes for help
with the current week's problem set.
And then over the years,
we began to film those.
And then over the years further,
we then got rid of the audience.
And we started to pre-produce the
videos in a studio or in an office,
just so that we could
get them just right.
We could alternate between text and
code and the human speaking on screen,
and then, literally, integrate them
into the problem sets themselves.
In fact, it's a very deliberate,
if subtle, design decision
that when Brian leads them
and Zamyla leads them,
they're against this white
backdrop because we really
want the human element to blend
into the homework assignment itself.
And, indeed, what was wonderful
about Zamyla, especially,
who really became the face of these
walkthroughs for so many years,
students really began to identify
with her, really want to meet her,
really want to be her because she was
literally the person there for them
in their time of need when they were
struggling with homework assignments.
And so that's some of the history,
and Brian has now taken up the baton
himself.
And, Brian, do you want to
elaborate on your approach?
BRIAN YU: Yeah.
Certainly, I took a lot of inspiration
from Zamyla's walk-through videos
and watching the way that
she did them as well.
But my general approach
with the walkthroughs
is to, first and foremost, convey
any background knowledge needed
to solve the problems--
that a lot of our problems
connect computer science
to other domains.
So with the election problems and the
problems [INAUDIBLE],, for example,
I'll start the walkthrough
just by talking
through how these elections work so that
you understand what the election even
is before you start worrying about
the code, or, likewise, with speller,
trying to talk through how a hash table
works to get an understanding of that
before you start writing the code.
And then the next step in
the walk-through videos
is I try to provide some ideas for how
to start thinking about the problem
a little bit more methodically.
With a lot of these problems,
I've been helping students
with them for five or so years now.
And I've started to see the
way that some people try
to start to think about the problem, and
so part of the goal of the walkthrough
is in my mind is to
provide some guidance
and some hints as to where to start your
thinking in terms of how you can then
translate that into code while still
leaving the core of the problem
up to you to solve because we
don't want to give the problem away
in the walk-through video.
But we do want to just give
you that little first nudge
so that you have an idea of how you
can begin writing up your own solution
and thinking about how
you would go about solving
any of the problems in
the problem [INAUDIBLE]..
