incubator-general mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Imesh Gunaratne <im...@apache.org>
Subject Re: [PROPOSAL] Usergrid BaaS Stack for Apache Incubator
Date Tue, 24 Sep 2013 14:03:41 GMT
Correction:

Imesh Gunaratne
Committer & PPMC Member, Apache Stratos (Incubating)
Technical Lead, WSO2 Inc

Thanks
Imesh



On Tue, Sep 24, 2013 at 7:02 PM, Imesh Gunaratne <imesh@apache.org> wrote:

> Hi Jim,
>
> Thanks for your clarification.
>
> I could not express my interest in joining Usergrid as a committer before
> we started the Voting process.
> If it is not a problem, please add me as a committer.
>
> Thanks
>
> Imesh Gunaratne
> Committer & PMC Member, Apache Stratos
> Technical Lead, WSO2 Inc
>
>
> On Tue, Sep 24, 2013 at 6:29 PM, Jim Jagielski <jim@jagunet.com> wrote:
>
>> No problem... usually, when someone simply sez they are interested
>> in contributing, I take that as an indication that when the podling
>> is started, they will, well, find time to contribute. I don't
>> interpret that as a "please add me as a committer", which is a
>> formal request to be added as part of the proposal. That's why
>> you weren't added, but I'll add you now.
>>
>> Am I correct in assuming that the affiliation is WSO2?
>>
>> On Sep 24, 2013, at 8:21 AM, Nirmal Fernando <nirmal070125@gmail.com>
>> wrote:
>>
>> > Hi Jim,
>> >
>> > As you can see below, I've showed my interest to join this project, but
>> it
>> > seems like I sent the email using a different
>> > email address (not what I've subscribed to general incubator from) and
>> > email went to moderation. :(
>> >
>> > As I showed my interest before the voting started up, could you please
>> add
>> > me into the committers list? or else please let me know how to add
>> myself
>> > as a committer.
>> >
>> > Thanks
>> >
>> > On Mon, Sep 23, 2013 at 2:46 PM, Nirmal Fernando <
>> nirmal070125@apache.org>wrote:
>> >
>> >> Hi All,
>> >>
>> >> I also think that this will be a great addition to Apache and I should
>> be
>> >> able to find some time to contribute to this project. Especially on the
>> >> deployment/integration aspects on PaaSes and different IaaSes.
>> >>
>> >> Nirmal Fernando,
>> >> PPMC Member and Committer of Apache Stratos,
>> >> Senior Software Engineer, WSO2
>> >>
>> >> On Mon, Sep 16, 2013 at 7:09 PM, Jim Jagielski <jim@jagunet.com>
>> wrote:
>> >>
>> >>> I would like to propose Usergrid, a multi-tenant Backend-as-a-Service
>> >>> stack for web & mobile applications based on RESTful APIs, as an
>> Apache
>> >>> Incubator podling.
>> >>>
>> >>> Here is a link to the proposal:
>> >>>   https://wiki.apache.org/incubator/UsergridProposal
>> >>>
>> >>> It is also pasted below:
>> >>>
>> >>> = Usergrid Proposal =
>> >>>
>> >>> == Abstract ==
>> >>>
>> >>> Usergrid is a multi-tenant Backend-as-a-Service stack for web &
mobile
>> >>> applications, based on RESTful APIs.
>> >>>
>> >>>
>> >>> == Proposal ==
>> >>>
>> >>> Usergrid is an open-source Backend-as-a-Service (“BaaS” or “mBaaS”)
>> >>> composed
>> >>> of an integrated distributed NoSQL database, application layer and
>> client
>> >>> tier with SDKs for developers looking to rapidly build web and/or
>> mobile
>> >>> applications. It provides elementary services (user registration &
>> >>> management, data storage, file storage, queues) and retrieval features
>> >>> (full
>> >>> text search, geolocation search, joins) to power common app features.
>> >>>
>> >>> It is a multi-tenant system designed for deployment to public cloud
>> >>> environments (such as Amazon Web Services, Rackspace, etc.) or to run
>> on
>> >>> traditional server infrastructures so that anyone can run their own
>> >>> private
>> >>> BaaS deployment.
>> >>>
>> >>> For architects and back-end teams, it aims to provide a distributed,
>> >>> easily
>> >>> extendable, operationally predictable and highly scalable solution.
>> For
>> >>> front-end developers, it aims to simplify the development process by
>> >>> enabling them to rapidly build and operate mobile and web applications
>> >>> without requiring backend expertise.
>> >>>
>> >>>
>> >>> == Background ==
>> >>>
>> >>> Developing web or mobile applications obviously necessitates writing
>> and
>> >>> maintaining more than just front-end code. Even simple applications
>> can
>> >>> implicitly rely on server code being run to store users, perform
>> database
>> >>> queries, serve images and video files, etc. Developing and maintaining
>> >>> such
>> >>> backend services requires skills not always available or expected of
>> app
>> >>> development teams. Beyond that, the proliferation of apps inside of
>> >>> companies leads to the creation of many different, ad-hoc, unequally
>> >>> maintained backend solutions created by employees and contractors
>> alike
>> >>> and
>> >>> hosted on a wide variety of environments. This is causing poor
>> resource
>> >>> usage, operational issues, as well as security, privacy & compliance
>> >>> concerns.
>> >>>
>> >>> In response to this problem, companies have long tried to standardize
>> >>> their
>> >>> server-side stack or unify them behind an ESB or API strategy.
>> >>> Backends-as-a-Service follow a similar approach but their unique
>> >>> characteristic is strongly tying  1) a persistence tier (typically a
>> >>> database), 2) a server-side application tier delivering a set of
>> common
>> >>> services and 3) a set of client-side application interface
>> mechanisms. For
>> >>> example, a BaaS could package 1) MongoDB with 2) a node.js application
>> >>> that
>> >>> offers access through 3) WebSockets. In the case of Usergrid, the
>> trifecta
>> >>> is 1) Cassandra, 2) Java + Jersey and 3) a RESTful API.
>> >>>
>> >>> The Backend-as-a-Service approach has steadily gained popularity in
>> the
>> >>> last
>> >>> few years with cloud providers such Parse.com, Stackmob.com and
>> >>> Kinvey.com,
>> >>> each operating tens of thousands of apps for tens of thousands of
>> >>> developers. The trend has already reached large organizations as well,
>> >>> with
>> >>> global companies such as Korea Telecom internally building a
>> privately-run
>> >>> BaaS platform. But so far, there have been limited options for
>> developers
>> >>> that want a non-proprietary, open option for hosting and providing
>> these
>> >>> services themselves, or for enterprise and government users who want
>> to
>> >>> provide these capabilities from their own data centers, especially on
>> a
>> >>> very
>> >>> large scale.
>> >>>
>> >>>
>> >>> == Rationale ==
>> >>>
>> >>> The issue this proposal deals with is implicit in the name.
>> >>> Backend-as-a-Service platforms are usually offered solely as
>> proprietary
>> >>> cloud services. They are typically closed sourced, hosted on public
>> >>> clouds,
>> >>> and require subscription payment. Usergrid opens the playing field,
by
>> >>> making a fully-featured BaaS platform freely available to all. This
>> >>> includes
>> >>> developers that previously could not afford them, such as mobile
>> >>> enthusiasts, small boutiques, and cost-sensitive startups. This also
>> >>> includes large companies that benefit from a reference implementation
>> they
>> >>> can deploy in trust, or extend to their needs without losing time
>> writing
>> >>> less-vetted, less-performant boilerplate functionality.
>> >>>
>> >>> Usergrid has been open source since 2011 and has grown as an
>> independent
>> >>> project, garnering 11 primary committers, 35 total contributors, 260+
>> >>> participants on its mailing list, with 3,700+ commits, 200+ external
>> >>> contributions, 350+ stars and 100+ forks on Github, not to mention
>> several
>> >>> large scale production deployments at major global companies in the
>> media,
>> >>> retail, telecommunication and government spaces.
>> >>>
>> >>> The Apache Software Foundation's "Way", by putting community before
>> the
>> >>> code, will help Usergrid establish a vibrant, more diverse community
>> to
>> >>> provide these features freely to downstream users. The incubation
>> process
>> >>> will help build this community and clear out the cobwebs, while
>> vetting
>> >>> the
>> >>> IP to provide a pristine ASLv2 licensed product to users. Under such
>> >>> conditions, our hope is that Usergrid will have a brighter future, and
>> >>> provide better assurances as an independent organic open source
>> project,
>> >>> instead of continuing forward as a project sponsored by a handful of
>> >>> companies.
>> >>>
>> >>>
>> >>> == Initial Goals ==
>> >>>
>> >>> We have no serious codebase concerns at the present moment. Besides
>> >>> vetting
>> >>> the IP by making sure the dependencies are Apache License 2.0
>> compatible,
>> >>> our main initial concern is to grow community and keep adding
>> features to
>> >>> make Usergrid as robust as possible. However some logistics based
>> goals
>> >>> include:
>> >>>
>> >>>  * Move the existing code base to Apache
>> >>>  * Integrate with the Apache development process
>> >>>  * Ensure all dependencies are compliant with Apache License 2.0
>> >>>  * Set up open-source docs and website
>> >>>  * Incremental development and releases per Apache Guidelines
>> >>>
>> >>>
>> >>> == Current Statusi ==
>> >>>
>> >>> === Meritocracy ===
>> >>> The project team's goals have always been to grow the community by
>> >>> encouraging contributors to participate. The project has grown
>> steadily
>> >>> and
>> >>> smoothly from the efforts of the original creator and project founder
>> (Ed
>> >>> Anuff) to a small circle of committers (at Apigee), to a distributed,
>> >>> multi-vendor community (Apigee and Korea Telecom) that also includes
>> >>> outside
>> >>> committers (Globo and others), as well as non-salaried committers.
>> >>> Together
>> >>> we discuss the project’s goals and roadmap openly, making drastic
yet
>> >>> positive changes to the project's direction based on everyone's
>> input. Our
>> >>> goal is to drive further community diversification in a way that only
>> a
>> >>> foundation-sponsored project can achieve, rather than what a
>> vendor-led
>> >>> project can accomplish.
>> >>>
>> >>>
>> >>> === Community ===
>> >>> We have a public Google Group for support here:
>> >>> https://groups.google.com/forum/?hl=en#!forum/usergrid with over 250
>> >>> active
>> >>> participants, 367 threads and new messages every day. Usergrid also
>> has an
>> >>> active community on Github issues (with over 200 discussions):
>> >>> https://github.com/apigee/usergrid-stack/issues?state=all. Some of
>> these
>> >>> users have contributed their open applications back to the community
>> or
>> >>> have
>> >>> built their own new SDKs for Usergrid found here on Github:
>> >>> https://github.com/search?q=usergrid&source=cc.
>> >>>
>> >>> Expanding and nurturing the Usergrid community is our primary concern
>> and
>> >>> one of the main reasons for the decision to apply for incubation.
>> >>> Usergrid
>> >>> has been developed openly on Github for many years and has enjoyed
>> active
>> >>> developer participation by a committers from all over the globe.
>>  However,
>> >>> due to the disparate nature and wide variety of the Github repos that
>> >>> comprise the Usergrid project (the Usergrid-stack, 8 separate SDKs,
>> the
>> >>> Admin Portal, and various samples), it has been challenging to grow
a
>> >>> unified community.  Bringing the entire project under the umbrella of
>> >>> Apache
>> >>> will promote a unification of the Usergrid community and enable all
>> >>> developers to collaborate on the project.
>> >>>
>> >>> === Core Developers ===
>> >>> The core developers include Apache Committers, PMC Members, and
>> Members of
>> >>> the ASF. The developers, some of whom have have been involved with the
>> >>> Apache Incubator and Apache Lucene as PMC members, are active mentors
>> and
>> >>> have participated in and contributed to several projects: i.e. Apache,
>> >>> Lucene, Cassandra, Hibernate, Directory, Wicket, Commons, Roller,
>> MINA,
>> >>> Karaf, Felix, Cloud Stack, HCatalog, and Commons projects. Many of
>> them
>> >>> are
>> >>> also active in Open-source beyond code, and have positions on the
>> >>> committees
>> >>> or organization such as OSCON.
>> >>>
>> >>>
>> >>> === Alignment ===
>> >>> The initial code base leverages several Apache Software Foundation
>> >>> products.
>> >>> Usergrid leverages Apache Cassandra for its scalable data store, and
>> uses
>> >>> Maven for its build system. Almost half of Usergrid's dependencies are
>> >>> Apache dependencies:
>> >>>
>> >>>  * Apache Cassandra
>> >>>  * Apache Tomcat
>> >>>  * Apache Commons
>> >>>  * Apache ZooKeeper
>> >>>  * Apache Shiro
>> >>>  * Apache Amber
>> >>>  * Apache Thrift
>> >>>  * Apache ActiveMQ
>> >>>  * Apache HttpClient
>> >>>  * Apache Lucene
>> >>>  * Apache JClouds
>> >>>
>> >>> Besides these direct alignments, Usergrid also complements Apache
>> Cordova
>> >>> and could provide several advantages to the mobile application
>> developer
>> >>> community they serve.
>> >>>
>> >>>
>> >>> == Known Risks ==
>> >>>
>> >>> === Orphaned products ===
>> >>> There are now at least two vendors running Usergrid in product.
>> Apigee is
>> >>> an
>> >>> established startup with a large, diversified customer roster and
>> Korea
>> >>> Telecom is a major, national telecommunications company. The
>> continuity of
>> >>> Usergrid, as an open-source, vendor-independent product are in the
>> >>> interest
>> >>> of all parties. Beyond the vendors, Globo.com and many others large
>> >>> companies have been relying on Usergrid for critical applications and
>> as
>> >>> such they are committed to contributing to the effort.
>> >>>
>> >>> === Inexperience with Open Source ===
>> >>> The Usergrid project has been open source and under the ALv2 for 2
>> years
>> >>> on
>> >>> Github and many of its contributors came with previous open-source
>> >>> experience, (as referenced above), including active members of these
>> >>> communities:
>> >>>
>> >>>  * Apache
>> >>>  * Cassandra (& Hector)
>> >>>  * Lucene
>> >>>  * Hibernate
>> >>>  * CouchDB
>> >>>  * PhoneGap
>> >>>  * jQuery
>> >>>
>> >>> Development in this open forum has resulted in a growing community of
>> >>> contributors, and the Usergrid project is now ready and eager to
>> embrace
>> >>> and
>> >>> learn from Apache's wealth of experience. Usergrid would like to
>> embrace
>> >>> an
>> >>> even greater culture of open participation as witnessed on so many
>> Apache
>> >>> projects.
>> >>>
>> >>> === Homogenous Developers ===
>> >>> The core development team for Usergrid is a geographically and
>> >>> technologically diverse group. Apigee’s team is itself distributed,
>> with
>> >>> contributors based in each timezone in the continental US. Additional
>> >>> regular contributors have joined us from India, Asia, Oceania, South
>> >>> America, the Middle East and Europe. While roughly half of our core
>> >>> developers come from a Java background, the other half is comprised
of
>> >>> iOS,
>> >>> Ruby, and JavaScript developers.
>> >>>
>> >>> === Reliance on Salaried Developers ===
>> >>> Most of the principal developers are paid by their employers to
>> >>> contribute,
>> >>> but not all. Throughout the life of the project, we’ve seen
>> passionate,
>> >>> personal commitment from all parties, as evidenced by our commit
>> >>> distribution on weekends
>> >>> (https://github.com/apigee/usergrid-stack/graphs/punch-card). We also
>> >>> believe, given the growing interest in mobile API services and the
>> range
>> >>> of
>> >>> individuals and corporations that are eager to participate, that
>> >>> non-salaried contributions will grow. We know the "The Apache Way"
>> will
>> >>> help
>> >>> us further accelerate this process.
>> >>>
>> >>> === Relationships with Other Apache Products ===
>> >>> There's much potential for collaboration with Apache Cordova and, of
>> >>> course,
>> >>> the Cassandra community because of the underlying foundations of
>> >>> Usergrid's
>> >>> scalability. In the future there may be more interactions with any of
>> the
>> >>> communities that Usergrid has direct dependencies to.
>> >>>
>> >>> === A Excessive Fascination with the Apache Brand ===
>> >>> Although we are aware of the strength of the Apache brand, we are
>> >>> primarily
>> >>> interested in the transforming power of the Apache Way to help guide
>> >>> Usergrid towards a more diversified and meritocratic community. To
>> that
>> >>> end,
>> >>> the brand's primary benefit for us is to help to attract more
>> participants
>> >>> and diversify the community. Having several committers, PMC
>> participants,
>> >>> and members of Apache as developers on Usergrid, there's little
>> >>> infatuation
>> >>> with the brand, and the Usergrid community is actively conscious of
>> this
>> >>> not
>> >>> being a driver for joining the Apache community.
>> >>>
>> >>>
>> >>> == Documentation ==
>> >>>
>> >>> Information on Usergrid can be found at:
>> >>> https://developers.apigee.com/app-services.
>> >>>
>> >>>
>> >>> == Initial Source ==
>> >>>
>> >>> All initial sources can be found here: https://github/usergrid
>> >>>
>> >>>
>> >>> == Source and Intellectual Property Submission Plan ==
>> >>>
>> >>> The IP transfer for Usergrid is trivial due to it's single source and
>> >>> existing ASLv2 licensing.
>> >>>
>> >>>
>> >>> == External Dependencies ==
>> >>>
>> >>> Most dependencies are Apache compatible licenses (Category A). A
>> small set
>> >>> of Category B licenses, like the CDDL exists. For more details please
>> see
>> >>> Dependency Licenses.
>> >>>
>> >>>
>> >>> == Cryptography ==
>> >>>
>> >>> Not relevant to Usergrid since all code dealing with cryptography
>> already
>> >>> comes from the JDK or from dependencies on  Apache Software.
>> >>>
>> >>>
>> >>> == Required Resources ==
>> >>>
>> >>> === Mailing lists ===
>> >>>  * private@usergrid.incubator.apache.org (moderated)
>> >>>  * dev@usergrid.incubator.apache.org
>> >>>  * commits@usergrid.incubator.apache.org
>> >>>
>> >>> === Subversion Directory ===
>> >>> We prefer to use Git as our source control system:
>> >>> git://git.apache.org/usergrid/. If possible, we would like to keep
>> >>> leveraging the extremely useful github facilities for workflow using
a
>> >>> process much like that employed by the Apache Cordova project
>> (documented
>> >>> here http://wiki.apache.org/cordova/ContributorWorkflow).
>> >>>
>> >>> === Issue Tracking ===
>> >>> JIRA Usergrid (USERGRID)
>> >>>
>> >>> === Other Resources ===
>> >>> None.
>> >>>
>> >>>
>> >>> == Initial Committers ==
>> >>>
>> >>>  * Alberto Leal <albertonb@gmail.com> (Globo.com)
>> >>>  * Alex Karasulu <akarasulu@apache.org> (Apigee)
>> >>>  * Dave Johnson <snoopdave@apache.org> (Apigee)
>> >>>  * Ed Anuff <ed@anuff.com> (Apigee)
>> >>>  * Nate McCall <zznate.m@gmail.com> (The Last Pickle)
>> >>>  * Rod Simpson <rod@rodsimpson.com> (Apigee)
>> >>>  * Scott Ganyo <scottganyo@apache.org> (Apigee)
>> >>>  * Shaozhuang Liu <stliu@hibernate.org>
>> >>>  * Sungju Jin <sungju@softwaregeeks.org> (Korea Telecom)
>> >>>  * Tim Anglade <timanglade@gmail.com> (Apigee)
>> >>>  * Todd Nine <todd.nine@gmail.com> (Apigee)
>> >>>  * Jim Jagielski <jim@apache.org> (RedHat)
>> >>>
>> >>>
>> >>> == Affiliations ==
>> >>>
>> >>>  * Apigee
>> >>>  * Korea Telecom
>> >>>  * Globo.com
>> >>>  * The Last Pickle
>> >>>
>> >>>
>> >>> == Sponsors ==
>> >>>
>> >>> === Champion ===
>> >>> Jim Jagielski <jim@apache.org>
>> >>>
>> >>> === Nominated Mentors ===
>> >>>  * Alex Karasulu <akarasulu@apache.org>
>> >>>  * Dave Johnson <snoopdave@apache.org>
>> >>>
>> >>> === Sponsoring Entity ===
>> >>> Incubator PMC
>> >>>
>> >>>
>> >>> ---------------------------------------------------------------------
>> >>> To unsubscribe, e-mail: general-unsubscribe@incubator.apache.org
>> >>> For additional commands, e-mail: general-help@incubator.apache.org
>> >>>
>> >>>
>> >>
>> >
>> >
>> > --
>> > Best Regards,
>> > Nirmal
>> >
>> > C.S.Nirmal J. Fernando
>> > Senior Software Engineer,
>> > WSO2 Inc.
>> >
>> > Blog: http://nirmalfdo.blogspot.com/
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: general-unsubscribe@incubator.apache.org
>> For additional commands, e-mail: general-help@incubator.apache.org
>>
>>
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message