Course Syllabus
Cogs239: Programming Online Behavioral Experiments
Instructor:
Mark Steyvers
mark.steyvers@uci.edu
https://steyvers.socsci.uci.edu/
Office Hours and location
By appointment
Course Description
Web-based research has become increasingly prevalent in the field of psychology. As opposed to traditional data collection methods involving in-person lab visits, modern web-based tools enable the recruitment of participants from online platforms such as Amazon Mechanical Turk and Prolific. These tools also facilitate the execution of experiments through standard internet browsers like Chrome and Safari.
The objective of this course is to equip students with the necessary skills to develop behavioral experiments on internet browsers, and to integrate these experiments with Amazon Mechanical Turk and Prolific platforms. Throughout the course, we will cover JavaScript and CSS coding techniques essential for presenting stimuli on a browser, gathering responses from participants, and managing the experiment's logic. Moreover, we will utilize cloud-based databases, such as Google Firebase, for storing and retrieving experimental data, as well as for implementing counterbalancing across conditions. The course will also address the process of obtaining approval for proposed experiments from the Institutional Review Board (IRB).
Upon completion of this course, students will possess the capabilities to design and conduct their own behavioral experiments using either Amazon Mechanical Turk or Prolific recruitment platforms. Given that online recruitment platforms necessitate compensating participants, the course will provide limited funding to facilitate the execution of students' experiments.
Coding Prerequisites
While having prior knowledge of JavaScript is advantageous, it is not a prerequisite for this course. The curriculum includes a concise tutorial covering JavaScript fundamentals as well as essential HTML/CSS concepts. The instructor has designed several practice quizzes to help you assess your understanding of the course material. These quizzes are ungraded, and your responses will not be visible to the instructor.
It is expected that you possess a basic understanding of programming concepts, such as for loops, conditional statements, and data types like strings and arrays, which can be acquired through experience with other programming languages (e.g., Python, R, C++, MATLAB). Lacking this foundational knowledge may make it challenging to learn JavaScript within a single quarter.
Activities during Class-Time
During class time, we will concentrate on the following activities:
- Engaging in discussions related to challenges arising in internet-based research. Topics will include identifying the types of research best suited for online investigation, exploring standard methods to enhance data quality, determining ways to assess participant attentiveness, and addressing the issue of participant dropout during experiments.
- The instructor will deliver technical presentations covering JavaScript/CSS coding, data management using Google Firebase, and managing research platforms such as Prolific and Amazon Mechanical Turk.
- Students will work at their own pace on individual projects, with the instructor offering guidance and feedback to support their progress.
Coding Assignments
The course features several coding assignments in JavaScript, specifically crafted to assess your comprehension of constructing online experiments. These tasks will cover essential aspects such as displaying instructional screens, capturing user interactions like button clicks, and sequentially presenting a series of images throughout multiple trials. The coding assignments are designed to help you set up your own final project.
Final Project
For your final project, the objective is to design, develop, and implement code for a new behavioral experiment relevant to your research. You will need to obtain Institutional Review Board (IRB) approval for your study and recruit participants through platforms such as Amazon Mechanical Turk or Prolific. The course will provide limited funding to conduct a small-scale study. Additionally, you will be required to conduct a basic analysis of the collected data.
To document your final project, submit a concise, well-structured paper of 4-6 pages, which includes your code and data as part of the final submission. You may use any of the experiment templates provided during the course as a foundation for your experiment; however, you are encouraged to think creatively and develop original ideas.
For complex projects, collaboration in small teams is permitted and encouraged.
Grading Policy
Grades will be based on coding assignments (20%), class participation (20%), final project (60%)
Course Summary:
| Date | Details | Due |
|---|---|---|