REQUIREMENTS FOR STUDENT PARTICIPATION
We
want
every
student
experience
to
be
productive
and
educational,
and
we
understand
that
for
many
students
this
will
be
a
larger
and
more
open-ended
kind
of
project
than
you
have
previously
completed.
We
believe
that
open
and
frequent
communication
is
vital
in
helping
you
succeed.
Experience
gained
through
previous
Google
Summer
of
Code
efforts
and
other
mentoring
and
management
activities
over
the
years
has
led
us
to
establish
these
requirements
for
student
participation.
We
understand
that
some
students
may
find
themselves
temporarily
unable
to
meet
these
requirements
due
to
events
beyond
their
control,
such
as
unexpected
work,
school,
or
family
demands.
However,
long-term
failure
to
meet
these
requirements
will
result
in
removal
from
the
program.
-
The
sole
storage
for
your
GSoC
work
cannot
be
a
personally-owned
machine.
This
means
that
every
week,
or
more
frequently,
your
work
must
be
copied
to
a
server
operated
by
the
Plan
9
GSoC
project
or
committed
to
a
Google
Code
repository.
-
Every
Sunday,
by
your
local
midnight,
your
project's
top-level
CHANGELOG
file
must
be
updated.
Your
mentor
and
the
project
administrators
will
scan
for
status
updates
at
least
as
frequently
as
every
Monday
at
their
local
noon.
-
Before
the
coding
period
begins,
you
and
your
mentor
will
agree
on
at
least
one
milestone
to
be
reached
before
the
mid-term
evaluation.
-
Your
mentor
will
be
expected
to
remove
you
from
the
program
at
the
time
of
the
mid-term
evaluation
unless
your
repository
and
changelog
have
been
up-to-date
and
you
have
met
the
agreed-upon
milestone.
APPLICATION HINTS
-
If
you
aren't
yet
a
user
of
Plan
9
or
Inferno,
please
understand
that
these
systems
are
fundamentally
different
from
what
you're
used
to.
This
is
why
we
like
and
use
them,
but
you
should
expect
that
getting
started
will
require
a
genuine
investment
in
reading
and
a
willingness
to
do
everything
a
different
way
than
you're
used
to.
-
If
you
are
proposing
a
9P/Styx
project
which
will
not
run
on
Plan
9
or
Inferno
(e.g.,
an
embedded-system
project
or
a
Linux/BSD/*ix
project),
we
expect
your
design
and
implementation
will
benefit
from
a
healthy
understanding
of
"the
mother
ship".
-
If
at
all
possible,
read
up
on
Plan
9
and/or
Inferno
(see
papers
on
the
web
site)
and
complete
an
installation
before
finalizing
your
application.
-
You
should
subscribe
to
the
9fans
mailing
list
as
soon
as
possible
and
commit
to
keeping
up
with
it.
While
most
GSoC-related
traffic
will
be
carried
on
a
dedicated
mailing
list,
discussions
on
9fans
will
provide
useful
background
context,
and
we
hope
that
after
following
it
for
a
few
weeks
you
will
chime
in
as
appropriate.
-
Try
to
make
it
clear
in
your
application
that
you
understand
the
parts
of
the
problem
and
how
difficult
they
are.
A
conservative
plan
with
some
clearly
achievable
milestones
will
probably
be
more
attractive
than
an
all-or-none
"big
bang"
plan.
GETTING HELP
Don't
panic!
We
do
not
expect
all
incoming
summer
students
to
have
been
born
knowing:
-
how
to
read
20,000
lines
of
code
and
see
how
the
parts
fit
together
-
how
to
debug
obscure
installation
problems
of
obscure
operating
systems
-
how
to
guess
which
way
a
piece
of
hardware
deviates
from
its
documentation
-
how
to
make
and
adjust
a
development
schedule
In
general,
when
you
don't
know
what
to
do
next,
ask
somebody.
For
problems
related
to
installation,
configuration,
source
control,
and
debugging
tools,
we
recommend
that
you
start
with
the
#plan9
and/or
#inferno
IRC
channels
on
irc.freenode.org.
If
help
is
not
available
in
real-time
via
IRC,
we
suggest
sending
mail
to
the
plan9-gsoc
mailing
list.
For
issues
specific
to
your
project,
do
not
hesitate
to
contact
your
mentor.
Furthermore,
it
will
generally
make
the
most
sense
for
these
communications
to
include
both
your
mentor
and
your
backup
mentor.
If
you
feel
the
relationship
with
your
mentor
is
not
going
well,
please
do
not
hesitate
to
contact
the
Plan
9
GSoC
administrator.
Personality
conflicts
do
arise
between
well-meaning
people
and
we
will
work
to
resolve
issues
as
well
as
we
can.
Please
realize,
however,
that
it
is
important
for
you
to
get
help
right
away:
the
role
of
the
project
administrator
is
to
help
you
make
forward
progress
so
you
can
meet
deadlines,
not
to
override
a
mentor's
correct
observation
that
program
requirements
are
not
being
met.