JOSH: Hi, I'm Josh.
I'm 16, and I'm from the island of Guam.
So my question is, is that
when you guys were first
learning programming like a long
time ago, what kept you motivated?
And when did programming
really click with you?
SPEAKER 1: Oh, that's
a really good question.
So I think we can probably
each answer this one.
For me, I think it was when I finally
started finding personal projects that
were not academic in nature.
They weren't homework, but they were
actual problems that I wanted to solve.
That's where I really got into
programming and the excitement
clicked and my thirst for wanting
to learn more and figure out
how to do things differently
and better really clicked.
And in fact, the first
thing I can think of,
I can paste this into the chat window.
This is from like literally 20
years ago in Harvard's newspaper
that I just Googled.
I wrote this program at the time
that was called Shuttle Boy,
and it was this command line
program that you could run in a Unix
or in a Linux environment before
there was web mail and gmail.
Students at Harvard used to check
their email in a terminal window,
just like you might be compiling and
running your C code or Python code.
And at the time, there was no GPS.
But we did have buses and automobiles.
And so Harvard had a
lot of shuttle buses
that would drive around campus to take
students from one location to another.
But the way you could figure
out when the next schedule was
was, you picked up this old
school technology, printed paper,
and you could look up the time that
the next shuttle could pick you up
from location A and take you to B.
So for me, this seemed
like an opportunity
to use some of the knowledge that I'd
literally just picked up from CS50
and a follow-on class called 651.
And I wanted to implement a program that
would make this process much easier,
so students could check the
schedule on their computer,
then go outside when they know
there's going to be a bus there.
And it was just so gratifying.
I was lucky that this happened to solve
problems not just for me, but for lots
of other people on campus.
And I think several hundred,
maybe a couple thousand students
at Harvard ended up using this program.
And what was so cool about that, was
that it was never done, the program.
I kept wanting to add more and more
features to it, fix bugs, and so forth.
So it really became a passion project.
And that, I think, for me is when
it really clicked that I'm not just
studying, a topic in
a class, I'm not just
learning something very mechanical.
Like I'm learning
something very empowering,
programming, that can genuinely solve
problems that excite me and genuinely
help others.
Brian, any thoughts come to you?
BRIAN: Yeah I think my general
theory is fairly similar.
That when I was first
learning, the thing
that really inspired me was
the different types of problems
that I was able to solve.
And when things really
started to click, was
when I found a way that I could apply
computer science in my life outside
of computer science to be able to do
interesting things and solve problems.
The one that comes to
mind is that in college I
was a graphic designer for
my college's newspaper.
And I would often have to
late at night be designing
all of these charts and
various different graphics
in a particular style to put up on
our website or to put into print.
And very often we're designing a very
similar type of graphic again and again
and again.
And I remember one day just deciding
to write a Python for program that
would just create these
graphics for me, so I could just
type in a few lines of code and
generate the graphics automatically.
And that alone just saved
me hours that semester.
I spent maybe half an
hour writing a program,
and immediately, it was
making things easier
for me and for the people
that I was working with.
So that, I think, really
helped it to click for me,
being able to write a little bit of code
that helped us solve a bigger problem.
SPEAKER 1: How about Colton?
What inspired you?
JOSH: So I went into it with a
goal so from the very beginning,
which was I wanted to make games.
And that was since I was
probably 10 or 11 years old,
but I started around the time I
was in high school, so 14, 15.
And the first time I actually tried
coding it was from an old book
on the Torque game engine which was
popular in the early to mid 2000s.
And it used a custom language
called Torque script,
which looked kind of like Perl
or PHP, but a little bit weird.
Had its own syntax for some stuff.
And probably because of all
the syntax and just the fact
that it wasn't formatted very
well and it was black and white,
I just kind of got immediately
almost repulsed by it, to be honest.
And didn't, I had
never seen code before,
so I wasn't really familiar with it
or appreciate it or know how it even
worked or knew how to, like,
what games were even made of.
I sort of thought they were all
like Visual Editor-based projects.
But the desire to make
games didn't go away.
I still wanted to make games.
So I tried again, but
this time I decided
I was going to learn something
beyond Torque script.
I was going to go learn
something like C or C++.
Those are the first two
languages that I learned.
And learning from a more structured,
beginner-focused way, you know,
doing simple exercises, learning
the very basics, you know,
what's an if statement, what's
a variable, what's the loop,
all of this stuff sort of I
think lit a fire within me.
The fact that I could actually make
a computer do things that I wanted
to using what sort of felt
almost Englishy, but you know,
it's like giving instructions in a way,
using C or C++, very imperative style.
And that sort of allured
me in a way to where it
wasn't just about making games anymore.
It became about coding
because it was a craft
and because I thought it was
interesting, and because the landscape
honestly, is just infinitely vast.
You can your whole life
and not know, you know,
and this is the same with
most sciences, but you
won't be able to know
everything there is to know
about everything in computer science.
So you'll always be
learning something new
and it'll always be
fascinating and interesting.
And that's what keeps me
enjoying it to this day.
I can learn, I can
get a lot of enjoyment
out of even small little new
things that optimize my workflow
or let me think about
programming in a different way.
So I don't know, it's
been a fun journey.
