Top-posting because solidwalloftext. Sounds quite interesting, and it's (mostly) within language scopes I'm comfortable with (python, JS etc). I'd like to volunteer as a mentor for this, should it be approved.
With regards, Daniel On 12/02/2015 09:34 PM, Tony Faustini wrote: > To: general@incubator.apache.org > > Hi All, Litbit is an enterprise IoT company comprised of individuals > that have worked for Yahoo, Apple, Microsoft, Sun Microsystems, Intel, > Cisco Systems and 365 Main. We are working with some of the world's > leading companies providing them with an enterprise IoT platform. We > value the open source community and the way it is changing enterprise > software. We are eager to build an open source community around Tempo > which powers RhythmOS our commercial offering. > > Thanks > -Tony Faustini (Litbit Co) > > > Tempo - A Proposal for Apache Incubator > > Abstract > > The Apache Foundation has been very successful in bringing together > key software components that have enabled people to interact with each > other via a variety of content platforms and it will no doubt continue > to do so. At the same time modern society is becoming increasingly > dependent on devices that interact with each other and with people. > The amount of data that will be produced by devices will be orders of > magnitude greater than what has been produced by humans in the past. > In addition, the orchestration of devices and people will be an > important area of growth for the foreseeable future. This new dynamic > will eventually become manifest in a growing number of Apache projects > that enable this to occur. Our wish is to contribute to this movement > by contributing the Tempo system to the Open Source Community via the > Apache Foundation. Tempo is an open platform to interconnect any and > all devices, sensors, people, and applications, henceforth referred to > as points, through a scalable, secure, and modular architecture, > enabling applications to generate analysis, create actions and/or add > intelligence to their behaviors and patterns. > > Proposal > > Perhaps you are a homeowner configuring the interaction between your > family and all the smart devices in your home. Or you might be a > global company orchestrating millions of devices and people across > different continents. Either way you face the same fundamental > problem; namely, how do you manage many points in a secure robust and > meaningful manner? Tempo is an open source software system that > enables homeowners and global companies to download a software system > that provides secure and robust orchestration. > > The Tempo system consists of a variety of components: > > - A basic but extensible desktop > - An extensible mechanism for capturing data from a variety of sources > - A set of translators that feed the data capture mechanism and a > framework for the development of additional translators > - A secure means of moving data using digital envelopes based on > symmetric and asymmetric encryption and decryption via Apache Kafka > - Optionally maintaining data encrypted in a datastore > - Support for a variety of data repositories > - Authentication and authorization using oAuth2 > - Secure APIs for access to data and the system information > - User management > - Device management > - Automated software upgrades via Salt > - Configuration management > - Robust basic infrastructure based on Apache Mesos that enables scalability > - Dockerized applications > > Background > > We are in the midst of a revolution in which the Internet of Things > (IoT) is poised to impact the development of our society in ways we > can not even begin to imagine. Unfortunately, we know of no coherent > OSS (Open Source Software) solution that can harness the > potentialities of this increasingly important trend. Manufacturers of > IoT devices, both in the consumer and industrial spaces, continue to > develop proprietary systems. Tempo is an open source IoT system that > creates an open source solution enabling the orchestration of IoT > devices that brings the benefits of OSS to this space. Tempo was > initially developed by Litbit and is deployed in a growing number of > Industrial contexts, especially in the context of Data Center > Infrastructure. > > Rationale > > Tempo is a general platform for orchestrating IoT devices in both > consumer and industrial contexts. It is complementary to the existing > Apache projects and is itself built using of a number of Apache > projects. Bringing Tempo into Apache is very beneficial to both the > Apache community and the IoT community. > > The rapid growth of IoT needs to be harnessed in the Open Source > Community. We believe the Apache Foundation is a great fit as the > long-term home for Tempo, as it provides an established process for > community-driven development and decision making by consensus. This is > exactly the model we want for future Tempo development. > > Initial Goals > > Move the existing codebase to Apache > Integrate with the Apache development process > Ensure all dependencies are compliant with Apache License version 2.0 > Incremental development and releases per Apache guidelines > > Current Status > > Tempo has undergone a major release (0.1) and is being used in > production by several global organizations. The Tempo codebase is > currently hosted at github.com, which will seed the Apache git > repository. > > Meritocracy > > We plan to invest in supporting a meritocracy. We will discuss the > requirements in an open forum. Several companies have already > expressed interest in this project, and we intend to invite additional > developers to participate. We will encourage and monitor community > participation so that privileges can be extended to those that > contribute. > > Community > > The need for an open source IoT orchestration system is tremendous. > Tempo is currently being used by several organizations worldwide. By > bringing Tempo into Apache, we believe that the community will quickly > grow and become a significant Apache offering. > > Core Developers > > Tempo was initially developed at Litbit by the following individuals: > > Rutvij Clerk > Miron Costant > Tony Faustini > Reza Hajebi > AmirHossein Jabbari > Shahin Mowzoon > Scott Noteboom > Sydney Noteboom > Omkar Prabhu > Don Shields > > Alignment > > IoT orchestration is in need of an Open Source Solution. We believe > Tempo can be that solution and fill this need in the Apache > Foundation's offerings. We believe that Tempo will remove the barriers > imposed by proprietary solutions and usher in significant growth for > the Apache Foundation. The alignment is also beneficial to other > Apache communities (such as Zookeeper, Kafka, and Mesos). We could > include additional sub-projects in the future. > > Known Risks > > Orphaned Products > > There will be an initial need to ensure the availability and > robustness of an initial offering so that contributors and users are > highly incentivized to continue development. To this extent, > organizations can be encouraged to build critical business > applications around Tempo and the risk of the project being abandoned > will be minimized. > > Inexperience with Open Source > > Our lack of experience with Open Source is an area we will need > significant accompaniment with. We are more than willing to invest > time and resources to create a healthy open source project. During > that time, we will curate an open-source community and attract growing > numbers of developers from a diverse group of contributors. > > Homogenous Developers > > The initial committers will be from Litbit, a well funded startup. We > plan to grow Tempo with an active community of developers, and we are > committed to recruiting additional committers based on their > contributions to the project. > > Reliance on Salaried Developers > > It is expected that Tempo development will occur on both salaried time > and on volunteer time, after hours. The majority of initial committers > are paid by Litbit to contribute to this project. However, they are > all passionate about the project, and we are confident that the > project will continue even if no salaried developers contribute to the > project. We are committed to recruiting additional committers > including non-salaried developers. > > Relationships with Other Apache Products > > As mentioned in the Alignment section, Tempo is closely integrated > with Zookeeper, Kafka, and Mesos. We look forward to collaborating > with those communities, as well as other Apache communities. > > Deep Respect for the Apache Brand > > Tempo will become a healthy and well known open source project. This > proposal is not for the purpose of generating publicity. Rather, the > primary benefits to joining Apache are those outlined in the Rationale > section. > > Documentation > > The reader will find these websites highly relevant: > > Tempo website: Coming soon > Tempo documentation: Coming soon > Codebase: Becoming public soon > User group: Coming soon > > Source and Intellectual Property Submission Plan > > The Tempo codebase is currently hosted on Github. To give you some > idea of what we will be contributing here are some basic statistics > from our current Github > > OAuth Server > 30 text files. > 30 unique files. > 5 files ignored. > > http://cloc.sourceforge.net v 1.64 T=0.17 s (168.9 files/s, 101341.2 lines/s) > > ------------------------------------------------------------------------------- > Language files blank comment code > ------------------------------------------------------------------------------- > CSS 7 2724 70 > 12148 > Javascript 5 144 254 1054 > Python 14 73 60 > 129 > HTML 2 15 7 > 119 > ------------------------------------------------------------------------------- > SUM: 28 2956 391 13450 > ------------------------------------------------------------------------------- > > > Data Server > 21 text files. > 20 unique files. > 9 files ignored. > > http://cloc.sourceforge.net v 1.64 T=0.08 s (208.7 files/s, 19657.5 lines/s) > > ------------------------------------------------------------------------------- > Language files blank comment code > ------------------------------------------------------------------------------- > Python 15 196 290 > 829 > make 1 30 6 > 156 > ------------------------------------------------------------------------------- > SUM: 16 226 296 > 985 > ------------------------------------------------------------------------------- > > > Management Server > 114 text files. > 110 unique files. > 16 files ignored. > > http://cloc.sourceforge.net v 1.64 T=0.40 s (260.1 files/s, 59749.4 lines/s) > > ------------------------------------------------------------------------------- > Language files blank comment code > ------------------------------------------------------------------------------- > CSS 7 2724 70 > 12148 > Python 31 757 340 > 3203 > HTML 61 383 32 > 2823 > Javascript 5 144 254 > 1054 > make 1 30 6 > 156 > ------------------------------------------------------------------------------- > SUM: 105 4038 702 > 19384 > ------------------------------------------------------------------------------- > > Data Pipeline > 81 text files. > 81 unique files. > 26 files ignored. > > http://cloc.sourceforge.net v 1.64 T=0.32 s (177.3 files/s, 15377.2 lines/s) > > ------------------------------------------------------------------------------- > Language files blank comment code > ------------------------------------------------------------------------------- > Java 54 609 909 2915 > Maven 1 16 24 408 > XML 2 0 1 > 63 > ------------------------------------------------------------------------------- > SUM: 57 625 934 3386 > ------------------------------------------------------------------------------- > > > Orchestration > 5 text files. > 5 unique files. > 3 files ignored. > > http://cloc.sourceforge.net v 1.64 T=0.03 s (90.1 files/s, 32463.5 lines/s) > > ------------------------------------------------------------------------------- > Language files blank comment code > ------------------------------------------------------------------------------- > Python 3 113 78 > 890 > ------------------------------------------------------------------------------- > SUM: 3 113 78 > 890 > ------------------------------------------------------------------------------- > > > Data Collector > 13 text files. > 12 unique files. > 4 files ignored. > > http://cloc.sourceforge.net v 1.64 T=0.04 s (256.8 files/s, 18873.7 lines/s) > > ------------------------------------------------------------------------------- > Language files blank comment code > ------------------------------------------------------------------------------- > Cython 1 50 49 > 318 > Python 8 56 40 > 220 > Bourne Shell 1 0 0 > 2 > ------------------------------------------------------------------------------- > SUM: 10 106 89 540 > ------------------------------------------------------------------------------- > > This is the exact codebase that we would migrate to the Apache foundation. > > Upon entering Apache, Tempo will migrate to an Apache License 2.0 with > all contributions licensed to the Apache Foundation. In certain cases > if individuals or organizations hold copyright, we will ensure they > grant a license to the Apache Foundation. Going forward, all commits > will be licensed directly to the Apache foundation through our signed > Individual Contributor License Agreements for all committers on the > project. > > Upon entering Apache, Litbit will sign over copyright to the Apache > foundation. > > External Dependencies > > To the best of our knowledge, all of Tempo dependencies (except 0MQ) > are distributed under Apache compatible licenses. Upon acceptance to > the incubator, we would begin a thorough analysis of all transitive > dependencies to verify this fact and introduce license checking into > the build and release process (for instance integrating Apache Rat). > > Tempo has used 0MQ for some types of internal messaging, and 0MQ is > licensed under the GNU Lesser General Public License. We are in the > process of making the Tempo messaging layer pluggable, and plan to use > Netty (which is licensed under Apache License v2) as our default > messaging plugin (while keeping 0MQ as an optional plugin). > > Cryptography > > We do not expect Tempo to be a controlled export item due to the use > of encryption. Tempo enables encryptions via a digital envelope using: > > RSA 128 Bits > AES 128 Bits > > Required Resources > > Mailing lists > > tempo-user > tempo-dev > tempo-commits > tempo-private (with moderated subscriptions) > > Subversion Directory > > Git is the preferred source control system: git://git.apache.org/tempo > > Issue Tracking > > JIRA Tempo (Tempo) > > Initial Committers > > Pritesh Bharakhada < pritesh at e2logy dot com > > Rutvij Clerk <rutvij at litbit dot com> > Miron Costant <miron at litbit dot com> > Tony Faustini <tony at litbit dot com > > Reza Hajebi <reza at litbit dot com> > Amirhossein Jabbari < amirhossein at litbit dot com> > Shahin Mowzoon <shahin at litbit dot com> > Scott Noteboom < notebooms at litbit dot com> > Sydney Noteboom <sydney at litbit dot com> > Shailesh Patel < shailesh at e2logy dot com > > Omkar Prabhu <omkar at litbit dot com > > Bill Salter <bsalter at enviseco dot com > > Don Shields <dshields at litbit dot com > > > Affiliations > > Pritesh Bharakhada - e2logy > Rutvij Clerk - Litbit > Miron Costant - Litbit > Tony Faustini - Litbit > Reza Hajebi - Litbit > Amirhossein Jabbari - Litbit > Shahin Mowzoon - Litbit > Scott Noteboom - Litbit > Sydney Noteboom - Litbit > Shailesh Patel - e2logy > Omkar Prabhu - Litbit > Bill Salter - Envise > Don Shields - Litbit > > Sponsors > litbit > > Champion > TBD > > We are looking for a champion > > Nominated Mentors > > TBD > > Sponsoring Entity > > The Apache Incubator > > --------------------------------------------------------------------- > To unsubscribe, e-mail: general-unsubscr...@incubator.apache.org > For additional commands, e-mail: general-h...@incubator.apache.org > --------------------------------------------------------------------- To unsubscribe, e-mail: general-unsubscr...@incubator.apache.org For additional commands, e-mail: general-h...@incubator.apache.org