I felt both mildly accomplished, but
more like I had learned nothing. It reminded me of the day I’d listened to
some French tapes ahead of starting
French class and learned how to say
“Je suis Americaine.” I hoped someone
would ask me if I was American. They
didn’t, so I didn’t have anything to say.
It reminded me of solving the Rubik’s Cube. I had learned how to do
something, and I could do the same
thing again, but not apply it to anything else.
I sent Jeremy an email: “That was
fun—thanks for the recommendation.
It felt very contextless, though, so now
I am going to try to figure out what I
should do with this new basic knowl-
He responded: “The best way to
is just to try building things. Eventu-
ally, you’ll run into stumbling blocks,
Google for help, find the answer, and
add to your repertoire.” He offered rec-
ommendations for other resources,
and himself as a resource if I needed it.
Having no idea where to start, I ignored this useful advice to build something (or to ask him for more help).
Instead, I continued slowly playing
around with other free online resources, but became tired of the variations
on rote learning. I wanted to understand why I was coding things the way
the learning programs suggested. Instead of seeking out that answer, I gave
up for awhile.
When I decided to try learning to
code again, about a year later, I started
by thinking about why I’d given up so
easily the last time. I reflected on the
last time I’d really successfully taught
myself something new: Over the course
of t wo years, I had taught myself how to
I wanted to try my hand at teaching
something besides the backstroke.
Having studied literature at Harvard,
English was the thing to teach. Teach
for America brought me to San Fran-
cisco (and to the brink of irreversible
I became fascinated with how to
most effectively teach any given topic,
but was frustrated by the scope of my
efforts: When I succeeded, 150 high
school students more effectively knew
how to compose a topic sentence. One
hundred and fifty students is a lot, but
I wanted to share teaching ideas with a
wider audience. I also wanted to sleep
more. So there I was on another flight
to New York, this one without a Rubik’s
Cube, without a return ticket.
Back in Brooklyn, I joined the wonderful company Flocabulary, which
uses educational rap music to help
students learn. I was writing curriculum as the Editorial Director, and
was delighted my teaching ideas were
reaching thousands of teachers and
students. We launched a new interactive website to make our videos and
resources even more accessible to students, and I realized I wanted to run
said website. Today as Product Director, I oversee web development and
our curricular technology. I got tired of
saying, “Here’s what I want,” without
being able to code some of it myself.
So that’s how I got to here, and I’m still
working on it. And I still swim.
When I decided I wanted to learn
how to code, I turned to my friend Jeremy for both inspiration and practical
advice. An autodidactic programming
success story if there ever was one, he
had begun his career as a journalist,
started to do interactive programming at Slate, taught himself enough
to snag a position as a programmer/
journalist at The Wall Street Journal, and he’s now the data editor at
BuzzFeed. Codecademy.com had recently debuted, and he recommended
I try it, since it was free.
I did all the lessons in one night.
(They’ve expanded significantly since,
but at the time it was easy to tear
Each lesson gave an example, and
then asked you to do a similar exam-
ple. “Here’s a thing. Now do this same
thing. Here’s a badge, you did a thing!”
The following requirements were
necessary for teaching myself to teach.
And they are more generally the re-
quirements for how to teach yourself
anything. Here’s what you need:
1. A clear goal, a strong enough de-
sire to reach it, and smaller goals to
lead up to it.
I wanted to help my students succeed. And I believed learning to read
and write well was a key to that. Without this goal, and the many specific
reading and writing skills that were
smaller ones, I never would have been
able to get out of bed in the morning.
Many days I couldn’t any way.
I wanted to learn how to code so I
could build the ideas I have. But that
goal was too big to make specific progress on, and too easy to feel like I wasn’t
making progress. So that is where Jeremy was right about projects. This time
around, I would define a smaller project for a small idea to start.
2. Traditional training that defines
terms, tools, and philosophies.
Teach for America’s oft-criticized
training is indeed short. But I believe
it achieves this step comparably well
to more traditional training programs.
Teachers are introduced to lesson
planning, teaching philosophy, and a
variety of tools and techniques to begin. It is exhausting, but not exhaustive. But it does prepare you enough for
the next step.
Codecademy defined some terms
and tools, but I realized I was missing
the deeper understanding of how it
worked. Some might call that, er, computer science. So when I dove in again,
I also started watching Harvard’s CS
50 “Intro to Computer Science.” There,
I found an introduction to the deeper
material I was interested in.
3. The ability to identify successes
and problems, and reflect on why the
right things went right and the wrong
things went wrong. The knowledge of
what resources to seek out to improve
the things that went wrong, when self-reflection was not enough. And then
apply these experiences to a new situation.
When people ask me if I recommend Teach for America, I usually
The ability to reflect
and apply lessons
to new situations is
how I would define
intelligence. It is also
a skill that can be
taught, and must be.