Contribute to the DSpace Development Fund

The newly established DSpace Development Fund supports the development of new features prioritized by DSpace Governance. For a list of planned features see the fund wiki page.

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 7 Next »

Contributing to DSpace:

Ways To Contribute and Participate

You do not have to just contribute code! There are other ways you can contribute:

  • Communicate - Use the Mailing Lists, this Wiki and the DSpace Chat Channel to communicate with the community
  • Congregate - Attend user groups, conferences, library events, developer meetings - and any other venue where DSpace users meet to share information and ideas]
  • Test - Download and try out beta releases; provide bug reports, experiences, feedback. Our DSpace Demo Server provides a place to test the latest and greatest version of DSpace.
  • Develop - Contribute bug fixes, new features, developer cycles. Contributing code is far easier than you might think! See the ContributionGuidelines for more details.
  • Translate - Translate the DSpace user interface into your language, using the new language pack feature of DSpace 1.3 and subsequent versions. See I18nSupport for more details.
  • Prototype - The best way to gain support for an idea is to build and share prototype code. If you'd like to share existing prototypes, see the ContributionGuidelines for more details.
  • Deploy - Share your experiences in deploying DSpaces in different organizations and situations, at large and small scales
  • Support - Become active members on the mailing lists , answer others' queries and help solve their technical problems
  • Experiment - Take the system for a spin, try it out with different types of content and scenarios; tell everyone what you find. Again, the DSpace Demo Server provides a place to experiment with the latest and greatest version of DSpace. (If you are running a larger, scalability test experiment on the Demo Server, please let us know by emailing the 'dspace-devel' mailing list
  • Donate content and metadata - To test and experiment with DSpace, free test collections unencumbered by restrictive usage rights are needed. Contact us via the mailing lists if you have content to donate for testing.
  • Let us know if there's a way we can ease the process of contributing to DSpace
  • Don't be shy! Contributions don't have to be 100% polished or perfect; no one will think any the less of you. "Share early, share often" is a well-known open source mantra. The sooner you contribute something, the sooner others can help with the polishing, and you no longer have to maintain the customisation against the evolving core DSpace platform, since it will be part of the platform!

Platforms for Contribution and Participation

  • This Wiki - Help making this Wiki a useful, concise and up-to-date information source by
    • supplying content
    • correcting content
    • deleting obsolete content
    • structuring content
  • The Mailing Lists - Take an active part in the discussion on DSpace.
    • share your thoughts about DSpace
    • ask questions
  • DSpace Community Sandbox - A Open Source shared community environment for working on DSpace Modules and Prototypes.
    • Add your projects, modules, protypes and code.

If You Want to Contribute

The overriding mantra is share early, share often. Here are a few things to consider:

  • Please be sure to share your plans with the DSpace community on the dspace-devel list before embarking on any sizable development effort. This will ensure you achieve your goals in a way that is consistent with the DSpace architecture and plans of the rest of the community. This will minimize the chances of a scenario where you have invested a large amount of time and effort into a body of code that does not fit in with the DSpace architecture or the consensus of the community, meaning that you need to spend further time refactoring your code or worse, 'forking' the code.
  • Develop incrementally; try and implement and contribute a basic form of your feature as soon as possible, rather than aiming to implement a complete and 'polished' solution. This will help ensure you're on the right track with regards to the rest of the DSpace community and platform. The sooner your code is part of the core code base, the less time you will have to spend 'chasing' the main code base, i.e. keeping your changes up-to-date with that core code base.

Submitting a Patch

See ContributionGuidelines for guidelines submissions must adhere to. The mechanics of creating a patch file are described in Guide to Developing with DSpace.

Copyright and Licensing

In the words of the PostgreSQL Global Development Group, which also uses the BSD license, "The simplest explanation of the licensing terms is that you can do whatever you want with the product and source code as long as you don't claim you wrote it or sue us." The BSD License under which DSpace is made available does not require you to make your changes public or open-source. It does allow for proprietary commercial use, and for DSpace-derived creations to be incorporated into proprietary commercial products. Works based on DSpace may even be released under a proprietary license (but still must maintain the license requirements).

You are encouraged, but not obligated, to share your contributions with the DSpace community. If you choose to do so, you will need to sign over copyright and intellectual property rights of your code to DuraSpace, to be distributed via the BSD license. DuraSpace is a 501c(3) non-profit established to be the legal guardian of the code and to remain mission centric on providing free and open source software for management and archiving of digital works. Also, your code cannot rely on any non-BSD compatibly licensed code.

The BSD license means there is no advantage to be gained by your university (or anyone) retaining copyright, and that by having different copyright holders of different sections of the code, we will be rendered inflexible regarding copyright and licensing in the future, we do ask that you transfer copyright of your modifications to DuraSpace.

You will receive full acknowledgment for contributing the code; so I do encourage you to incorporate your enhancements to DSpace's functionality for everyone to benefit. You will benefit too since you will neither have to re-incorporate the changes with new versions of DSpace, nor maintain this code solely yourself!

  • No labels