2. We
are
all
here
because
we
are
passionate
people,
and
programming
is
our
passion.
It
is
most
likely
also
going
to
be
your
career,
at
least
for
a
period
of
<me.
There’s
a
saying
that
“the
quickest
way
to
lose
interest
in
something
is
to
make
it
your
job”
How
do
you
maintain
that
passion
and
joy
for
programming
throughout
the
years
of
your
career?
2
3. I
will
tell
you
about
my
personal
journey
of
passion,
and
some
of
my
own
wins
and
challenges
that
have
led
me
through
my
career.
I’m
so
happy
to
give
this
talk
aGer
Mike’s
excellent
keynote
yesterday,
because
I
believe
in
many
ways
our
talks
are
a
Yin
and
Yang
to
each
other.
Mike’s
key
to
advancement
is
obsession.
My
key
to
advancement
has
been
observa<on.
Each
has
some
of
the
other
in
it,
but
one
will
probably
resonate
more
closely
to
you.
S<ll,
I
think
between
the
two
of
us
we’ll
cover
the
field.
Let’s
get
started.
3
4. Programming
is
magic!
It
is
the
closest
thing
to
being
a
wizard
in
this
modern
world.
4
6. How
do
you
s<ck
with
it
through
good
<mes
and
bad,
richer,
poorer,
sickness
and
health?
Programming
doesn’t
love
you
back,
so
it
is
all
about
your
personal
journey
to
love.
6
7. My
journey
begins
at
the
beginning.
The
beginning
of
love
is
generally
infatua<on,
and
also
frequently
frustra<on.
7
8. Started
playing
in
high
school
Wen
to
college
for
computer
science
Was
in
love
with
the
idea
of
programming,
at
least
Many
different
ideas
AI
Theory
Programming
Languages
Compilers
8
9. I
got
through
undergrad
partly
through
sheer
determina<on
Took
a
full
<me
job
in
an
area
I
thought
would
be
interes<ng
I
floundered
Went
to
graduate
school
intending
to
work
in
PL/Compilers
Wasn’t
any
good
at
it
Switched
to
computer
architecture
And
a
bit
of
opera<ng
systems
I
was
in
fact
pre]y
good
in
a
course
called
Distributed
Systems,
but
that
wasn’t
a
very
“cool”
area,
so
I
didn’t
think
to
pursue
that.
But
realized
I
wasn’t
a
great
grad
student
9
10. AGer
over
8
years,
undergrad,
full
<me
work,
countless
internships,
and
finally
graduate
school,
I
was
wondering
when
I
would
ever
find
my
calling.
Maybe
this
just
wasn’t
for
me.
I
took
the
LSATs
and
pondered
my
next
move.
10
11. I
took
a
job
in
finance,
not
knowing
anything
about
finance.
Instead
of
trying
to
pretend
I
knew
everything,
I
went
into
that
job
assuming
I
knew
nothing,
and
just
asked
a
bunch
of
dumb
ques<ons
whenever
I
was
confused.
11
12. Up
un<l
this
point
I
was
dominated
by
my
“shoulds”
I
should
be
good
at
programming
languages
I
should
be
a
good
graduate
student
I
should
be
able
to
do
it
without
help
I
should
know
it
all
already
Stop
judging
yourself.
In
reality,
I
didn’t
know
enough
to
know
what
was
“hard”
and
what
wasn’t,
what
was
cool
and
what
wasn’t
I
had
to
give
up
my
expecta<ons
of
myself,
and
discovered
that
I
liked
wri<ng
code
that
delivered
clear
business
value.
I
liked
working
in
an
itera<ve
way.
I
didn’t
really
care
about
finance,
but
I
liked
being
connected
to
a
business.
That
distributed
systems
stuff
that
I
was
good
in
grad
school
turned
out
to
be
something
I
was
good
at
in
the
real
world,
too,
and
I
accidentally
happened
upon
a
major
trend
in
compu<ng
without
realizing
it.
12
13. I
learned
the
intricacies
of
Java
I
learned
Unit
Tes<ng!
I
learned
garbage
collec<on
and
libraries
and
my
IDE
13
14. The
obstacle
between
me
and
solving
problems
was
no
longer
me!
I
achieved
mastery.
14
15. What
is
mastery?
What
does
it
look
like?
It
doesn’t
come
fast
or
cheap,
it
takes
focus
and
years.
For
me,
it
happened
about
10
years
in.
I
don’t
know
the
exact
number,
but
I
know
that
it
takes
<me.
It
looks
like
understanding
the
details
of
your
language.
Understanding
the
garbage
collector,
or
the
details
of
the
STL,
or
what
exactly
the
GIL
means
for
your
programs.
Knowing
what
libraries
are
solid,
which
are
suspect.
Importantly
knowing
how
to
get
shit
done
efficiently
in
your
language
of
choice.
Mastery
will
sustain
you
throughout
your
career,
if
you
go
into
management
and
get
away
from
hands-‐on
programming,
it
will
never
totally
go
away.
15
16. Mastery
is
so
key,
but
it
isn’t
the
only
thing.
As
you
con<nue
in
your
career,
other
things
become
important
in
a
way
that
isn’t
as
prominent
when
you’re
s<ll
growing.
16
17. A
more
recent
part
of
my
career
was
leaving
the
job
I
had
loved
for
many
years
at
Goldman
Sachs
to
go
to
a
startup
I
was
missing
a
value
alignment:
I
value
transparency,
and
banks
do
not
Wanted
to
work
in
public
Wanted
to
go
to
a
place
where
I
felt
as
an
engineer
I
could
make
a
huge
difference
An
engineer
of
the
world,
not
a
par<cular
company
17
18. Allowed
to
be
crea<ve
in
your
own
way,
have
your
own
style
Mike’s
keynote
yesterday
was
awesome
wasn’t
it?
I
wish
I
could
be
that
guy,
but
I
have
accepted
that
I
will
never
be
that
guy
(and
I
will
never
be
Mike,
for
that
ma]er).
I’m
not
an
obsessive,
but
I
am
an
observer.
You
don’t
have
to
be
“original”
to
be
crea<ve
Expose
yourself
to
new
things,
if
only
to
remind
yourself
that
the
old
things
aren’t
that
bad
Side
projects
are
not
a
requirement.
18
19. You
don’t
have
to
work
for
a
company
whose
product
you
find
purpose
in,
but
finding
the
job
role
that
you
find
purpose
in
is
important.
Align
what
mo<vates
you
to
your
job
<tle
and
company.
I
like
to
build
soGware
that
moves
a
business
forward.
You
may
like
to
find
secrets
in
data,
or
to
help
developers
do
their
jobs
be]er,
or
to
create
beau<ful
interfaces
that
people
love
to
use.
You
are
more
affected
by
the
values
of
your
company
and
the
purpose
of
your
job
internally
than
the
thing
the
company
does.
Find
purpose
externally,
in
higher-‐order
work,
that
leads
to
empathy:
Write
blog
posts
Give
talks
Mentor
Volunteer
Work
in
open
source
Cheer
on
your
friends
19
21. Growth,
to
give
you
confidence
Authen<city,
to
align
your
values
and
be
true
to
yourself
And
Purpose,
to
direct
your
passions
and
to
go
outside
of
yourself
and
see
the
world
through
other
eyes
21