Bertrand Delacretaz wrote:
On Sun, Nov 16, 2008 at 8:12 PM, Darren Hague <[EMAIL PROTECTED]> wrote:
...I think that now is the right time for a vote, so please vote +1 to accept
ESME into the Apache Incubator, or -1 (with comments) if you think ESME
should not be in the Apache Incubator in its present form....
Could you please copy the proposal from
http://wiki.apache.org/incubator/ESMEProposal here in this thread? As
that wiki page might change later, this helps documenting what we
voted on.
Good idea. Here is the proposal, last changed on 8th November:
Abstract
Enterprise Social Messaging Experiment (ESME) is a secure and highly
scalable microsharing and micromessaging platform that allows people to
discover and meet one another and get controlled access to other sources
of information, all in a business process context.
Proposal
We propose to move future development of ESME to the Apache Software
Foundation in order to build a broader user and developer community. We
hope to encourage contributions to and use of ESME, especially as an
enterprise-grade text messaging platform for use behind the corporate
firewall.
Background
Adopting social networking concepts such as tags and groups, ESME
provides the business communications framework that allows for the
fastest and most reliable way of discovering the best solution to
everyday problems for people working in peer and extended networks. It
reduces the risk of applying suboptimal solutions by making it easy to
find the right people at the right time with the expertise for a given
situation by allowing the participation of mobile workers, integrating
with existing systems, and providing for contextually appropriate
document attachments.
The ESME architecture has been devised to meet the business requirements
associated with reliability and scalability. The use of the Scala
programming language and the Lift web framework on the server provides
rapid development capability as well as browser push functionality
("Comet") as standard. The open server side architecture allows other
messaging environments - internal (Alerts, Enterprise Services, etc.) as
well as public (Twitter, external web-services, etc.) - to be consumed
as messaging sources. An event-driven actions framework within ESME
allows users to filter their information flow as well as to forward ESME
messages to other systems via HTTP or email.
The ESME server is written in Scala and uses the Lift web framework to
produce a browser-based user interface and also to expose a REST API.
This allows for other clients, and an Adobe Flex/Air client using the
REST API is a part of the project. Search functionality and textual
analysis is provided by using the Compass wrapper for Lucene.
The use of Adobe Flex/AIR on the client assures that business users are
given a user interface that meets their needs regarding functionality
without clutter. ESME's open architecture enables the possibility of
other client technologies such as Symbian S60 mobile, SAP Web Dynpro,
RIM BlackBerry <http://wiki.apache.org/incubator/BlackBerry> and Apple
iPhone as examples.
The alpha version of ESME is currently "live" at [WWW]
http://www.esme.us/esme/index and the AIR client is also available to
download from the same address. This version was presented in front of
around 5,000 developers at the Demo Jam events during SAP's Tech-Ed
conferences in Las Vegas and Berlin.
ESME focuses primarily on usage in enterprise settings where the use of
open-source software is often controversial. Our decision to move to
Apache will help further the use of open-source software in corporate
settings especially as it has already been architected for inclusion in
SAP environments.
Rationale
ESME has attracted a great deal of media and end-user attention based on
its unique feature-set and the underlying technology (see [WWW]
http://blog.esme.us/2008/09/25/esme-in-the-news/). We believe that
ESME's vision is unique in the area of microsharing.
The ESME project team is interested in joining the Apache Software
Foundation for several reasons:
*
To help the project attract contributors and service providers who
will feel more comfortable with the licensing coming through a
respected, well known and established organization such as Apache.
*
To facilitate the growth of a broader community of users. The
project currently lacks sufficiently clear direction, leadership,
and process; we believe the project will benefit greatly from
Incubator mentorship.
As the only open-source micro-messaging ("Twitter-like") project which
is both enterprise-oriented and targeted at the Java platform, we think
the ESME project is an ideal fit for the Apache Software Foundation.
Current Status
Meritocracy
Since the project's inception, its development has been coordinated
through collaborative decision-making on the mailing list, through daily
scrum calls, via Twitter and using open discussion on ESME itself. The
ESME community encourages suggestions and contributions from any
potential users and developers. The ESME team has no leader: it operates
by consensus among a set of core contributors aided by a larger group of
allies who help the project in any way they can. All of the core
developers are committers to the current repository; new committers are
granted access once they have demonstrated an understanding of ESME and
have at least a proof-of-concept of their patch working.
Community
Many members of the team are SAP Mentors, i.e. professionals who "are
role models who differentiate themselves through the high quality and
frequency of their community contributions, their perspectives,
attitudes, and interaction styles. They are subject-matter experts who
are passionate about SAP and share their opinions and insights with the
community" (Source: [WWW]
https://wiki.sdn.sap.com/wiki/display/SAPMentors/SAP+Mentor+Initiative+FAQs).
In addition, team member David Pollak runs the Lift project, and is an
active member of the Lift and Scala communities.
The important role that the community plays is also evident in the
number of available ESME clients (ABAP, VBA, Java, Javascript, etc.)
that were contributed by the community and which are either available in
the Google Code repository ([WWW] http://code.google.com/p/esmeproject/)
or on the ESME blog ([WWW] http://blog.esme.us/).
Core Developers
David Pollak (most of the Scala code) Darren Hague (some Java, Scala and
JavaScript <http://wiki.apache.org/incubator/JavaScript> code) Mrinal
Wadhwa (most of the AIR/Flex code, some HTML) Thomas Jung (most of ABAP
code) Athavan Raja (some of the ABAP code) Vassil Dichev (some Scala
code) Dick Hirsch (VBA & JavaScript
<http://wiki.apache.org/incubator/JavaScript> code) Anne Kathrine
Petterøe (some HTML)
Alignment
ESME aligns well with ASF projects utilizing J2EE infrastructure such as
Tomcat. Of particular relevance are projects such as Lucene and Maven.
Key libraries used include Lift and Compass, both of them
Apache-licensed projects. ESME does not use any GPL code.
Although ESME originated within the SAP community and has SAP-specific
extensions, the core server code is and will continue to be designed to
run on any J2EE-compliant server. SAP- (or other vendor-) specific
extensions will be implemented as modular plug-ins, so as not to create
a dependency on SAP or any other vendor.
License
The ESME codebase is Apache 2.0 licensed, and currently hosted at Google
Code.
Known Risks / Avoiding the Warning Signs
Orphaned Products
Most of the active developers aim to become Apache committers and have a
long term interest in developing and maintaining the code.
Most of the Scala and Lift knowledge for the ESME server currently
resides with David Pollak. If David were to leave the project, this
would significantly affect the pace of server-side development. However,
Darren Hague, Vassil Dichev, Mrinal Wadhwa and others have all spent
time working with the server code and could continue the work in David's
absence, albeit more slowly. In addition, we hope that joining the
Apache Software Foundation will help bring in more developers who may be
interested in using ESME to learn or polish their Scala & Lift skills.
In time, this would mitigate the project's dependence on David's
knowledge. Another mitigating factor is that the Scala and Lift
communities have active and helpful mailing lists for any queries that
the ESME team may have.
Inexperience with Open Source
As a lead developer, David Pollak has significant experience with
open-source projects including Lift, Social Fabric, and others. His
guidance has been extremely useful in ensuring we use libraries with
Apache-compatible licenses. Although many members of the team have no
prior open source committer experience, they have become familiar with
the open source approach through their involvement with ESME, which was
community-based from the start, and moved source control and issue
tracking into the open on Google Code in September. Moving to the Apache
Software Foundation would enable the team to learn more about open
source project governance and to correct bad habits such as a tendency
to use our private Google group for discussion and a tendency not to
record minutes during our team conference calls.
Homogenous Developers
The ESME project team consists of more than just developers. As a result
of our focus on the enterprise, the individuals involved range from
process experts, UI designers, bloggers and marketing gurus to Java
developers, Scala developers and ABAP developers who are joined by a
common desire to bring microsharing to the enterprise.
The current list of committers includes developers from several
different companies plus many independent volunteers. The committers are
geographically distributed across the U.S., Europe, and Asia, and they
are all adept at working in a distributed environment.
Reliance on Salaried Developers
Some of the initial committers are salaried developers employed by SAP.
Like everyone involved in the project, however, they work on ESME in
their own time, and SAP does not own any of the ESME code. The remaining
developers are individual volunteers who are passionate about technology
and the ESME vision.
Relationships with Other Apache Products
ESME uses Maven for its builds, and the current stable release is
deployed on Tomcat at [WWW] http://esme.us; when running in
developer/test mode, it uses Derby as the database; Lucene is used for
the search engine, wrapped by the Apache-licensed Compass library. A
closer association between ESME and Apache OFBiz may also be of
interest, since ESME has already proven its ability to integrate well
with SAP and other ERP systems. A tighter integration in this area could
prove beneficial to both projects.
An Excessive Fascination with the Apache Brand
The ESME team will strive to avoid inadvertent abuse of the Apache brand
and will work with the Incubator to ensure the brand policies are
respected. Although the impact of the Apache brand cannot be ignored, it
is more a valuable by-product of joining the Apache Software Foundation
than an aim in itself: our primary motivation is to enable ESME to
benefit from the Apache Incubator's experience with the diverse projects
with which it has been involved. This would provide us with direction
and help identify ways to improve our processes.
Maturity of the Lift Framework
The Lift framework, used heavily by the ESME server, has not yet reached
version 1.0 and has been subject to breaking changes in the API; in
order to get support from the Lift developer community, ESME needs to be
built using the nightly builds of Lift. However, we expect that the API
will become stable at the end of 2008 when the Lift 1.0 release
candidate becomes available.
Documentation
*
[WWW] http://code.google.com/p/esmeproject/downloads/list
*
[WWW] http://code.google.com/p/esmeproject/w/list
*
[WWW] http://blog.esme.us/
*
[WWW]
https://wiki.sdn.sap.com/wiki/display/Community/Enterprise+Social+Messaging+Experiment+%28ESME%29
Initial Source
Originally hosted on Assembla, the code is currently hosted on a
Google-Code Subversion server.
[WWW] http://code.google.com/p/esmeproject/source/checkout
All dependencies have Apache compatible licenses.
Source and Intellectual Property Submission Plan
ESME has already been released under the Apache 2.0 license.
External Dependencies
The dependencies all have Apache compatible licenses. These include BSD,
CDDL, CPL, MPL and MIT licensed dependencies. .
Required Resources
Mailing lists
*
<esme-dev AT incubator DOT apache DOT org>
*
<esme-commits AT incubator DOT apache DOT org>
*
<esme-user AT incubator DOT apache DOT org>
Subversion Directory
*
[WWW] https://svn.apache.org/repos/asf/incubator/esme
Issue Tracking
JIRA ESME
Initial Committers
*
David Pollak feeder.of.the.bears at gmail.com
*
Darren Hague d.hague at sap.com
*
Vassil Dichev vdichev at gmail.com
*
Mrinal Wadhwa mrinal.wadhwa at gmail.com
Affiliations
*
Darren Hague (SAP)
*
Thomas Jung (SAP)
*
Dick Hirsch (Siemens SIS)
*
Anne Kathrine Petterøe (Pearl Consulting)
Sponsors
Champion
*
J. Aaron Farr Champion (and Mentor) for the project, (as defined
in [WWW]
http://incubator.apache.org/incubation/Roles_and_Responsibilities.html)
Mentors
*
J. Aaron Farr
*
Bertrand Delacretaz
*
Daniel Kulp
*
Gianugo Rabellino
*
Sylvain Wallez
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]