[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Hurd GSoC 2013 projects

From: Thomas Schwinge
Subject: Hurd GSoC 2013 projects
Date: Sat, 1 Jun 2013 11:00:40 +0200
User-agent: Notmuch/0.9-101-g81dad07 (http://notmuchmail.org) Emacs/23.4.1 (i486-pc-linux-gnu)


"Finally", some administrativa for the Hurd GSoC 2013 projects.  Everyone
loves administrativa, I know.  ;-)

First, congratulations again for getting your applications accepted!  In
no particular order: 陆岳 (Yue Lu) »Improve the GDB Port for GNU Hurd«,
Fotis Koutoulakis »Porting the GCC go language frontend on the GNU/HURD
Justus Winter »Debian GNU/Hurd Debianish initialization«,

Copyright assignment.  As goverened by the Free Software Foundation, the
GNU Hurd (as well as GCC and GDB, for these two GSoC projects) requires
copyright assignment for any non-trivial patches that you contribute.
<http://www.gnu.org/prep/maintain/html_node/Copyright-Papers.html> has
further information, if you're interested.  For simplicity, I suggest to
assign any past and future changes, using the form that I attached to
this email.  The GDB and GCC projects will definitely need to be covered
for the two respective GSoC projects, and I suggest that each of you
three at the same time also requests assignment for changes in GNU Hurd,
GNU Mach, and the GNU C Library: then all the core Hurd stuff is covered,
and you don't have to worry about it later.  (For example, there is a
high possibility that Fotis, in addition to changes in GCC's Go source
files, will also be doing changes in libpthread (part of GNU Hurd) and/or
glibc.)  You can leave the field empty that asks you about files you have
already changed.  If you send in the forms to the email address indicated
on top of the attached file, please put me in CC so that I can track the
status.  For GCC Go, I think there is also a separate assignment (or
similar) needed for the Google Go code, Ian?

Open discussion.  Any discussion related to your GSoC work should be held
in public on the respective projects' mailing lists.  It is fine to send
your emails both to the debian-hurd/GCC/GDB list and also bug-hurd at the
same time, so that both the GCC/GDB folks and the Hurd folks can see it
and answer as appropriate.  It may also be a good idea to put your
mentors in CC, so they can easily see what's going on.

There are no stupid questions.  I do know my share of things of the GDB
and GCC code bases, for example, but I'm sure as you make progress, I'll
also spend a bunch of time reading the existing GCC and GDB code and
related Hurd code, and ask questions about it (which you perhaps then can
already answer).  For every "stupid" question you ask on IRC or the
project's mailing list, always remember there are at least three other
people who wonder about the same questions, but just didn't ask it yet.

Generally, no HTML email should be sent (several lists are configured to
reject HTML email, as Fotis already learned for the GCC list).  Please
make some effort to keep email threads readable (proper quoting of
previous messages, no top-posting, discussing one issue in one email
thread, etc. -- please ask if there are any questions about this, but
From the emails we exchanged so far with each of you three, that already
looks fine).

There are a few IRC channels that you can use for discussion: on
freenode: #hurd, #gdb; on OFTC: #debian-hurd, #gcc.  This is often
helpful for quick question/answer topics or interactive discussions
(assuming that someone is currently available to discuss with).  Please
be patient if there isn't someone answering immediatelly; some of us read
the backlog of messages in batches, and answer then.

In the past, we've made good experiences with weekly IRC meetings.  The
idea for these meetings is to discuss your next steps for the following
week(s).  We'll discuss the meeting time later on -- of course 19:00 UTC
(as used in the past) in not very suitable for China (03:00).  Yue Lu,
I'm sorry you stayed awake last Thursday and joined IRC -- and there was
no meeting, so I apologize that I didn't clearly tell you there was no
meeting scheduled.  Let's first start the regular IRC meetings once we've
found and set a suitable time.  But please: do not wait for the meeting
if you have anything to discuss, but instead contact us early.  When
you're stuck, it's often just a tiny hint that you need before you can
make progress again on your own.

The formally assigned mentors are for the Debian GNU/Hurd project Samuel
Thibault with Pino Toscano, for the GDB project I with help from Luis
Machado on the GDB/gdbserver side, and for the GCC project I with Ian
Taylor for the GCC Go side -- but the idea is that you learn to interact
with the existing community of these projects for discussing your
questions and getting your patches reviewed, and the mentors are mostly
for the formal/administrative stuff (which of course is not all discussed
in public, as appropriate).  The mentors will be doing the mid-term and
final evaluations in cooperation with the co-mentors.

Any communication (aside from scheduled IRC meetings) should be expected
to be asynchronous, with delays from seconds/minutes (IRC discussion) to
hours/days (email) to weeks (FSF copyright assignment) to mon...  We'll
try to answer any questions you have in a timely manner, but please keep
in mind that everyone of us mentors (as far as I know) is doing the GSoC
mentoring in his free time, so there may be delays if our time is needed
for higher-priority (work) tasks.

If there is a need for it, we can also arrange voice communication,
phone, Google+ Hangout, or similar.

Unfortunately, we're not quite near to each other on the globe, so any
personal meetings will be unlikely, but just in case: I'm located in
southern Germany, so please contact me should you ever be in the area.

Weekly reports.  Additional to the IRC meetings and any other emails you
send, we'd like some sort of weekly report, covering what you have done
in the last week, what worked fine, what didn't, and so on.  How/where
you do the reporting, we don't really care, as long as it's publically
accessible.  You can send a weekly status email, or post an article on
your personal blog, of host a page/blog on the GNU Hurd wiki (which
several GSoC students have done in the past; see some of the subpages on

It is best of course, if there is some correlation between the timeline
you proposed in your GSoC project applications and the progress you're
actually making, but it is to be expected that you have to adjust the
former.  (And don't worry if ther are weeks where you don't seem to get a
lot done -- things take time.)  Please do make some effort to predict how
log certain tasks will take (and then how long they actually took...):
this is a good exercise for the difficult topic of software development
time scheduling (speaking from my own experience...) ;-) and that surely
will be helpful later in your jobs, too.

Time commitment.  The GSoC is meant to be a full-time job, so five
regular work-days per week, something like at least 30 to 40 hours on
average.  How you schedule these we don't really care, but please
remember: if you start late in the morning, it'll get late in the
evening.  Also, if you have other commitments (like university work to do
in the next few weeks, as I know from two of you), it should be fine to
temporarily work less on your GSoC project if discussed in advance with
your mentor, and likewise if you want to take a break of a few days for
vacation, for visiting someone, or Justus going to the European Juggling
Convention.  It is, however, expected that the GSoC project is your focus
during the GSoC period, so it's not OK to work on another (full-time) job
in parallel, and similar.

GNU/Hurd system.  Please remember that the GNU/Hurd system is nowhere as
polished as a recent GNU/Linux system.  A lot of things work fine a lot
of times, but always expect for "strange" things to happen occasionally
-- these may of course be problems in the buggy code you've written ;-)
or perhaps just a strange thing the GNU/Hurd system "doesn't like".  The
community and the mentors will guide you through any issues, but you have
to talk to them so they know about what you're seeing.

Next steps.  It's now the community bonding period, in which you're to
continue interacting with the projects' community, and slowly begin
working towards your GSoC projects (subject to first finishing your
university work, of course).  For example, now it's high time to make
sure that you have the development environment/infrastructure for working
on your GSoC project: a suitably powered machine, etc.  Justus, anything
you need?  Fotis, please follow up on the emails Ian and I sent on this
topic for GCC -- for example, is you machine fast and reliable enough to
build GCC natively on GNU/Hurd?  Otherwise, we should look for a suitable
remote machine for you to use.  Yue Lu already has shown GDB testsuite
results that mostly match those I'm getting, so that should be fine.

Surely there are some other things I have forgotten, which we'll discuss
in the following.

And now: enjoy your work on your respective projects!  :-)


Please email the following information to assign@gnu.org, and we
will send you the assignment form for your past and future changes.

Please use your full legal name (in ASCII characters) as the subject
line of the message.

[What is the name of the program or package you're contributing to?]

[Did you copy any files or text written by someone else in these changes?
Even if that material is free software, we need to know about it.]

[Do you have an employer who might have a basis to claim to own
your changes?  Do you attend a school which might make such a claim?]

[For the copyright registration, what country are you a citizen of?]

[What year were you born?]

[Please write your email address here.]

[Please write your postal address here.]

[Which files have you changed so far, and which new files have you written
so far?]

Attachment: pgpxmdTNJLf6_.pgp
Description: PGP signature

reply via email to

[Prev in Thread] Current Thread [Next in Thread]