Algorithmia, which launched privately last year, allows users to build algorithms, make them available as a Web service, and monetize them.
The service can be used in two basic ways: either by calling algorithms available in the system via its REST API (with examples provided), or by writing and submitting the algorithms to be used. Each algorithm has its own interactive console page, so they can be tried out directly on the Web without needing to write and implement code. Many of the algorithms are original creations; others are implementations of existing software, such as a tokenizer based on Apache OpenNLP.
Developers who want to write algorithms for Algorithmia can use either Java or Scala, although Algorithmia is working on expanding that list. Python (only its 2.x version) is available in a limited form, but the development documentation notes, "This is being actively worked on so check back soon!" Algorithms can be open source or closed, and they can request full Internet access or access to other algorithms as a way to further enhance their behaviors. (These permissions are disclosed on the algorithm's page.)
Once completed, an algorithm can be assigned a per-call royalty fee, which is tallied in Algorithmia Credits that translate to U.S. dollars at a rate of 10,000:1. Open source algorithms earn a little extra -- 1 percent of the usage cost -- but all developers split their algorithm fees 70/30 with the service. API interfaces can also be made public or private, with the latter only available via an API key.
One part of the service that stands to draw the attention of developers and users alike is Algorithmia's bounty system. Users can post bounties for the creation of a particular kind of algorithm. For example, an algorithm that would add punctuation to unpunctuated text carries a bounty of $150 at the time of this writing.
Open source advocates have been cautious about Web services, which make it possible for a company to monetize open source without necessarily contributing anything back to a project. A service like Algorithmia might allow open source developers to monetize their creations more directly. Algorithmia, as detailed in a blog post inaugurating its public release, provides a framework for that -- a place where algorithm developers don't have to worry about hosting, scaling, or the details of monetization.
Algorithmia's emphasis on open source also stands in contrast to proprietary services like the Watson service, which provides a black box where the exact behaviors of the algorithms are unknown. With Algorithmia, both algorithms and their developers can benefit directly from the public feedback that's synonymous with open source development.