mechanical turk on rails
DESCRIPTION
The Mechanical Turk is the only solution available for specific kind of tasks where human assistance cannot be replaced by machines. Think about moderation of images, web sites or videos that should go public inside your app for example. If you can’t hire people specifically for the task, you can give the Mechanical Turk a try. Interfacing with the Turk isn’t simple though: it’s a highly asynchronous interaction where you need to persist state, then checking for tasks in the queue and acting accordingly. The low level Ruby APIs from Amazon can be used to integrate the service into a Rails application but then you need specific classes to deal with it. This presentation illustrates patterns for creating tasks, observing Turk tasks, parsing results and send events back to the application.TRANSCRIPT
![Page 1: Mechanical Turk On Rails](https://reader034.vdocument.in/reader034/viewer/2022052310/54c70c254a79593f288b464b/html5/thumbnails/1.jpg)
MechanicalTurk On Rails Renzo Borgatti
AMooConf 2010, June 5, Rostock
![Page 2: Mechanical Turk On Rails](https://reader034.vdocument.in/reader034/viewer/2022052310/54c70c254a79593f288b464b/html5/thumbnails/2.jpg)
Rails iPhoneAgile Productivity
![Page 3: Mechanical Turk On Rails](https://reader034.vdocument.in/reader034/viewer/2022052310/54c70c254a79593f288b464b/html5/thumbnails/3.jpg)
when cpu power is not enoughand cost is an issue
human intelligence on-demandwith a programmable approach
![Page 4: Mechanical Turk On Rails](https://reader034.vdocument.in/reader034/viewer/2022052310/54c70c254a79593f288b464b/html5/thumbnails/4.jpg)
user generated content thatmust obey rules and restrictions or need classification
visual or graphical aspectsoffensive contentout-of-topics
![Page 5: Mechanical Turk On Rails](https://reader034.vdocument.in/reader034/viewer/2022052310/54c70c254a79593f288b464b/html5/thumbnails/5.jpg)
requester submits a HITproperties: tags, expiration, $$
HIT rendered from a HTML Templateworker accepts the HIT
worker executes the task and earn $$retrieve results when HIT Reviewablerequester pays the worker or rejects
![Page 6: Mechanical Turk On Rails](https://reader034.vdocument.in/reader034/viewer/2022052310/54c70c254a79593f288b464b/html5/thumbnails/6.jpg)
![Page 7: Mechanical Turk On Rails](https://reader034.vdocument.in/reader034/viewer/2022052310/54c70c254a79593f288b464b/html5/thumbnails/7.jpg)
Rails Options
web service call
ruby-aws
RTurk
...
http://rubyforge.org/projects/ruby-aws
http://github.com/markpercival/rturk
![Page 8: Mechanical Turk On Rails](https://reader034.vdocument.in/reader034/viewer/2022052310/54c70c254a79593f288b464b/html5/thumbnails/8.jpg)
Engine
ModerableModerableModerable TaskProps
Template
CallbackNotify
GetResults
Parser
![Page 9: Mechanical Turk On Rails](https://reader034.vdocument.in/reader034/viewer/2022052310/54c70c254a79593f288b464b/html5/thumbnails/9.jpg)
![Page 10: Mechanical Turk On Rails](https://reader034.vdocument.in/reader034/viewer/2022052310/54c70c254a79593f288b464b/html5/thumbnails/10.jpg)
![Page 11: Mechanical Turk On Rails](https://reader034.vdocument.in/reader034/viewer/2022052310/54c70c254a79593f288b464b/html5/thumbnails/11.jpg)
![Page 12: Mechanical Turk On Rails](https://reader034.vdocument.in/reader034/viewer/2022052310/54c70c254a79593f288b464b/html5/thumbnails/12.jpg)
![Page 13: Mechanical Turk On Rails](https://reader034.vdocument.in/reader034/viewer/2022052310/54c70c254a79593f288b464b/html5/thumbnails/13.jpg)
![Page 14: Mechanical Turk On Rails](https://reader034.vdocument.in/reader034/viewer/2022052310/54c70c254a79593f288b464b/html5/thumbnails/14.jpg)
Ninja Tips
initial performance testsupervised training period
add RAILS_ENV to HIT tagsstub MechanicalTurkRequester
![Page 15: Mechanical Turk On Rails](https://reader034.vdocument.in/reader034/viewer/2022052310/54c70c254a79593f288b464b/html5/thumbnails/15.jpg)
http://http://www.mturk.comhttp://turkers.proboards.comhttp://docs.amazonwebservices.com/AWSMturkAPI/2008-08-02
http://developer.amazonwebserv ices.com/connect/forum.jspa?forumID=11
![Page 16: Mechanical Turk On Rails](https://reader034.vdocument.in/reader034/viewer/2022052310/54c70c254a79593f288b464b/html5/thumbnails/16.jpg)
http://http://www.mturk.comhttp://turkers.proboards.comhttp://docs.amazonwebservices.com/AWSMturkAPI/2008-08-02http://developer.amazonwebserv ices.com/connect/forum.jspa?forumID=11
Mereborg AT reborg.net@reborghttp://reborg.nethttp://github.com/reborg
![Page 17: Mechanical Turk On Rails](https://reader034.vdocument.in/reader034/viewer/2022052310/54c70c254a79593f288b464b/html5/thumbnails/17.jpg)
The Talk
http://amoocon.de/talks/133
http://www.slideshare.net/reborg/mechanical-turk-onrails
http://speakerrate.com/talks/3383-mechanical-turk-on-rails
http://http://www.mturk.comhttp://turkers.proboards.comhttp://docs.amazonwebservices.com/AWSMturkAPI/2008-08-02http://developer.amazonwebserv ices.com/connect/forum.jspa?forumID=11
![Page 18: Mechanical Turk On Rails](https://reader034.vdocument.in/reader034/viewer/2022052310/54c70c254a79593f288b464b/html5/thumbnails/18.jpg)
Thanks!Questions?
Rate my talk! http://spkr8.com/t/3383
![Page 19: Mechanical Turk On Rails](https://reader034.vdocument.in/reader034/viewer/2022052310/54c70c254a79593f288b464b/html5/thumbnails/19.jpg)