Contributing to STIR

This page attempts to motivate you to contribute to the STIR Open Source project and to list a few options to help, including of course contributing code.

Why would you contribute?

This could be rather obvious, but here are a few reasons:

But who owns STIR?

It doesn't really matter. STIR is Open Source and comes with an appropriate license (see our registration page and the LICENSE.txt in your distribution). That license tells you what you can do with the STIR source code and documentation.
Currently, copyright to parts of STIR is currently mostly owned by the original PARAPET partners, Hammersmith Imanet Ltd and/or General Electric.

But what's the deal then with ASC?

Kris Thielemans set-up Algorithms and Consulting Ltd (ASC) as an independent company. It does not (cannot) own STIR, but it can provide support (for a fee), accept donations, apply for grants etc. Hopefully, this will allow ASC to contribute to STIR in other ways (e.g. training, hosting of web-services...). Does that mean that ASC would benefit from your contributions? Yes, but so does everyone else!

How can you help?

Here are a few ways how everyone can help:

Easy:

Slightly trickier:

More involved:

Code and documentation contributions need further information but remember that doing the simple things above is just as important, so please help anyway you can!

Contributing code and/or documentation

Great! Now we have to discuss how to get your code accepted, and issues such as copyright and licensing.

Summary

You will need to discuss your contribution on the mailing lists and provide a document specifying the license that the copyright owner (usually you or your employer) wants to use for distribution. This license has to be the LGPL (or GPL if you have excellent reasons).

Some more info follows now.

Who accepts the contribution and how?

STIR is currently run by volunteers who you will have to convince by sending email to the stir-devel list. However, currently releases are prepared by ASC, so the final arbiter is Kris Thielemans. Of course, your chances of getting your contribution included will depend on how useful it is, how much this was discussed on the mailing list, what documentation/testing you make available, if you made changes to other files in STIR etc. If it happens that nobody volunteers to merge your changes with STIR, you can always make your changes available elsewhere of course.

Legal issues

Copyright

As soon as you write software (or documentation), it is protected by copyright law, which essentially means that the copyright owner can (in principle) prevent anyone to copy the work, or allow to do this under some licensing conditions. In some countries, the author of the software is the copyright owner, but in other countries (e.g. UK) it is your employer (this will clearly also depend on your contract). This means that you (probably) need to ask your employer/university permission to be able to add your work to STIR. You will need to confirm the copyright ownership in the document.

License

STIR has grown over the years by contributions from different parties. Nearly all these contributions were released under the Lesser GNU Public License (LGPL) version 2.1 or the GNU Public License (GPL) version 2. A very brief discussion of these licenses is given on our registration page, but these licenses require any distributed modifications (and, in the case of GPL, additions) to use the same license. Therefore, you will have to license your contributions under one of these two licenses.

However, it is possible that the license used for STIR changes in the future. This will depend on agreement of all copyright holders. To make this easier, we ask you to allow us to relicense the code to another Open Source license.

Paperwork

STIR currently has excellent information on ownership and licensing and we want to keep it that way. Therefore, you will need to provide an officially signed document to confirm copyright ownership and licensing agreement. One of the hardest parts can be to decide who owns the copyright to the software that you wrote. In many cases, that would be your employer or university (but not always). The situation depends on which country you live in and of course your contract terms. Once you have that sorted out, please prepare the following letter:

Please discuss details by sending email to stir@asc.uk.com.

Any comments on this web-page or on the procedure? Please discuss by sending email to the stir-devel list.



Last modified: Tue Jun 24 22:50:35 BST 2014