incubator-general mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Hadrian Zbarcea <hzbar...@gmail.com>
Subject Re: [Proposal] TinkerPop: A Graph Computing Framework
Date Wed, 17 Dec 2014 21:23:36 GMT
Not surprisingly, there is already some positive feedback. If you don't 
already have a champion in mind, I'd be happy to help in that role as well.

Hadrian


On 12/17/2014 03:26 PM, Hadrian Zbarcea wrote:
> +1
>
> Hi Marko,
>
> Thanks for your proposal. I followed and used tinkerpop for a long 
> time and it is indeed a brilliant open source project. I think I 
> understand the motivation to move the project governance to the ASF 
> and it makes sense. I volunteer to be a mentor, should the project be 
> accepted (which I am confident of, knowing the merits of your 
> project). You'll need at least 3 mentors and a champion as well (do 
> you have any ASF member in mind for that role?). The proposal needs a 
> tiny bit of work as well.
>
> Good luck,
> Hadrian
>
>
> On 12/17/2014 02:09 PM, Marko Rodriguez wrote:
>> Hello,
>>
>> My name is Marko A. Rodriguez and am a co-founder of TinkerPop 
>> (http://tinkerpop.com). There has been positive pressure on us (both 
>> internally and externally) to move TinkerPop to The Apache 
>> Foundation. This email contains our proposal and I, on behalf of 
>> TinkerPop, thank you for spending your time reading it.
>>
>> Take care,
>> Marko.
>>
>> http://markorodriguez.com
>>
>> ------------------------------------
>>
>>
>>
>> *A. Abstract*
>>
>> TinkerPop is a graph computing framework written in Java -- 
>> http://tinkerpop.com <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).
>>
>> *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.
>>
>> *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.
>>
>> *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.
>>
>> *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.
>>
>> *F. Current Status*
>>
>> TinkerPop is planning to release TinkerPop 3.0.0.GA early 2015 -- 
>> January or February. We would like to release TinkerPop 3.0.0.GA 
>> under The Apache Foundation.
>>
>> *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.
>>
>> *H. Community*
>>
>> 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 
>> <https://groups.google.com/forum/#%21forum/gremlin-users>).
>>
>> *I. Core developers*
>>
>> The primary developers are Marko A. Rodriguez 
>> (http://markorodriguez.com <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.
>>
>> *J. Alignment *
>>
>> TinkerPop is licensed Apache2. The OLAP reference implementation that 
>> distributes with TinkerPop is based on Hadoop 
>> (http://hadoop.apache.org <http://hadoop.apache.org/>) and Giraph 
>> (http://giraph.apache.org <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.
>>
>> *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.
>>
>> *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.
>>
>> *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.
>>
>> *N. Reliance on Salaried Developers*
>>
>> TinkerPop is open source and no individual is paid for their 
>> contributions except for our logo designer. All the logos and 
>> documentation graphics are released Apache2.
>>
>> *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.
>>
>> *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.
>>
>> *Q. Documentation*
>>
>> TinkerPop takes pride in its documentation:
>> AsciiDoc: http://www.tinkerpop.com/docs/3.0.0-SNAPSHOT/
>> JavaDoc (core): http://www.tinkerpop.com/javadocs/3.0.0-SNAPSHOT/core/
>> JavaDoc (full): http://www.tinkerpop.com/javadocs/3.0.0-SNAPSHOT/full/
>>
>> *R. Initial Source*
>>
>> TinkerPop is currently hosted on GitHub.
>> https://github.com/tinkerpop/tinkerpop3
>>
>> *S. Source & Intellectual Property Submission Plan*
>>
>> There are no known claims to violations of intellectual property.
>>
>> *T. External Dependencies *
>>
>> TinkerPop relies on open source and commercial vendors. We maintain 
>> representatives from the various graph system projects on TinkerPop 
>> contributors. These vendors, in turn, provide TinkerPop adaptors to 
>> their technology and in fact, some of them provide TinkerPop as the 
>> sole interface to their system.
>>
>> *U. Cryptography*
>>
>> None.
>>
>> *V. Required Resources*
>>
>> The only resource we see moving forward and if Apache wishes, is to 
>> fund our logo designer when we need a logo. We currently spend about 
>> $500 a year on logos. Please look through our documentation to see 
>> how much we love giving character to our work. If this is not 
>> something that Apache can do, then we will continue funding the 
>> creation of our artwork as we have done in the past.
>>
>> *W. Mailing Lists*
>>
>> We currently have 2 mailing lists:
>> Gremlin-Users (public user forum): 
>> https://groups.google.com/forum/#!forum/gremlin-users 
>> <https://groups.google.com/forum/#%21forum/gremlin-users>
>> TinkerPop-Contributors (private contributors forum): <private>
>>
>> *X. Subversion Directory*
>>
>> TinkerPop uses GitHub for its source control.
>>
>> *Y. Git Repository*
>>
>> TinkerPop's GitHub account is: https://github.com/tinkerpop/tinkerpop3
>>
>> *Z. Issue Tracking*
>>
>> TinkerPop uses GitHub's issue tracker for tracking issues: 
>> https://github.com/tinkerpop/tinkerpop3/issues
>>
>> *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.M6/#_graph_developers
>>
>> *BB. Affiliations *
>>
>> None.
>>
>> *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
>>
>>
>>
>


Mime
View raw message