One of the more interesting and unique products offered through Amazon Web Services (AWS) is Amazon Mechanical Turk. Perhaps more accurately described as “crowd computing” rather than “cloud computing”, Mechanical Turk, named after the famed fake chess-playing automaton, leverages the power of massive numbers of humans connected to the Internet to solve problems that require human intelligence.
For a simple example you may see an image in a YouTube video and you wonder as to the location where it was taken.
Figure 1 Does anybody knows where this location is?
This is difficult to enter into a search engine. But imagine you could somehow post this image and then instantly ask thousands of people if they recognize the place. This is the sort of problem that Mechanical Turk is geared towards solving. Of course there are other, more practical, examples as well, but they are not as much fun!
Amazon Mechanical Turk defines two roles: Requestor and Worker. The fundamental unit of work is a “Human Intelligence Task” (or HIT). A requestor can specify a HIT using a template and then publish that HIT for workers to see. Requestors create HITs and Workers work on them.
Becoming a Requestor is easy. All you have to do is sign up using your Amazon account. First, you need to buy some pre-paid HITs. Then you can create HITs using one of the existing templates or you can create your own template. Finally, you can publish your HITs. This allows Workers to respond to them at the price you have specified (usually a few cents per HIT).
Becoming a Worker is more difficult. You need to pass a test that shows, among other things, that you can look stuff up on Wikipedia. Then you get a rating which allows you to respond to HITs. As you respond to HITs successfully your rating will increase. Make a bunch of goofs and your rating goes down.
In this way, Requestors and Workers are brought together in a marketplace. On-demand services delivered at the going rate. It is almost frictionless free enterprise.
In addition to the web based interface, Amazon Mechanical Turk also has a command line and an API interface. The API allows for applications to be written which can leverage the power of Mechanical Turk. Think of, for example, a smart phone application that allowed the user to take a snapshot and then upload the image as a HIT asking “what is this object?” or “who is this person?” It could be used while walking through a museum or while sitting in a café on Sunset Boulevard.
So, I guess the point of this article is that computers are not the only thing in the cloud. Humans are there too.
To get a good grounding in cloud computing fundamentals I recommend Learning Tree Course 1200 – Cloud Computing Technologies: A Comprehensive Hands-On Introduction.