Page history Edit this page How do I edit this website?

SoC 2009 Application


Group Name

Fiji is Just ImageJ

Home Page URL

Public Email


Fiji stands for “Fiji is Just ImageJ”. ImageJ is a public domain scientific image processing application sponsored by the National Institute of Health. ImageJ runs on the Java Virtual Machine and thus has direct access to numerous and diverse public java libraries.

All Fiji project founders and contributors have written large plugin collections and ImageJ-centric applications. At some point, it was inevitable to merge our projects into a centralized and organized framework, which includes consistent and updated documentation for all its components.

For the creation of Fiji, beyond our own ImageJ-centric applications, we selected and tested a subset of the literally thousands of open source plugins that exist for ImageJ, and integrated them along with several open source libraries into a consistent framework. Plugins added capabilities beyond mere image processing, including image segmentation, image registration, 3D visualization of image volumes, and support for a variety of JVM-supported scripting languages (so far: javascript, jython, jruby, clojure and beanshell).

Fiji as a community is supported by a variety of scientific research institutions with vested interests on image processing, including but not limited to the Howard Hughes Medical Institute Janelia Farm, the Max Planck Institute of Molecular Cell Biology and Genetics in Dresden, and the Institute of Neuroinformatics of the University of Zurich and ETH Zurich.

Why is your group applying to participate? What do you hope to gain by participating?

There are numerous tasks suitable for independent small projects, that would enhance Fiji substantially. With the GSoC, we see an opportunity to bring young bright people to our project, using the projects as their entry point to both the human aspects of our community (particularly its frequent hackathons) and the project code base.

What is the main public mailing list for your group?

What criteria do you use to select the members of your group? Please be as specific as possible

All of the prospect mentors of the Fiji team must have proven their competence by being author of at least one popular ImageJ plugin. This ensures that they have at least intermediate knowledge of Java, the ImageJ API, and the community process. It also guarantees that the mentors do not “go away”, and that they can finish the project in the unfortunate case that the student “goes away”.

Has your group participated previously? If so, please summarize your involvement and any past successes and failures

No. The Fiji project is not even two years old, so there was not much chance yet.

If your group has not previously participated, have you applied in the past? If so, for what sort of participation?

We have not applied in the past, but one of our mentors has experience from serving as a mentor for the Git project already two times.

What license does your project use?

GPL (GNU Public License), version 2

What is the URL for your ideas page?


What is the main development mailing list for your group?

What is the application template you would like contributors to your organization to use


What is your plan for dealing with disappearing contributors?

[aka students that vanish]

In the event that a student abandons without completing his/her project, the Fiji community will pick up where the student left and continue the work without the student.

The mentors will setup the project together with the student, splitting the project into small chunks (milestones) that can be completed within reasonable spans of one or two weeks. Students will be advised and encouraged to document their code as they go, and code documentation (concise yet complete) will be one aspect of the evaluation. Proper documentation will enable any new student or any Fiji community member to pick up the project where the student left it.

What is your plan for dealing with disappearing members?

[aka mentors that vanish]

Both mentors, Johannes Schindelin and Albert Cardona, have scientific research jobs directly intertwined with the software application Fiji. It is in their prime interest to gather new members and to develop Fiji further. Both have mentored students outside the GSoC program in the recent years.

In the unlikely event that any of the mentors must drop off, another mentor will be arranged to step in. The Fiji community has plenty of people involved in all aspects of the software, that would happily take on the mentorship to help the students finish their chosen project. In all likelihood, such new mentor would already be acquainted with the student via the mailing list, and through direct interest in, and awareness of project activities.

What steps will you take to encourage contributors to interact with your project’s community before, during and after the program?

[aka students]

The Fiji team developed good communications on the mailing list as well as on IRC out of necessity: the members live in different countries. This culture of communication will help the students not to be afraid to ask for help and report their progress.

Further, the mentors will make sure to hold “office hours” on IRC, and will generally try to start the conversation if the students do not do that themselves.

Frequent informal and short status updates will be asked for, so that the students do not lose focus, and if (geographically) possible, the mentors will meet their students in person.

What will you do to ensure that your accepted contributors stick with the project after the program concludes?

The Fiji group has been meeting 3 to 4 times a year since June 2007, and we have 3 meetings already planned for this year 2009, in three different countries. Such meetings are hackathons: we sit down together and code, exchange image data for testing, and usually hold one or two workshops for users.

We will invite and fund the students to attend a hackathon after the Summer. The environment in these hackathons is actively kept friendly and relaxed, while at the same time focused on the variety of scientific problems all members are trying to solve.

Backup organization administrator?

Johannes Schindelin and Pavel Tomancak