incubator-general mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Hadrian Zbarcea <hadr...@apache.org>
Subject [VOTE] Accept the iota project into the Apache Incubator
Date Sat, 16 Jan 2016 20:12:11 GMT
Hi,

The iota proposal [1] (initially Tempo) was proposed about 6 weeks ago.

Because of the naming conflict that would have likely required to change 
name at graduation, the project name was changed to "Apache iota" (the 
greek letter), which resonates better with the IoT field the project 
targets and passed a summary podling name search.

The code was made available in December for our review and answers on 
the general@ list have been answered.

We think it's time to move to the next step, a formal vote. Therefore...

Please cast your vote to:
[] +1 - accept Apache iota as a new incubating project
[]  0 - not sure
[] -1 - do not accept the Apache iota project (because: ...)

Thanks,
Hadrian


[1] https://wiki.apache.org/incubator/IotaProposal
[2] https://en.wikipedia.org/wiki/Iota


---------------------

iota Proposal

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 
iota system to the Open Source Community via the Apache Foundation. 
Apache iota 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? 
Apache iota is an open source software system that enables homeowners 
and global companies to download a software system that provides secure 
and robust orchestration.

The iota 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. Apache iota 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. Apache iota was initially developed 
by Litbit and is deployed in a growing number of Industrial contexts, 
especially in the context of Data Center Infrastructure.

Rationale

Apache iota 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 iota 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 iota, as it provides an established process for 
community-driven development and decision making by consensus. This is 
exactly the model we want for future iota 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

Apache iota has undergone a major release (0.1) and is being used in 
production by several global organizations. The iota 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. 
Apache iota is currently being used by several organizations worldwide. 
By bringing iota into Apache, we believe that the community will quickly 
grow and become a significant Apache offering.

Core Developers

iota 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 iota 
can be that solution and fill this need in the Apache Foundation's 
offerings. We believe that iota 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 iota 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 iota 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 iota 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, iota is closely integrated with 
Zookeeper, Kafka, and Mesos. We look forward to collaborating with those 
communities, as well as other Apache communities.

An Excessive Fascination with the Apache Brand

iota 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:

iota website: Coming soon
iota documentation: Coming soon
Codebase: Becoming public soon
User group: Coming soon
Source and Intellectual Property Submission Plan

The iota 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

[...] (tables omitted as they don't render well; see online version [1] 
for details)

This is the exact codebase that we would migrate to the Apache foundation.

Upon entering Apache, iota 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 a Software Grant Agreement (SGA): 
https://www.apache.org/licenses/software-grant.txt

External Dependencies

To the best of our knowledge, all of iota 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).

iota 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 iota 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 iota to be a controlled export item due to the use of 
encryption. iota enables encryptions via a digital envelope using:

RSA 128 Bits
AES 128 Bits
Required Resources

Mailing lists

iota-user
iota-dev
iota-commits
iota-private (with moderated subscriptions)
Subversion Directory

Git is the preferred source control system: git://git.apache.org/iota

Issue Tracking

JIRA iota (IOTA)

Initial Committers

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>
Omkar Prabhu <omkar at litbit dot com >
Bill Salter <bsalter at enviseco dot com >
Don Shields <dshields at litbit dot com >
Affiliations

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

Champion

Hadrian Zbarcea <hadrian at apache dot org>


Nominated Mentors

Sterling Hughes <sterling at apache dot org>
Daniel Gruno <humbedooh at apache dot org>
Justin Mclean <justin at classsoftware dot com>
Hadrian Zbarcea <hadrian at apache dot org>


Sponsoring Entity

The Apache Incubator

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


Mime
View raw message