Modern browsers are remarkably powerful. Most browsers released since 2011 have allowed HTML5 which supports more flexible rendering of web pages (images and text can be positioned precisely enough to run “proper” behavioural experiments). Since 2013 most have supported WebGL. That allows graphics to be rendered really quickly using “hardware acceleration” on your graphics card. The result is rich pages that can be updated very rapidly and can be forced to sync to screen refresh, which is critical for stimulus timing.
All this means we can do great things with online experiments that actually have good temporal precision!
The experiment supports all the standard timing aspects of any PsychoPy Builder experiment; you can specify your stimuli in terms of time presented or number of screen refreshes etc (and the actual refresh rate of your participant’s computer will be stored in your data file). When it’s finished it saves the data into a comma-separated-value (CSV) file in the “data” folder on the web server. This looks very much like the standard CSV outputs of your same PsychoPy experiment run locally.
Not all components are currently supported. Keep an eye on the Status of online options page to see what objects you can use already.
PsychoPy, by comparison, is designed to give you total flexibility. You decide what constitutes a “trial” and how things should operate in time. We think that control is very important to creating a wide range of studies.