Hydrogen coding team - Getting involved

This document describes how one can get involved with hydrogen as a developer. Beside the technical development, you can also help us with other tasks, like maintaing the website or testing bugfixes. Just contact us via the mailling list if you're interested in such tasks.

1 - Coding team skills

  • C/C++ coding experience
  • QT (used only in the user interface)

2 - Download the development sources

git clone git://github.com/hydrogen-music/hydrogen.git

3 - Join the mailing list and forum

Development and documentation information flows back and forth on the mailing list, so you'll want to be subscribed. Patches can also be submitted to the list. You can find information on joining the mailing list as well as a link to the archives  here.

4 - Read the documentation

  • Project structure
  • Class details
  • Coding conventions

5 - Find a bug

Yes Hydrogen has bugs, it's pretty solid but try some edge cases, things that other developers may not have tried, if it falls apart, doesn't give you an error message, or just gives you a wrong error message its a bug and somebody needs to fix it.

TODO: fare riferimento al ticket system

6 - Fix a bug

Simple huh? Backup the source code then hack one copy around until you've fixed the bug. If you make a complete hash of things restore from your backup and start again, we all do it.

7 - Generate a patch

Once you've got your fix working clean it up so theres no debugging code left in etc, then when its nice and clean run:

svn diff > my_first_patch.diff 

8 - Test your patch

Get the latest version of the source, test it to make sure your bug is still there then apply the patch and test it again to make sure the patch works and fixes the bug properly. To apply the patch run:

patch -i my_first_patch.diff 

9 - Submit your patch

Email your patch to the list as an attachement with [PATCH] in the subject so we know what it is. Make sure you describe what the problem is and how you've fixed it, a few lines is generally enough.

10 - Sit back and wait

It may take a while for someone to try your patch out and commit it. We have lives and jobs too. We will get to it.

11 - Don't take offence

Sometimes patches get rejected. Read why it was rejected, learn the lessons, try again. It took me three attempts to get my first patch accepted but it was a lot better by take 3 then it had been at the start.

After you've had a few patches accepted you will be given commit access. There is no hard and fast rule on when this happens but keep submitting good quality patches and it will happen.

Getting Help

Remember that mailing list you joined.... If you're stuck, or want to understand why things are done one way and not another, or if somebodies already working on something, or any other question, or you just want to tell us how much we rock, send us a mail.

Remember, you are not alone. Stay connected with the rest of the development team. Ask questions! Don't get discouraged! We want you to be involved in Hydrogen for a long time to come.