incubator-cvs mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Apache Wiki <wikidi...@apache.org>
Subject [Incubator Wiki] Update of "TinkerPopProposal" by MarkoRodriguez
Date Thu, 18 Dec 2014 16:01:41 GMT
Dear Wiki user,

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

The "TinkerPopProposal" page has been changed by MarkoRodriguez:
https://wiki.apache.org/incubator/TinkerPopProposal?action=diff&rev1=4&rev2=5

  
  === A. Abstract ===
  
- TinkerPop is a graph computing framework written in Java -- http://tinkerpop.com. TinkerPop
started in 2009 and is currently in the milestone series of 3.0.0.  Graph system vendors such
as in-memory graph libraries, OLTP graph databases, and OLAP graph processors can provide
a TinkerPop implementation (http://markorodriguez.com/2013/01/09/on-graph-computing/). Once
the core TinkerPop interfaces are implemented, the underlying graph system can be queried
using the graph traversal language Gremlin. TinkerPop was designed to be used at any scale
and as such, can be leveraged by both single-server and multi-machine compute clusters. For
many, TinkerPop is seen as the JDBC of the graph computing community (http://en.wikipedia.org/wiki/Java_Database_Connectivity).
+ [[http://tinkerpop.com|TinkerPop]] is a graph computing framework written in Java. A [[http://en.wikipedia.org/wiki/Graph_%28mathematics%29|graph]]
is a data structure composed of vertices and edges and is useful for modeling complex domains
with arbitrary relations (edges, links, lines) between entities (vertices, objects, dots).
TinkerPop provides a core API that graph system vendors can implement. There are various types
of graph systems including in-memory graph libraries, OLTP graph databases, and OLAP graph
processors (see [[http://markorodriguez.com/2013/01/09/on-graph-computing/|On Graph Computing]]
for more information). Once the core interfaces are implemented, the underlying graph system
can be queried using the graph traversal language Gremlin and processed with TinkerPop-enabled
algorithms. For many, TinkerPop is seen as the [[http://en.wikipedia.org/wiki/Java_Database_Connectivity|JDBC]]
of the graph computing community.
  
  === B. Proposal ===
  
- Since its inception in 2009, TinkerPop has been open source, free to use. Initially the
license was BSD, but as of TinkerPop3, the license is Apache2. The TinkerPop team is composed
of developers as well as representatives from numerous graph system vendors (http://www.tinkerpop.com/docs/3.0.0-SNAPSHOT/#tinkerpop-contributors).
TinkerPop has done its best to remain vendor agnostic and works closely with vendors to ensure
that the constructs within TinkerPop are able to accommodate the requirements of the underlying
graph system. To date, over 12 graph system vendors provide TinkerPop implementations. We
believe that by joining The Apache Foundation, our vendors, users, and contributors will feel
more comfortable in terms of legal protected, in terms of wider-adoption, and in terms of
project stability.
+ TinkerPop was formed in 2009 and is currently in the milestone series of 3.0.0. From the
start, TinkerPop has provided its software open source and free to use for which ever reason
(commercial or otherwise). Initially the license was BSD, but as of TinkerPop3, the license
was changed to Apache2. The TinkerPop team is composed of developers, evangelists, and representatives
from graph system vendors (see [[http://www.tinkerpop.com/docs/3.0.0-SNAPSHOT/#tinkerpop-contributors|TinkerPop
Contributors]] for more information). TinkerPop has done its best to remain vendor agnostic
and works closely with all vendors to ensure that the constructs within TinkerPop are able
to accommodate the requirements of the underlying graph system. To date, 12 "TinkerPop recognized"
graph system vendors provide TinkerPop implementations. We believe that by joining The Apache
Foundation, our vendors, users, and contributors will feel more comfortable in terms of legal
protected, in terms of wider-adoption, and in terms of project stability.
  
  === C. Background ===
  
- TinkerPop was founded in 2009 and has had steady, active development since. Over the years,
the Gremlin query language within TinkerPop has been adopted by various JVM languages and
as such, there exists Gremlin-Groovy, Gremlin-Scala, Gremlin-Clojure, Gremlin-JavaScript,
and the like. In many ways, Gremlin is seen as a traversal language style that can be readily
adopted by developers --- on and off the JVM. TinkerPop is not bound to the JVM in that developers
wishing to interact with a TinkerPop-enabled graph system can leverage Gremlin Server which
provides "over the wire" communication as well as the entry point for non-JVM language bindings.
TinkerPop is being used is production graph-based applications around the world and is only
getting better with age.
+ TinkerPop was founded in 2009 and has had steady, active development since. Over the years,
the Gremlin query language within TinkerPop has been adopted by various JVM languages and
as such, there exists Gremlin-Groovy, Gremlin-Scala, Gremlin-Clojure, Gremlin-JavaScript,
and the like. In many ways, Gremlin is seen as a traversal style that can be readily adopted
within the programming constructs of the developer's native language --- both on and off the
JVM. TinkerPop is not bound to the JVM in that developers wishing to interact with a TinkerPop-enabled
graph system can leverage Gremlin Server which provides "over the wire" communication as well
as the entry point for non-JVM language bindings. TinkerPop is being used is production graph-based
applications around the world and is only getting better with age.
  
  === D. Rationale ===
  
- The graph computing space has grown over the years to encompass numerous graph database
and graph processing systems. TinkerPop was created as a unifying framework for interoperability,
language standardization, and data model standardization.  This framework makes it simple
to "plug and play" the back-end graph implementation without affecting the developer's code.
This is analogous to the way in which JDBC allows users to swap relational databases while
keeping the same programming interface. TinkerPop also brings together OLTP systems (graph
databases) and OLAP systems (graph processors) by providing a single query language, Gremlin,
for executing graph algorithms transparently over either type of system.  Finally, TinkerPop
unifies single-machine systems and distributed systems, presenting an identical user experience
within the boundaries of the computational space and time constraints of the underlying graph
system.
+ The graph computing space has grown over the years to encompass numerous graph database
and graph processing systems. TinkerPop was created as a unifying framework for interoperability,
language standardization, and data model standardization.  This framework makes it simple
to "plug and play" the back-end graph implementation without affecting the developer's code.
This is analogous to the way in which the JDBC allows users to swap relational databases while
keeping the same programming interface. TinkerPop also brings together OLTP systems (graph
databases) and OLAP systems (graph processors) by providing a single query language (Gremlin)
for executing graph algorithms transparently over either type of system. The seamless support
of single-machine systems and distributed systems provides an identical end-user experience
within the boundaries of the space and time constraints of the underlying graph system.
  
  === E. Initial Goals ===
  
- The goal of this proposal is to migrate TinkerPop to The Apache Foundation to 1.) get more
exposure to the project and 2.) legally protect the developers and contributors of TinkerPop.

+ The goal of this proposal is to migrate TinkerPop to The Apache Foundation to 1.) get more
exposure to the project and 2.) legally protect the developers, contributors, and vendors
of TinkerPop. 
  
  === F. Current Status ===
  
@@ -28, +28 @@

  
  === G. Meritocracy ===
  
- Anyone is welcome to join TinkerPop as a contributor. If an individual provides successful
code updates, documentation updates, etc. then they are asked to join TinkerPop contributors.
Once inside TinkerPop, they are able to voice their opinions/thoughts on the direction of
the project. Moreover, TinkerPop actively seeks vendors who leverage TinkerPop in their offering
to place a representative on TinkerPop contributors who can speak on behalf of their organization
as it relates to the requirements of their graph system. Every year or so, we list inactive
members and request their permission to purge them from TinkerPop contributors. In this way,
we try and keep the TinkerPop contributors to the most active, participating members.
+ Anyone is welcome to join TinkerPop as a contributor. If an individual provides beneficial
pull requests, documentation updates, theoretical ideas, etc. then they are asked to join
TinkerPop. Once inside TinkerPop, they are able to voice their opinions/thoughts on the direction
of the project. Moreover, TinkerPop actively seeks vendors who leverage TinkerPop in their
offering. Each vendor is allowed to place a representative on TinkerPop contributors who can
speak on behalf of their organization as it relates to the requirements of their graph system.
Every year or so, we list inactive members and request their permission to purge them from
TinkerPop contributors mailing list. In this way, we try and keep the TinkerPop contributors
list to the most active, participating members.
  
  === H. Community ===
  
+ There are 25 TinkerPop contributors which, of those, 12 are representatives from various
graph system vendors in the market today. The [[https://groups.google.com/forum/#!forum/gremlin-users|TinkerPop
mailing list]] has 1500+ subscribers with a flow of approximately 10 emails a day. Note that
there are individuals that participate in the TinkerPop ecosystem by providing language bindings
and system implementations. While not contributing to the core codebase per se, they support
TinkerPop via their software and lecture outreach.
- There are 25 TinkerPop contributors which, of those, 12 are representatives from the various
graph system vendors in the market today. The TinkerPop mailing list has over 1500+ subscribers
with a flow of approximately 10 emails a day  
- (https://groups.google.com/forum/#!forum/gremlin-users). 
  
  === I. Core developers ===
  
- The primary developers are Marko A. Rodriguez (http://markorodriguez.com) and Stephen Mallette
(http://stephen.genoprime.com/). Over the years, numerous individuals have come and gone from
TinkerPop. Other significant contributors include Peter Neubauer, Joshua Shinavier, James
Thornton, Matthias Bröcheler, Daniel Kuppitz, Bryn Cooke, and others. Note that there are
numerous individuals that participate in the TinkerPop ecosystem by providing language bindings
and system implementations. While not contributing to the core codebase per se, they support
TinkerPop via their software and lecture outreach.
+ The primary "day in and day out" developers are [[http://markorodriguez.com|Marko A. Rodriguez]]
and [[http://stephen.genoprime.com/|Stephen Mallette]]. Over the years, other individuals
have come and gone from TinkerPop. Other significant long term contributors include Peter
Neubauer, Joshua Shinavier, James Thornton, Matthias Bröcheler, Daniel Kuppitz, Bryn Cooke,
and others.
  
  === J. Alignment ===
  
- TinkerPop is licensed Apache2. The OLAP reference implementation that distributes with TinkerPop
is based on Hadoop (http://hadoop.apache.org) and Giraph (http://giraph.apache.org). There
has been a push from vendors and commercial organizations interested in ensuring TinkerPop
has the legal support of a software foundation. We believe The Apache Foundation to be a great
home for TinkerPop.
+ TinkerPop is licensed Apache2. The OLAP reference implementation that distributes with TinkerPop
is based on [[http://hadoop.apache.org|Hadoop]] and [[http://giraph.apache.org|Giraph]]. There
has been a push from vendors and commercial organizations interested in ensuring TinkerPop
has the legal support of a software foundation. We believe The Apache Foundation to be a great
home for TinkerPop.
  
  === K. Known Risks & Abandoned projects ===
  
- TinkerPop is currently at TinkerPop 3.0.0.M6. By joining The Apache Foundation, there is
a significant amount of code and time that has passed since TinkerPop's inception. However,
we have done our best to secure CLAs from contributors and have never gotten into a legal
or political issue.
+ TinkerPop is currently at TinkerPop 3.0.0.M6. By joining The Apache Foundation, there is
a significant amount of code and time that has passed since TinkerPop's inception. However,
we have done our best to secure CLAs from contributors and to date, have not been involved
in any legal or political issues.
  
  === L. Inexperience with Open Source ===
  
- The primary developers of TinkerPop have been providing TinkerPop source and releases open
source and in full public view since 2009 via both our GitHub repository and our public mailing
lists. We pride ourselves in professional software, documentation, and aesthetics. With its
integration to numerous graph systems in the market, TinkerPop is truly a masterpiece in a
open source technology --- working with both open source and commercial entities to ensure
a solid, respected project.
+ The primary developers of TinkerPop have been providing TinkerPop code and releases open
source and in full public view since 2009 via both our GitHub repository and our public mailing
lists. We pride ourselves in professional software, documentation, and aesthetics. With its
integration to numerous graph systems in the market, we see TinkerPop as a masterpiece in
a open source technology --- working with both open source and commercial entities to ensure
a solid, respected product.
  
  === M. Homogeneous Developers ===
  
- The contributors to TinkerPop run the full gamut of software engineering expertise. From
low-level data serialization to high-level server interactions, TinkerPop has contributors
able to work at the requisite level. The codebase is complex as it deals with numerous area
of software engineering including: distributed computing, open standards, language bindings,
query language compilers, OLTP databases, OLAP processors, etc. Over the years, we have gathered
a significant level of talent and as a whole, have all grown as engineers.
+ The contributors to TinkerPop have varying levels of software engineering expertise and
focus. The codebase is complex as it deals with numerous area of software engineering including:
data standardization, programming language bindings, query language design, OLTP databases,
OLAP processors, distributed computing, end-point services, extensibility via plugins, applied
graph theory, etc. Over the years, we have gathered a pool of talent able to work at the requisite
levels and as a whole, we have all grown as engineers.
  
  === N. Reliance on Salaried Developers ===
  
@@ -61, +60 @@

  
  === O. Relationships with Other Apache Projects ===
  
- TinkerPop currently leverages Hadoop, Giraph, and in the near future, will integrate with
Spark. Internally, the project leverages Maven3, Apache Configuration, and Apache Commons.
+ TinkerPop currently leverages Hadoop, Giraph, and in the near future, will integrate with
[[https://spark.apache.org/|Spark]]. Internally, the project leverages Maven3, Apache Configuration,
and Apache Commons.
  
  === P. An Excessive Fascination with the Apache Brand ===
  
- TinkerPop is primarily interested in The Apache Foundation for the legal support and protection
it can offer our developers and users. Numerous large software organizations have urged TinkerPop
to join a foundation so that they may more easily provide contributors from their organization
and moreover, maintain confidence in building products atop TinkerPop. With that said, TinkerPop
does respect The Apache Foundation brand and believes that by joining The Apache Foundation,
we will further boost the recognition and prestige of our product. Finally, note that a TinkerPop
book is slated for 2015 (http://www.tinkerpopbook.com/). Combining The Apache Foundation and
a long awaited book should ensure a new uptake of contributors, users, and promoters.
+ TinkerPop is interested in The Apache Foundation for the legal support and protection it
can offer our developers, users, and vendors. Numerous large software organizations have urged
TinkerPop to join a foundation so that they may more easily provide contributors from their
organization and moreover, maintain confidence in building products atop TinkerPop. With that
said, TinkerPop does respect The Apache Foundation brand and believes that by joining The
Apache Foundation, we will further boost the recognition and prestige of our product. Finally,
note that a [[http://www.tinkerpopbook.com/|TinkerPop book]] is slated for 2015. Combining
The Apache Foundation and a long awaited book should ensure a new uptake of contributors,
users, vendors, and promoters.
  
  === Q. Documentation ===
  
@@ -77, +76 @@

  
  === R. Initial Source ===
  
- TinkerPop is currently hosted on GitHub: https://github.com/tinkerpop/tinkerpop3
+ TinkerPop is currently hosted on GitHub: https://github.com/tinkerpop/tinkerpop3. TinkerPop
desires to keep developing at this location due to the years of experience our engineers have
both with Git as a version control protocol and GitHub as source code environment.
  
  === S. Source & Intellectual Property Submission Plan ===
  
@@ -102, +101 @@

  || Gremlin-Users (public user forum) || https://groups.google.com/forum/#!forum/gremlin-users
||
  || TinkerPop-Contributors (private contributors forum) || <private> ||
  
+ TinkerPop would prefer to maintain these Google Groups. We understand that all correspondence
should must be public and as such, will make the TinkerPop-Contributors mailing list public
(with the backlog being public as well). While we are willing to transfer over to a new mailing
list system our hesitations include:
+ 
+ 1. There are 1500+ subscribers to the list and requiring them to migrate would be burdensome
to our subscribers.
+ 2. We have 5 years of graph information, technology support, and the like on the list. To
have that information "go away" (along with all the threads) would be damaging to our community.
+ 3. The Apache Foundation mail system is not as sophisticated as Google Groups and we believe,
will provide a poorer experience to our users.
+ 
+ If a compromise must be made, we can transfer over TinkerPop-Contributors to The Apache
Foundation mailing list as this list is low volume and contains the more decision-making emails
necessary for The Apache Foundation's legal requirements.
+ 
  === X. Subversion Directory ===
  
- TinkerPop uses GitHub for its source control.
+ TinkerPop uses GitHub for its source control and wishes to continue to use GitHub.
  
  === Y. Git Repository ===
  
@@ -112, +119 @@

  
  === Z. Issue Tracking ===
  
- TinkerPop uses GitHub's issue tracker for tracking issues: https://github.com/tinkerpop/tinkerpop3/issues
+ TinkerPop uses GitHub's issue tracker for tracking issues: https://github.com/tinkerpop/tinkerpop3/issues.
We wish to continue to use GitHub issue tracker, but if there is a strong push back, can move
to JIRA.
  
  === AA. Initial Committers ===
  
- TinkerPop's contributors are listed here and all those that provide source code commits
have signed a CLA: http://www.tinkerpop.com/docs/3.0.0-SNAPSHOT/#_graph_developers
+ TinkerPop's contributors are listed at [[http://www.tinkerpop.com/docs/3.0.0-SNAPSHOT/#_graph_developers|this
location]]. All individuals that provide source code commits have signed a CLA to TinkerPop3.
Most of these individuals are also TinkerPop2 and TinkerPop1 contributors. However, we are
not confident that the full gamut of TinkerPop1 and TinkerPop2 contributors have signed a
CLA.
  
  === BB. Affiliations ===
  
@@ -127, +134 @@

  || Stephen Mallette (2011) || Nidomics ||
  || Pierre De Wilde (2011) || Retired ||
  || Derrick Wiebe (2011) || XNLogic ||
- || Luca Garulli (2012) || OrientDB ||
+ || Luca Garulli (2012) || Orient Technologies ||
  || Matthias Bröcheler (2012) || Aurelius ||
  || Bryn Cooke (2013) || Self-employed ||
  || James Thornton (2013) || Electric Speed, LLC ||
@@ -148, +155 @@

  
  === CC. Sponsors ===
  
- IBM (Kelvin Lawrence and Todd Moore) were the primary proponents of pushing TinkerPop to
join The Apache Foundation. The vendors that support TinkerPop are listed here: http://www.tinkerpop.com/docs/3.0.0.M6/#_graph_vendors
+ IBM (Kelvin Lawrence and Todd Moore) were the primary proponents of pushing TinkerPop to
join The Apache Foundation. The vendors that support TinkerPop are listed here: http://www.tinkerpop.com/docs/3.0.0.M6/#_graph_vendors.
  
+ We would like to have the following Apache champion and mentor:
+ 
+ * Champion: XXX
+ * Mentor: XXX
+ 

---------------------------------------------------------------------
To unsubscribe, e-mail: cvs-unsubscribe@incubator.apache.org
For additional commands, e-mail: cvs-help@incubator.apache.org


Mime
View raw message