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 Alfresco’s 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 Alfresco’s 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