I am excited to see this proposal come to the incubator. You can count me in for one of the mentor slots.
On Wed Dec 17 2014 at 3:27:17 PM Hadrian Zbarcea <hzbar...@gmail.com> 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. 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). > > *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. > > *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. > > *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 > 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 > > > > >