top | item 9191646

Algorithmia Launches with More Than 800 Algorithms on Its Marketplace

73 points| ravimik | 11 years ago |techcrunch.com | reply

44 comments

order
[+] logn|11 years ago|reply
I'm concerned about the implications of these license terms:

  [...] you do hereby grant Algorithmia, in its capacity as the provider of the
  Services, a worldwide, non-exclusive, perpetual, irrevocable, fully paid-up and
  royalty free license to use and permit others to use the Software (including
  the source code if made viewable) in any manner and without restriction of any
  kind or accounting to you, including, without limitation, the right to make,
  have made, sell, offer for sale, use, rent, lease, import, copy, prepare
  derivative works, publicly display, publicly perform, and distribute all or any
  part of the Software and any modifications, derivatives and combinations
  thereof and to sublicense (directly or indirectly through multiple tiers) or
  transfer any and all such rights; provided, however, that if your Software
  includes any FOSS, in the event of a conflict between the applicable FOSS
  license terms and the license terms set forth in this paragraph, the applicable
  FOSS license terms will control, but only to the extent required by the FOSS
  that you use.
https://algorithmia.com/api_dev_terms

(edited to add line breaks)

[+] wlesieutre|11 years ago|reply
If you use a code block for text, including line breaks is helpful
[+] platypii|11 years ago|reply
The terms here are necessary to provide the services that we offer via Algorithmia. We need the right to run your code and make it available. It needs to be in perpetuity so that consumers of the API can put it in production with the assurance that it will continue to be available in the future.

That being said, the quoted passage lacks the context of the rest of our terms -- namely, yes, we get the right to make your work available, but in return it's OUR obligation to share the profits with the original authors.

(Kenny @ Algorithmia)

[+] perdunov|11 years ago|reply
I'd better put my code on GitHub and double-license it with GPL and a commercial license. That way I would probably earn more bucks and keep my intellectual property.

Another point is that it seems that the concept was devised by somebody with a non-programming background, as it sounds rather weird to say that they host "an algorithm". An algorithm is a theoretical concept. You cannot provide a theoretical concept as a service. You can provide an implementation of an algorithm. So it would be more correct to say that they just run software libraries on their servers.

For many "algorithms" going to an external server to process the data would be way more costly than to just get a software library and run it locally. So for those cases the idea is not useful. For example, the quicksort thing is purely a joke.

But hosting automatically scalable software services is generally not a bad idea at all.

For example, for some proprietary advanced AI services it seems pretty reasonable. Although I am not sure who's going to just give away intellectual property like that to Algorithmia.

[+] j2kun|11 years ago|reply
I doubt academics will use this service to implement algorithms. The bounties are currently at ~$100 and the time commitment for a serious implementation of any nontrivial algorithm is worth far more. Not to mention tenure committees couldn't care less.
[+] web007|11 years ago|reply
If you implement one of the bounty algorithms you get the bounty, but you also get a payment when your algorithm is used. It's not going to make you a millionaire, but if you work in $FIELD_OF_STUDY and want to make a couple bucks in your spare time it might be worth it.

It's also likely that someone who wants to enter $FIELD_OF_STUDY might use one of these as a portfolio piece. You learn-and-implement one of these algorithms to get an introduction to the field, you get a bullet point for your resume and you make a few bucks.

[+] WhitneyLand|11 years ago|reply
Ironically, it seems the biggest opportunity here is implementation rather than theory.

You could view this as a general marketplace for micro services, which may or may not utilize complex algorithms. The stuff that's too small or too vertical to be offered by the mainstream cloud offerings.

The academic slant will become less emphasized and the value add, time savings, and platform as a service aspect will get promoted.

[+] codingdave|11 years ago|reply
The first algorithm I see on the page is Dijkstra's algorithm. The wikipedia page for that algorithm includes pseduocode to implement it. I'm also seeing pretty simple examples of day to day programming tasks being marketed as algorithms. (How to read an RSS feed? Really?)

I do see value in a service that offers me algorithms in areas that are new to me, and I'm even willing to pay for that. But the current content is not well curated, and even if it was, the license terms are completely unacceptable, as mentioned in other comments.

Nevertheless, I like the broad vision here... it just isn't implemented in a way that makes sense to me.

[+] keithwhor|11 years ago|reply
Doesn't this go against the entire concept of open source? Isn't it unethical to sell access to algorithms if the developers of such have had any access to any public funding (quite often the case in academia)? Isn't this exactly what the push for "open access" re: journals is trying to fight against?
[+] doppenhe|11 years ago|reply
Access is open on Algorithmia and anybody can view the source code of any of the algorithms. The charge comes at the time of hosting it on our infrastructure so what you are paying for is compute (a part of which we donate back to the open source project).
[+] therobot24|11 years ago|reply
A few things that irk me:

1) No info of what was done to solve the solution, or do i need to login to view? (e.g. https://algorithmia.com/algorithms/zskurultay/ImageSimilarit... - is this just a simple correlation or something more)

2) Buying your homework solutions, for example, https://algorithmia.com/bounties/35 - they want a CRF implemented with Stochastic Gradient Descent for $150, i'm sure someone more familiar with one of the matlab libraries (such as UGM) could put something together, but you get the point

3) I'm not sure how this appeals to academics... There's movement for reproducible research through open sourcing code/simulations and charging for that privilege just seems wrong (even if they have the option to open source)

4) Signing up to enable the console is a bit of a pain. I'm not going to sign up unless i see some value in the service, and since many pages are just empty or bland descriptions (input x -> output y) it's hard to really get a feel if the solution is what i'm looking for

[+] therealwill|11 years ago|reply
Pertaining to academics: I think this would be a wonderful tool to help students learn algorithms better. A lot of times when I'm working on a programming challenge the number of example inputs and outputs is too low for me to understand the problem. A professor could publish the algorithm closed source so that students can input their test cases to understand the problem better.
[+] hasancc|11 years ago|reply
I like the idea of bringing the academia closer to the developers. Let's face it, with the wave of coding bootcamps etc. there are a lot of developers without the STEM background needed for sophisticated applications. I think that this vision can present a lot more opportunities for interesting products. It may also speed up the pipeline from the academia to the deployed application.
[+] therobot24|11 years ago|reply
What incentive do i have as an academic or a developer to use this?

As a developer i'm either going to rapid fire trivial/homework-esque algorithms or build simple wrappers around already implemented complex solutions (e.g., https://algorithmia.com/algorithms/kenny/WekaCluster) for minimal time spent per solution.

As an academic there's little to no information per solution that would make me trust the implementation is going to work for my purposes. I get that this site has weka and opencv, etc on their servers so i don't have to run it on my computer...but how does that change the game exactly? Professors that don't have the interest or time to setup and install opencv usually have their students do this legwork, and instead take the role of mentor.

There's definitely draw in uploading something i've already implemented/taken the time to learn for someone else to try out... I'd like to think such pursuits would eventually lead to a large set of good work, but in reality it seems like elance for homework solutions.

[+] auzengi|11 years ago|reply
Peter Thiel says "Competition is for losers." IMHO Algorithmia will prove it with its market niche and originality.
[+] csears|11 years ago|reply
In case anyone was wondering, quicksort is already available on the marketplace for the bargain price of 1 credit* per second:

https://algorithmia.com/algorithms/swm8023/quicksort

*100 credits is about $0.01

[+] mlmonkey|11 years ago|reply
Since the page wasn't clear, how does this work? What's to prevent someone from just downloading the code and using it forever without royalties?
[+] therealwill|11 years ago|reply
It looks like Algorithmia hosts the code and the end-user uses api calls.
[+] doppenhe|11 years ago|reply
founder here. Algorithm developers get to choose if they want their code open source or closed source. Close source makes black box algorithms.

For open source algorithms nothing stops users form grabbing the code and taking it off the platform - but again thats the point of open source code. The simplicity of not having to start your own servers, download dependencies or maintain the code yourself makes it worth not leaving the platform in most cases.

[+] ivanche|11 years ago|reply
TRWTF is that there is a bounty for a Traveling Salesman algorithm :)
[+] wlesieutre|11 years ago|reply
Reminds me of this old ad for a "bug finder" on getacoder, available as a PDF since the original is gone: http://blog.willbenton.com/wp-content/uploads/2008/11/bug-fi...

    The purpose of this project is to create a debugger program.
    This program will take as input the source code another
    program, and will analyze that other program and determine 
    if it will run to completion, or have an error, or go into 
    an infinite loop.
    
    To state that another way, given a function f and input x,
    determine if f(x) will halt.
I'd personally go with BestCoders, $500 and 10 days is a pretty good deal!
[+] platypii|11 years ago|reply
It's only WTF if the bounty demands Polynomial time :-)
[+] heironeous|11 years ago|reply
Programmers will have to list their Algorithmia profiles in their CVs now. I'm gonna start mining algorithms to post on here, then comes the massive gainz