Abstract

Click will be a Java EE web application framework.

Proposal

This proposal specifies the migration of Click web application framework to the Apache Software Foundation as a Top Level Project.

http://click.sourceforge.net/

Background

Click is designed to be simple to learn so that new developers can get up and running in a day. This is very important with commercial development teams where you have a wide range of skill levels and motivation. Large and sophisticated web frameworks actually works against this goal, so Click has been trying to balance capability and small footprint. The core framework has only 59 classes.

The design philosophy behind Click is best summarized in the Swedish word lagom which translates to not too little or too much, but optimal.

Rationale

Click is a modern Java EE web application framework released under the Apache License 2.0. It takes a component and page orientated approach to web applications with its main goals being ease of use and low barrier to entry. Another important focus of the project has been to provide high quality documentation and examples to get people started as quickly as possible.

We see Click becoming an Apache project as a logical step in its evolution. Becoming part of the Apache community will increase visibility and expose the framework to a larger community of developers.

Current Status

Meritocracy

Click was initially developed by Malcolm Edgar in 2003 and publicly released on sourceforge in March 2005. Since then there have been contributions from a number of developers across the world. New contributors are encouraged to provide patches, and later commit privileges are assigned to them. While there has been some turnover in the number of active committers, there are currently 4 active committers on the project.

The activity of individual members is visible using FishEye: http://fisheye3.atlassian.com/browse/click/

Most project decisions are reached via consensus over the click-dev mail list and by using JIRA to progress individual issues. Occasionally some issues have required voting to resolve, using Apache style voting rules. In the project there have been periods where off list discussions have been held on various issues.

In moving into the Apache Incubator off list communication would be strongly discouraged, and we anticipate using voting more prominently for progressing work and resolving issues.

Community

Click is a small but growing community of users and developers. Its two mailing lists receive around 200 messages per month. The project has always tried to encourage an open and friendly approach, and provide unbiased advice to the public.

Core Developers

Currently Active committers include:

  • Malcolm Edgar (Australia) - launched the project in 2005
  • Ahmed Mohombe (United States) - joined project in 2005
  • Naoki Takezoe (Japan) - joined project in 2006
  • Bob Schellink (South Africa) - joined project in 2007

Currently Inactive comitters have included:

  • Phil Barnes - joined project in 2005
  • Christian Essl - joined project in 2006
  • Stephen Haberman - joined project in 2006

Alignment

Click has already built up relationships with existing Apache projects especially Velocity and Cayenne. Using Velocity as its default rendering engine, Click has formed a close relationship with the Velocity community. Click also supports good integration with the Apache Cayenne ORM framework.

Known Risks

  • Orphaned Software: Click has a healthy community of users and developers and has a very low risk of becoming orphaned.
  • Experience With Open Source: Click was started as an open source project in 2005 and has remained so for 3 years.
  • Homogeneous Developers: The community is very diverse with users and developers from all over the world.
  • Reliance on salaried developers: None of the Click developers are compensated for their contributions. It is a complete voluntary project.
  • Relationships with Other Apache Products: As mentioned in the Alignment section, Click has formed close relationships with Velocity and Cayenne. Other Apache products used include commons-* and log4j.
  • An Excessive Fascination with the Apache Brand: Although it is true that the Apache Brand will increase visibility of the framework, we are more interested in building stronger relationships and influence Apache projects such as Velocity.

Scope of the project

Currently Click consists of the following parts: the core framework, an extras package for non core controls, an examples project and a quick start project. There is also an Eclipse plugin called ClickIDE.

Initial Source

Click sources is available from http://sourceforge.net/projects/click

External Dependencies

There are some concerns over incompatible licensed libraries Click depends on.

Required Resources

Mailing lists

Create new mailing lists

  • click-dev
  • click-private


Subversion Directory

Migrate the current subversion code from sourceforge to Apache

Issue Tracking

  • Need to create a new JIRA project called CLICK for the Click framework
  • Migrate the current JIRA issue tracker from http://www.avoka.com/jira/

Other Resources

Need to create a new Confluence Wiki

  • CLICK

Initial Committers

The initial committers for the project should include:

  • Malcolm Edgar
  • Bob Schellink
  • Naoki Takezoe
  • Henning Schmiedehausen
  • Will Glass-Husain
  • Ted Husted
  • Andrus Adamchik

Sponsors

Champion

  • Henning Schmiedehausen

Nominated Mentors

  • Will Glass-Husain
  • Ted Husted
  • Andrus Adamchik

Sponsoring Entity

  • Velocity
  • No labels