The document summarizes a webinar about the Alfresco Community Committer Program (ACCP). The ACCP aims to facilitate contributions to Alfresco's community edition through an Apache-style approval process. The webinar covered the ACCP's purpose and objectives, committee overview, approval process, projects approved so far, lessons learned, and how to get involved. Initial approved projects included a Calais integration, metadata embedders, and German/French language packs. Issues preventing approval included outdated code, errors accessing source, and lack of documentation.
2. 7/27/2010
Agenda
ACCP Purpose and Objectives (Mike Vertal)
Committee Overview (Russ Danner)
Process and Approval Standards (Jeff Potts)
Approved Projects thus far (Ray Gauss)
Lessons Learned thus far (Steve Reiner)
How to Get Involved (Aingaran Pillai)
Q&A
2
3. 7/27/2010
Purpose
Facilitate a structured process for:
Incorporating software contributions
Into Alfrescos Community Edition
And even Enterprise Edition
Foster developer community
Promote high quality software contributions to
the Alfresco platform
Apache-style process
3
4. 7/27/2010
Eligible Software Projects
Any and all
Software extensions,
Add-ons,
Plug-ins,
Integrations,
Etc.,
That enhance Alfrescos core capabilities
Must meet a certain set of standards
Approval through voting by the ACCP
Committee
4
5. 7/27/2010
ACCP Committee
A community-led, volunteer group
Governs ACCP processes and standards
Alfresco employees participate on the Committee primarily in an
advisory capacity only
Define the minimum criteria and standards that
contributions must meet
Approve candidate contributions through a voting
process
Communicate all actions, standards, processes, and
plans to the Alfresco community
5
6. 7/27/2010
Committee Members
Regular Members
Russ Danner (Rivet Logic)
Ray Gauss II (Rights Assist)
Aingaran Pillai (Zaizi)
Jeff Potts (Metaversant)
Steve Reiner (Integrated Semantics)
Mike Vertal, Chairperson (Rivet Logic)
Non-voting Members
Gabriele Columbro (Alfresco)
Nancy Garrity (Alfresco)
Paul Holmes-Higgin (Alfresco)
Peter Monks (Alfresco)
Mark Rogers (Alfresco)
6
8. 7/27/2010
Software Criteria
Minimum Requirements (Incubator):
MUST include an easy-to-install package. In general, this means
using the generally accepted distribution approach for the type of
contribution
MUST have a repeatable build that could be automated as part
of a continuous build process (Ant or Maven)
MUST include source code. The source and any dependent
libraries included with the distribution must be licensed in such a
way as to not conflict with the Alfresco Community license.
MUST contain basic documentation
8
9. 7/27/2010
Software Criteria
Minimum Requirements (Community):
All of the above minimum requirements for Incubator
MUST meet minimum coding standards documented here:
http://wiki.alfresco.com/wiki/Coding_Standards
MUST include unit tests
MUST contain documentation that, as a minimum, includes:
Brief "about"
Dependencies
Install steps
Test steps
9
10. 7/27/2010
Software Criteria
Other considerations:
High code quality, good test coverage, useful documentation and
comments
Leverages Maven for dependency management, build
Contribution is congruent with high-level Alfresco product direction
Contribution generated interest in incubator
Good ratings, feedback
Evidence of end-user adoption
Project lead is a previous Community contributor
Project lead has a team of at least one other that can help
Contribution has synergies with or is a dependency of other projects
Contribution has good potential "staying power"
Project lead is particularly passionate about this contribution
Contribution is important to project lead's company (products, services,
solutions, marketing message, etc.)
10
11. 7/27/2010
Initial Approved Projects
Calais Integration Semantic Auto-Tagging
Leverages Open Calais service to extract, tag, and search semantic metadata
Positives: usefulness, organized, clean code, javadocs, Alfresco 3.3, amp,
documentation
Metadata Embedders
Framework for writing properties into the content file
Positives: usefulness, activity rating, organized, Alfresco 3, ant build, javadocs,
amp
Suggestions: code formatting, build instructions, more committers
Other Possibilities: combine with metadata writer project, more content types
German Language Pack
Positives: Alfresco 3.2, Share, many contributors, recently updated
Suggestions: no forums, no automated build
French Language Pack
Positives: Alfresco 3.2, Share, many contributors, recently updated
Suggestions: better forum responsiveness
11
12. 7/27/2010
Issues Preventing Approval
Not having latest code in source code repository
Errors accessing source
Missing basic install / setup doc (readme.txt, install.txt, or
devenv.txt etc.)
Not being updated for newer versions of Alfresco
Not supporting both Share and Alfresco Explorer
(language packs)
Multiple projects doing the same thing
12
13. 7/27/2010
How to Get Involved
Learn more at wiki.alfresco.com/wiki/accp
ACCP Charter
Project catalog
Ways to Participate
Volunteer (committee memberships, mentoring, )
Take lead on community projects
PHP library
Facebook integration
MediaWiki integration
Contribute projects
Nominate projects
Provide feedback
13