Skip to content

SweetBean

SweetBean is an open-source domain-specific programming language in Python built for the declarative specification of stimuli sequences and the synthesis of JavaScript or HTML-files ready to be served as online experiments to the web.

Motivation

Crowd-sourced online experiments have become increasingly popular across the behavioral sciences, including cognitive psychology, social psychology, and behavioral economics. The success of online experiments can be partly attributed to the ability to collect larger data sets within shorter periods compared to lab-based experiments. On a practical level, online experiments have been facilitated by the development of open-source software for building online experiments, such as jsPsych.

The tools to build online-experiments often rely on programming skills in JavaScript, HTML, and CSS. SweetBean is designed as declarative language in Python in a novel way. We use word frequencies in research literature to identify tasks commonly used in behavioral experiments to tailor the SweetBean language to its audience. Additionally, we evaluate SweetBean with Natural Language Processing to ensure an intuitive handling, as well as an easy extension to automatic documentation and "no code" functionality.

About

This project is in active development by the Autonomous Empirical Research Group, Lead Designer Younes Strittmatter, led by Sebastian Musslick, in collaboration with the Center for Computation and Visualization at Brown University.

This research program is supported by Schmidt Science Fellows, in partnership with the Rhodes Trust, as well as the Carney BRAINSTORM program at Brown University.