The InfoEng project will create software for the issuance, servicing, and exchange of digital financial instruments representing information ("information currency").
This is a proposal to create a project within the Apache Software Foundation to develop software to enable the application of economic mechanisms to the management of information. The InfoEng project, founded in July 2004, has released software enabling users to create digital financial instruments (called "information currency") representing information. The concept of representing information, as opposed to physical assets, by tradeable financial instruments is believed to be new, and has been made available without patent restrictions. The concept has been implemented in an information currency server, ICWS, and an information currency client, icsvn, both released under Apache-compatible licenses. Standardization of information currency documents and operations has been pursued by the publishing of an Internet-draft through the IETF. Software and documentation has been released at http://infoeng.sourceforge.net and http://sourceforge.net/projects/infoeng.
The adoption of the InfoEng project into the Apache Software Foundation will enable the InfoEng project to draw upon the resources of the ASF community, which is a primary target group for which information currency systems are being developed.
Open-source software can create significant economic benefits for individuals and organizations. In the market for physical goods, creators of useful products delivering economic benefits for users are incentivized by the high prices and profits that they are able to obtain from selling their goods. Unlike physical goods, digital information may be duplicated and delivered with near-zero cost, making the rationing effected by prices for physical goods less relevant for digital information. However, the prices for physical goods also signal to producers the relative importance of various commodities, and enable distributed coordination among participants in a global economy toward the satisfaction of the most-urgent needs of market participants. "Economic calculation" is the process by which participants in an economy use profit and loss to evaluate their prior actions and judge their future course.
Methods for assessing the importance and value of information are widely used and highly useful. These methods include moderation systems (e.g. Slashdot), ranking of information by activity (ranking of downloadable files by number of downloads), and various recommendation systems, among many others. However, the mechanisms of economic calculation are not routinely applied to the valuation and management of information (although information, freely redistributable or otherwise, can significantly influence economic valuations of physical goods). There are a variety of reasons for this, but the most important is the fact that digital information may be reproduced for an infinitesimal cost relative to the cost of duplicating physical goods, making it impractical, generally, to charge for the scarce resources used to duplicate and distribute the digital information.
The software released by the InfoEng project enables the operator of an information currency server to generate from a client request digital financial instruments representing information ("information currency"), and to perform the network operations necessary to service the issued information currency. As a specific example, the icsvn information currency client released by the InfoEng project is a client for the Subversion version control system which can be used to generate information currency units with each commit to a Subversion repository. The developer who has received information currency representing their contribution(s) may, if they choose, sell the information currency units if there are willing buyers. The wide dissemination of the underlying information, if it is useful information, should increase the number and motivation of buyers of information currency. This inverts the motivations for information protection that are normally associated with compensation for information, where a seller of information generally restricts the availability of the information and uses copyright law to further restrict the dissemination. A seller of information currency (based, for example, on open-source code) is likely to experience higher demand for their information currency if the underlying information is made more widely available.
One of the goals of the InfoEng project is the use of financial engineering mechanisms to manage information and the risks associated with information creation (particularly in the context of open-source software development), leading to the practice of "information engineering". Nonetheless, suggestions for less ugly and more felicitous names for the InfoEng project are welcome!
The importance of software development, particularly Internet-based collaborative development of open-source software, motivates the creation of new mechanisms to facilitate development. The efficiency of economic mechanisms for coordinating widely-distributed (and critically important, including life-critical) productive activities justifies the exploration of economic and financial mechanisms for coordinating software development.
It is anticipated that Apache developers will particularly benefit from information currency-based systems, given the extreme importance of Apache software to the global Internet.
The InfoEng project has released the Information Currency Web Services software (current version 0.2.1). ICWS, implemented in Java, uses the Apache Derby database for data storage, the Apache Axis and Apache Pubscribe libraries for SOAP and WS-Notification support, and the Apache XML Security library for XML Signature support. ICWS is currently released under the MIT license.
The InfoEng project has also released an Subversion client, icsvn (current version 0.0.4), that generates information currency based on the information within a commit to a subversion repository. This code, written in C, is licensed under the Subversion license, as the icsvn code is a modification of the svn command-line client included with the Subversion distribution.
Two Internet-drafts (with the most recent version available at http://infoeng.sourceforge.net/information-currency-rfc.txt) have been submitted to the IETF, with the objective of establishing an open standard for information currency documents and operations. The first priority for standardization, to this point, has been "working code", with "rough consensus" to follow.
The InfoEng project has explicitly disclaimed any patent restrictions on information currency, enabling the Apache License to be used for the incubated project. The application focus (economic coordination of software development), open-source licensing, and disclaimer of patent rights are factors aligning the project with the Apache Software Foundation.
The development community, so far, is one developer. J. Patrick Bedell (email@example.com) has been working on the development of information currency for two years. He will continue to actively contribute to the project, as well as seeking to enlist new developers.
1. Scope of the subprojects
The subprojects will initially be:
- enhancement of ICWS to use newly-developed Apache web services and security software,
- development of additional information currency clients, in particular an information currency-enabled cvs client,
- development of a client for managing and trading information currency,
- development of a trading server for aggregating and publicizing trade requests and executing trades,
- a documentation subproject, for end-user documents and standardization documents.
2. Initial source
http://sourceforge.net/projects/infoeng (MIT License)
2.1 External Dependencies of the project
The current implementation depends on the following components:
Jetty-6 (Apache License)
BouncyCastle-1.32 (MIT License)
JUnit-4.0 (Common Public License)
Spring-1.2.4 (Apache License)
3. Identify the ASF resources to be created 3.1 mailing list(s)
infoeng-ppmc (moderated subscriptions)
infoeng-dev (commits to dev list)
3.2 Subversion repository
4. Identify the initial set of committers:
J. Patrick Bedell (firstname.lastname@example.org)
5. Identify Apache sponsoring individual
We request that the Apache Incubator PMC sponsor the InfoEng project as an incubating project.