A previous workshop

Mechanical Turk Workshop

with Jeff Crouse

This workshop takes place on August 10th and 11th, noon-5pm

In 2005, Amazon launched Mechanical Turk, a crowdsourcing (“Artificial Artificial Intelligence”) platform that made it possible to integrate human intelligence directly into software. The service was mostly aimed at businesses in need of quick, cheap, almost-mindless labor. But artists quickly began to explore both the creative potential and the significant ethical and cultural concerns surrounding the practice of using the Internet as a labor marketplace, leading to some great projects (see below). Although the buzz about crowdosourcing has died down somewhat, the technique is still incredibly prevelant on the web, with new services frequently popping up that attempt to harness the creative and labor potential of an Internet of “workers”.

In this two-day workshop, we will start by discussing crowdsourcing in general and MTurk specifically, in order to orient ourselves in the current landscape. We will then move on to learning how to create our own Mechanical Turk projects using tools like Node.js, Express, Mongodb, and the MTurk API. Finally, we will launch our projects using another Amazon service: Elastic Compute Cloud (EC2). Participants should come with some idea of a project that they’d like to start.



  • Introductions
  • Discussion
  • Share project ideas, get feedback (optional)
  • Creating a foundation for our application with Node.js / Express / Twitter Bootstrap
  • mongojs module and Mongolab
  • Introduction to MTurk: terminology, manually creating HITs, manual HIT management, Requester/Worker Sandbox


  • Mturk nodejs module: Creating HITs from within our application, qualifications, fetching results, approving/rejecting answers
  • If time permits, Twilio for nodejs
  • Begin working on projects
  • Deploying on EC2


  1. Please sign up for a Mechanical Turk account before the workshop. Amazon requires that you deposit money into your account before posting a job to Mturk. This money is used to pay the workers when/if they complete an assignment. Please deposit $10-$20 for the purposes of this workshop.
  2. As much as I would have liked to make this workshop language-agnostic, I don’t see a way to do this without delving deep into the MTurk API, which is outside of the scope of what is possible in one weekend. With that in mind, I’ve chosen Node.js - mostly because I wrote the mturk nodejs module for a previous project. Therefore, in order to keep the focus of the workshop on MTurk and not Nodejs, some experience with Node.js and Express is required. If you’ve never these tools, please make sure to complete the following tutorials before attending the workshop. If have questions while completing these tutorials, please contact us. It also may be possible to arrange some private tutoring before the workshop.
  3. Please sign up for Amazon Web Services before the workshop. Note that there will be a nominal fee for starting a web instance for use in this workshop. If you are feeling ambitious and want to get a head start, check out Ben Adel’s tutorial on setting up an EC2 instance for a Node project or a similar one for Windows).
  4. Please read the (mostly short) articles and check out the projects below

Reading List

Selected Projects