People often come to us and state that they'd like to help with the GNU/Hurd. This is very good and very much encouraged: we're always looking for volunteers to help with the effort! However, for things to eventually become productive, we'd like every new potential contributor to read through the following list of items and spend some time thinking about those.
What areas are you interested in contributing to?
Think a moment about this list: porting and extending existing software to run on Hurd systems; work on existing or write new Hurd servers or libraries; work on the standard C library; make Hurd stuff usuable from other programming languages than C; work on the current Mach microkernel; do research and development of a next-generation microkernel; help with development of new Hurd libraries and servers on top of that. Those projects are all within the Hurd topic, but are vastly different projects.
How much time do you have?
Do you plan to work on just a small project, or do you have time for longer development?
How is your expertise about system and kernel programming?
Sadly we don't have the ressources to teach you from ground-up. We will -- of course! -- try to give answers to specific questions, but on substantial parts of your contribution you'll have to work on your own. (Unless there is someone who is already working in the same area, of course.)
Have you previously been working on Free Software projects?
Are you used to the working-style Free Software projects bring with them? Did you already contribute to other projects? What sort of contributions?
What is your motivation to work on the GNU Hurd?
Every new contributor is very much encouraged to take some notes about these items and post them to bug-hurd.