
OpenSesame
Graphical experiment builder for psychology research
Description
Build a gaze-cuing experiment: fixation dot, then a face looking left or right, then a target on one side, logging the keypress and its reaction time. Written from scratch that is hundreds of lines, and a few milliseconds of timing drift makes the data worthless. OpenSesame turns it into dragging: the sidebar holds stimulus and response blocks, you drop them onto a timeline in order, and loop items repeat the trials, with each item's duration set in its properties.
It does not lock programming out — it just confines it to where you need it. An inline_script item drops Python in at any point for conditional branching, online computation or a custom device. Eye trackers, button boxes and EEG triggers have ready-made plugins (the PyGaze set sits right in the sidebar), so nobody hand-writes serial timing. The same experiment exports to OSWeb and runs in a browser, so online and in-lab participants share one file.
Timeline composition: a sequence holds sketchpads, keyboard_response, sampler and logger items in order while loops repeat them per the design, with the whole structure visible in the Overview tree.
A full set of building blocks: sketchpads for visual stimuli, samplers for sound, forms for questionnaires and feedback items for accuracy — the components common paradigms need are already in the sidebar.
Python anywhere: inline_script items read and write experiment variables, branch on conditions and generate stimuli on the fly, so whatever the GUI cannot express is written in place rather than in another tool.
Hardware plugins: PyGaze covers eye trackers, with further plugins for button boxes, parallel-port triggers and serial I/O — the usual lab equipment connects without custom code.
Variable inspector: shows every experiment variable's current value while running, which is how you find out why a condition never fired without scattering print statements.
Export to the browser: OSWeb converts the experiment to a web version, so online data collection uses the same file as the lab session.
Example experiments included: the install ships runnable templates for questionnaires, eye tracking and gaze cuing — far faster to adapt than an empty timeline.
Open source, cross-platform: free software written in Python with installers for Windows, macOS and Linux, and experiment files move between them unchanged.
It does not lock programming out — it just confines it to where you need it. An inline_script item drops Python in at any point for conditional branching, online computation or a custom device. Eye trackers, button boxes and EEG triggers have ready-made plugins (the PyGaze set sits right in the sidebar), so nobody hand-writes serial timing. The same experiment exports to OSWeb and runs in a browser, so online and in-lab participants share one file.
Features
Timeline composition: a sequence holds sketchpads, keyboard_response, sampler and logger items in order while loops repeat them per the design, with the whole structure visible in the Overview tree.
A full set of building blocks: sketchpads for visual stimuli, samplers for sound, forms for questionnaires and feedback items for accuracy — the components common paradigms need are already in the sidebar.
Python anywhere: inline_script items read and write experiment variables, branch on conditions and generate stimuli on the fly, so whatever the GUI cannot express is written in place rather than in another tool.
Hardware plugins: PyGaze covers eye trackers, with further plugins for button boxes, parallel-port triggers and serial I/O — the usual lab equipment connects without custom code.
Variable inspector: shows every experiment variable's current value while running, which is how you find out why a condition never fired without scattering print statements.
Export to the browser: OSWeb converts the experiment to a web version, so online data collection uses the same file as the lab session.
Example experiments included: the install ships runnable templates for questionnaires, eye tracking and gaze cuing — far faster to adapt than an empty timeline.
Open source, cross-platform: free software written in Python with installers for Windows, macOS and Linux, and experiment files move between them unchanged.
