Dear Wiki user,

You have subscribed to a wiki page or wiki category on "Lucy Wiki" for change 
notification.

The "LucyIncubatorProposal" page has been changed by MarvinHumphrey.
The comment on this change is: Change "full support" for subclasses to 
"support". Normalize spelling of "codebase". Tweak Alignment. Simpify 
Subversion Directory..
http://wiki.apache.org/lucy/LucyIncubatorProposal?action=diff&rev1=30&rev2=31

--------------------------------------------------

  For reference, see the original template at 
[http://incubator.apache.org/guides/proposal.html]
  
  == Preface ==
- Lucy is a sub-project which is being spun off from the Lucene TLP but is not 
yet ready for graduation.  We propose to address certain needs of the project 
by assimilating the KinoSearch code base, and to enter the Incubator on a 
top-level-project track.
+ Lucy is a sub-project which is being spun off from the Lucene TLP but is not 
yet ready for graduation.  We propose to address certain needs of the project 
by assimilating the KinoSearch codebase, and to enter the Incubator on a 
top-level-project track.
  
  == Abstract ==
  Lucy will be a loose port of the Lucene search engine library, written in C 
and targeted at dynamic language users.
  
  == Proposal ==
- Lucy has two aims.  First, it will be a high-performance C search engine 
library.  Second, it will maximize its usability and power when accessed via 
dynamic language bindings.  To that end, it will present highly idiomatic, 
carefully tailored APIs for each of its "host" binding languages, including 
full support for subclasses written entirely in the "host" language.
+ Lucy has two aims.  First, it will be a high-performance C search engine 
library.  Second, it will maximize its usability and power when accessed via 
dynamic language bindings.  To that end, it will present highly idiomatic, 
carefully tailored APIs for each of its "host" binding languages, including 
support for subclasses written entirely in the "host" language.
  
  == Background ==
- Lucy, a "loose C" port of Java Lucene, began as an ambitious, from-scratch 
Lucene sub-project, with David Balmain (author of Ferret, a Ruby/C port of 
Lucene), Doug Cutting, and Marvin Humphrey (founder of KinoSearch, a Perl/C 
port) as committers.  During an initial burst of activity, the overall 
architecture for Lucy was sketched out by Dave and Marvin.  Unfortunately, Dave 
became unavailable soon after, and without a working code base to release or 
any users, it proved difficult to replace him.  Still, Marvin carried on their 
work throughout a period of seemingly low activity.
+ Lucy, a "loose C" port of Java Lucene, began as an ambitious, from-scratch 
Lucene sub-project, with David Balmain (author of Ferret, a Ruby/C port of 
Lucene), Doug Cutting, and Marvin Humphrey (founder of KinoSearch, a Perl/C 
port) as committers.  During an initial burst of activity, the overall 
architecture for Lucy was sketched out by Dave and Marvin.  Unfortunately, Dave 
became unavailable soon after, and without a working codebase to release or any 
users, it proved difficult to replace him.  Still, Marvin carried on their work 
throughout a period of seemingly low activity.
  
  In the last year, that work has come to fruition: major technical milestones 
have been achieved and Lucy's underpinnings have been completed.  Additionally, 
other developers from the KinoSearch community have taken an interest in Lucy 
and have begun to ramp up their contributions.  The next steps for Lucy were 
articulated by the Lucene PMC in a recent review: make releases, acquire users, 
grow community.
  
- To implement the Lucene PMC's recommendations and get to a release as quickly 
as possible, the Lucy community proposes to assimilate the KinoSearch code 
base, which has been retrofitted to use Lucy's core.  Lucy still lacks a number 
of important indexing and search classes; we wish to flesh these out via IP 
clearance work rather than software development.
+ To implement the Lucene PMC's recommendations and get to a release as quickly 
as possible, the Lucy community proposes to assimilate the KinoSearch codebase, 
which has been retrofitted to use Lucy's core.  Lucy still lacks a number of 
important indexing and search classes; we wish to flesh these out via IP 
clearance work rather than software development.
  
  Since the Lucene PMC will not be responsible for Lucy much longer, it is more 
appropriate for the software grant to take place within the context of the 
Incubator than the Lucene TLP.  As none of our current members have Apache PMC 
experience, we also seek to take advantage of the Incubator environment to 
prepare ourselves for responsible self-governance.
  
  == Rationale ==
- There is great hunger for a search engine library in the mode of Lucene which 
is accessible from various dynamic languages, and for one accessible from pure 
C.  Individuals naturally wish to code in their language of choice.  
Organizations which do not have significant Java expertise may not want to 
support Java strictly for the sake of running a Lucene instance.  Native 
applications can be launched much more quickly than JVMs.  Lucy will meet all 
these demands.
+ There is great hunger for a search engine library in the mode of Lucene which 
is accessible from various dynamic languages, and for one accessible from pure 
C.  Individuals naturally wish to code in their language of choice.  
Organizations which do not have significant Java expertise may not want to 
support Java strictly for the sake of running a Lucene installation.  Native 
applications may be launched much more quickly than JVMs.  Lucy will meet all 
these demands.
  
  We acknowledge that Apache seems like a natural home for Lucy given that it 
is also the home of Lucene, and speculate that this may have been on the minds 
of the Lucene PMC when Lucy was green-lighted as a sub-project.  More 
importantly, though, the Lucy development community strongly believes that The 
Apache Way is right for Lucy.
  
@@ -48, +48 @@

   * Nathan Kurz has participated in numerous open source projects and has been 
a KinoSearch committer since 2007.  He is currently Chief Flavor Engineer of 
Scream Sorbet, and writes software in his copious free time.
  
  === Alignment ===
- One Apache value which is particularly cherished by the Lucy community is 
code base transparency.  We have developed institutions which enable us to 
measure and maximize usability (see [http://wiki.apache.org/lucy/BrainLog]), 
and we feel strongly that the bindings for Lucy must present APIs and 
documentation which are idiomatic to the host language culture so that end 
users can consume our work as easily as possible.
+ One Apache value which is particularly cherished by the Lucy community is 
codebase transparency.  We have developed institutions which enable us to 
measure and maximize usability (see [http://wiki.apache.org/lucy/BrainLog]), 
and we feel strongly that the bindings for Lucy must present APIs and 
documentation which are idiomatic to the host language culture so that end 
users can consume our work as easily as possible.
  
  The controlled competition of meritocratic community development is also very 
important to us.  There has been substantial cross-pollination of ideas between 
the Lucene and Lucy communities, yielding considerable benefits for both 
projects.  The Lucy developers envision that our host-language sub-communities 
will approach using and extending the library in distinct ways; we hope to 
harness the creative tension between them to drive innovation, building 
productive relationships akin to the one that Lucene and Lucy have today.
  
@@ -68, +68 @@

  Marvin Humphrey has a great job at Eventful working primarily on this project 
and supporting applications that use it.  Nevertheless, he is extremely 
dedicated to Lucy and is determined to see it through to the point where it 
becomes self-sustaining, regardless of work circumstances.
  
  === Relationships with Other Apache Products ===
- Lucy's relationship with Lucene of cordial "coopetition" has produced 
benefits for Lucene users in terms of indexing speed, near-real-time search 
support, and more.  We expect the projects to continue diverging and converging 
over time as innovations migrate back and forth, with happy results for all 
involved.
+ Lucy's relationship with Lucene of cordial "coopetition" has produced 
benefits for Lucene users in terms of indexing speed, near-real-time search 
support, and more.  We expect this dynamic to continue delivering improvements 
for all parties involved.
  
  === An Excessive Fascination with the Apache Brand ===
  Our desire to maintain Lucy's affiliation with Apache has less to do with the 
brand and more to do with our conviction that developing the project The Apache 
Way under Apache institutions is in Lucy's best interests.  However, we have to 
acknowledge that during its time as a Lucene subproject, Lucy has not always 
fulfilled certain key requirements for an Apache project.  In particular, it 
has failed to "release early, release often", and it has made minimal progress 
in expanding its community.
@@ -91, +91 @@

  The initial source will be a snapshot from the KinoSearch subversion 
repository.
  
  == Source and Intellectual Property Submission Plan ==
- KinoSearch is currently under a GPL/Artistic license.  There are five 
individuals who have made multiple significant contributions to the code base 
and whose participation is either essential or would be very helpful: the three 
committers on this proposal, Chris Nandor, and Father Chrysostomos.  All have 
been contacted and are amenable to re-licensing their work and contributing it 
to Apache.  We will contact as many other contributors as possible; if there 
are any that we cannot obtain permission from, we will refactor to expunge 
their work.
+ KinoSearch is currently under a GPL/Artistic license.  There are five 
individuals who have made multiple significant contributions to the codebase 
and whose participation is either essential or would be very helpful: Marvin 
Humphrey, Peter Karman, Nathan Kurz, Chris Nandor, and Father Chrysostomos.  
All have been contacted and are amenable to re-licensing their work and 
contributing it to Apache.  We will contact as many other contributors as 
possible; if there are any that we cannot obtain permission from, we will 
refactor to expunge their work.
  
  == External Dependencies ==
  The Perl bindings for KinoSearch depend on a few CPAN modules which do not 
have Apache-compatible licenses.  It will be possible to address all of these 
during incubation:
@@ -110, +110 @@

   * lucy-users
  
  === Subversion Directory ===
- Lucy already has a Subversion directory at 
http://svn.apache.org/repos/asf/lucene/lucy. In keeping with naming 
conventions, it could be moved to 
http://svn.apache.org/repos/asf/incubator/lucy.
+ [http://svn.apache.org/repos/asf/incubator/lucy]
  
  === Issue Tracking ===
  Lucy already has a JIRA tracker: Lucy (LUCY)

Reply via email to