There are many ways in which you can contribute to HIPE. Here are some suggestions to get you started:
  • Software. Writing and modifying software is probably the first thing that comes to mind when contributing to an open source software. This is what these tutorials are about. You can contribute software on many levels:
    • Write simple scripts. Your script can be just a handful of lines long, but if it does something useful, there is no reason not to share it.
    • Modify pipeline tasks. Tasks are the main building blocks of data processing in HIPE. You may want to improve the algorithm of a task, or maybe add new parameters, and then share your result.
    • Write new tasks. If there is a data processing or analysis algorithm that is not yet part of HIPE, you can add it as a task. Note that you do not have to write a task to add a function to HIPE: you can also write a simple script with a function. However, tasks can take advantage of advanced features for free, such as checks on input parameters and automatically generated graphical interfaces.
    • Write new HIPE components. This is the most advanced level of software contributions to HIPE. You can write complex components with many windows and add them to HIPE as plug-ins.
    Read About these tutorials below to find the right documentation for each of these tasks.
  • Documentation. Documentation is never 100% perfect. There is always something to improve, correct or update. You can contribute to our effort in several ways:
    • Send feedback to the Editorial Board by clicking the envelope icon in the toolbar of the HIPE Help System.
    • Add comments to documentation pages (available from HIPE 9.0).
    • Take part to documentation sprints, where you can edit and comment on a piece of documentation for a week, without limits.
  • Testing. Whenever you use HIPE, you are testing it. Every time you think you have discovered a bug, please report it by opening a Helpdesk ticket (Help > HSC Helpdesk) or by sending email feedback directly to HIPE developers (Help > Give Feedback).
    Your help is also appreciated during acceptance testing before a major HIPE release. The more volunteer testers we have, the more bugs we can squash before HIPE is released. Keep an eye on the HIPE community home page, or subscribe to the interest mailing lists, to know when the next testing campaign is about to start.
  • Discussion. Exchanging views with your peers and with the HIPE team is essential. The more we know about you, the more we can tailor HIPE to suit your needs. In addition to all the feedback channels described in the points above, the HIPE community wiki is the main forum to start discussions and exchange opinions.

About these tutorials

These tutorials were written to be as self-contained as possible. Common content is repeated in each tutorial, so you do not have to go back and forth. You do not have to read the tutorials in any particular order.
Here is some advice on what to read first:
  • If you are completely new to HIPE scripting, we recommend you start by learning the basics in Chapter 1 of the Scripting Guide.
  • If you want to learn the basics about tasks, or want to turn a function you have into a class, read the Creating your first Jython task or Creating your first Java task tutorial. We recommend you write your tasks in Jython rather than Java, unless you have the algorithm you want to turn into a task as Java code already.
  • If you want to modify a HIPE task, read the Modifying an existing Jython task or Modifying an existing Java task tutorial.
  • If you want to create more complex HIPE components, you have to be familiar with Java programming and learn about HIPE internals. Go to the Contributing to HIPE wiki pages, where you will find several articles on adding components to HIPE.