incubator-general mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Angela Cymbalak <>
Subject [PROPOSAL] PicaGalley photo gallery
Date Sun, 20 Jul 2008 14:42:43 GMT
This proposal is located at



PicaGalley will be a photo gallery application with web access.


PicaGalley will be a complete open source photo gallery application 
including a content repository for the images, a display piece, an 
access control layer, and upload capabilities. The idea is to have a 
rigid design for the content repository with a very flexible display 
piece. The images in the content repository will be protected with 
granular access control.


Photo gallery software provides users with the means to store, 
manage, and publish photographs and other digital images. A user 
creates one or more photo albums and puts images into them. Metadata 
stored with the images allows for searching. The primary means to 
access the photo gallery will be web interfaces, for human 
interaction through a browser as well as for machine retrieval. 
Images are published by granting read access to everybody or to a 
group of invites.

Initially the proposal idea for a photo gallery was brought forth due 
to a project that had been started at Nechtan Design. While 
discussing the possibility of forming a community around that project 
(called Caitrin) a community started to form. Others with interest in 
the subject and problem space started putting in their ideas and 
offered to donate code that could help. It was decided that the 
project should start from scratch with a new architecture. This 
proposal is based on a high level design that evolved from the 
subsequent discussions.

We are aware that we have significant work ahead of us, not only in 
the code to be written but in finding a community to support the project.


"A picture tells a thousand words..."

If a picture tells a thousand words then a gallery of pictures tells 
an amazing story. It could tell this story as part of a larger web 
site, in a blog or on its own. Unfortunately, there exists no Java 
open source application to assist the community to tell this story. 
PicaGalley will change that.

There are many photo galleries that are written in PHP. Each of these 
addresses a particular need and many work well for their intended 
purpose. However, there is not a photo gallery that is written in 
Java. As Web 2.0 continues to grow it only makes sense that the 
community provide not only PHP but also Java applications to allow 
everyone the ability to publish their own content. Apache started 
down this road with Roller and can continue with PicaGalley.

Initial Goals

    * Create a prototype by drawing pieces from existing efforts
    * Recruit additional community members
    * Finalize the Content Repository
        * Use cases - capture ideas such as access control that might 
not make first drop
        * Layout
        * Unit tests (simple drivers for loading, accessing, searching, etc.)
    * ReST structure
        * Use cases

        * URI format
        * semantics
        * prototype implementation
    * Web service
        * Use cases - want to capture ideas for process (Ode) integration

        * WSDL Description
        * prototype

Current Status

Responses to the initial proposal uncovered several existing efforts 
at implementing photo gallery software in Java. Instead of picking 
one codebase over the others, we started from scratch with a 
high-level design. Pieces will be taken from the existing efforts as 
appropriate. These efforts are:

    * Caitrin: Originally developed for a fee at Nechtan Design then 
voluntarily updated. The code is in use on a test site and ready to 
be moved to production. It runs on Tomcat and uses a relational DB 
for storing metadata as well as the filesystem for storing images. 
This codebase was at the core of the initial proposal for this podling.
    * Noel Bergman developed a photo gallery software he is willing 
to donate. The software is in production use, technical details 
remain to be investigated.

    * Carsten Ziegeler is working on a photo gallery software based 
on Apache Sling (currently incubating), which uses a JCR backend for 
storage. This codebase is destined as a contribution to Apache Sling.

    * Luciano Resende is working on a photo gallery sample for Apache 
Tuscany SCA, using a filesystem storage backend. This codebase is 
already at Apache, see


The PicaGalley project will demonstrate the best in meritocracy. Due 
to the fact that the project is in its infancy and only a small 
community exists, the community that grows to surround it as it grows 
within the ASF will all adhere to the fundamentals of meritocracy. 
Every person who is currently part of the community has given a 
significant contribution of either architecture expertise and/or code.


After the initial proposal for a Caitrin podling, which came with no 
community at all, a small community has formed within the ASF. Some 
people are interested in the problem domain itself, while others are 
interested in showcasing how particular technologies can be used to 
solve some aspect of the problem.

Core Developers

Angela Cymbalak

Known Risks

Orphaned Projects

We are starting with a very small community. While several people are 
interested, it remains to be seen how much time they can spend here. 
The risk of becoming an orphaned project is high.

In light of this situation, we are putting the initial focus on 
delivering working prototypes based on existing efforts at Apache 
Tuscany SCA and possibly at Apache Sling (currently incubating). 
Working prototypes will enable interested parties to download and 
play with the code and entice them to get involved. Relying on 
existing efforts means that our work results can find a home at 
Apache even if the podling itself should fail to gain sufficient traction.

Inexperience with Open Source

The initiator of this proposal has limited experience with open 
source. She is committed to learning the Apache Way. The other 
members of the community we currently see forming are Apache PMC 
members or ASF members.

Homogeneous Developers

The current community grew out of a desire to see different pieces of 
technology put to use and an interest in the problem space. There is 
no single entity that is providing all the developers for this project.

Reliance on Salaried Developers

This project is not in the profit stream for any of the participants.

Relationships with Other Apache Products

There are several other Apache Products and Apache Incubator projects 
that are being evaluated for use with this project. Some members of 
the community are involved because of wanting to see a particular 
technology put to use. Likely candidates are:

    * Jackrabbit for the backend
    * Tuscany SCA for the WS interface

    * Sanselan for metadata extraction
    * Sling for the frontend
    * maybe JSecurity for authorization

There were brief discussions with the Apache Roller project about 
implementing the photo gallery as a plugin to the Roller weblog 
software. The community response indicated general interest but 
limited enthusiasm. The intent of this proposal is to develop a 
standalone photo gallery application, whereas the Roller community is 
likely to consider it an accessory feature. We therefore prefer to 
start an independent effort, which can later be tied to Roller by 
means of a plugin.

A Excessive Fascination with the Apache Brand

The Apache community has shown themselves to be invested in the code 
that they are writing because they enjoy the act of developing a 
quality product that can be easily used by others. They rely on 
collective knowledge instead of the knowledge of the individual and 
are willing to share that knowledge with others. We feel that this 
application will continue to grow well under the guidance, leadership 
and structure of the Apache community and the ASF.


No documentation currently exists.

Initial Source

No initial source is currently identified. All the code bases listed 
above will be donated in order to prevent IP pollution.


No cryptography is currently utilized in this project.

Required Resources

Mailing lists

The minimum mailing lists will be needed:

    * picagalley-private (with moderated subscriptions)

    * picagalley-dev

    * picagalley-commits

    * picagalley-user

Subversion Directory


Issue Tracking

JIRA picagalley(picagalley)

Other Resources


Initial Committers

Angela Cymbalak (a DOT cymbalak AT nechtan DOT org) (cla submitted)

Luciano Resende (lresende AT apache DOT org)

Help Wanted

Please comment on the general@ list if you are interested in joining 
this project!





Noel Bergman

Nominated Mentors

Carsten Ziegeler

Martin Cooper

Roland Weber

Sponsoring Entity

We kindly ask the Incubator to sponsor this project.

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message