Programming Psychology Experiments¶
Objectives¶
learn to build experimental psychology experiments, that is, how to create visual and auditory stimuli, to present them at precise times and possibly record participants’ responses and analyse them
learn tools to do reproducible science (github, markdown, …)
improve your programming skills (clean code, real-time, …)
Pedagogy¶
The lectures essentially consist of Practical tutorials: After we introduce a topic, you have to solve challenges (with help from us if necessary).
We will use mostly Python, but also Javascript for online experiments.
Bring your computer and have the software installed in advance !!!
Expectations/Evaluations¶
Attendance is expected (warn me by email if you cannot attend for a good reason).
Working during the course is also expected. At the end of lectures, I will asked to you to send me by email a copy of your work folder, with your attempts.
Resources:¶
Our Github repositories:¶
Python¶
Books:
Automate the boring stuff with Python https://automatetheboringstuff.com/ (highly recommended!)
Apprendre à Programmer avec Python3 https://inforef.be/swi/python.htm
Think Python http://greenteapress.com/thinkpython2/
MOOCs:
Udemy’s Python programming for absolute beginners https://www.udemy.com/python-programming-for-absolute-beginners/
Code Academy’s Learn Python module https://www.codecademy.com/learn/learn-python
Openclassrooms’ Apprendre à programmer en Python https://openclassrooms.com/fr/courses/235344-apprenez-a-programmer-en-python
Python 3 : des fondamentaux aux concepts avancés du langage https://www.fun-mooc.fr/en/cours/python-3-des-fondamentaux-aux-concepts-avances-du-langage/
Programming skills¶
Software Carpentry https://software-carpentry.org/lessons/ provides nice lessons about writing software for science and do reproducible science.
Unix Command line (shell)¶
The Linux Command Line http://linuxcommand.org/tlcl.php by Williams Shotts.
Openclassrooms MOOC https://openclassrooms.com/courses/reprenez-le-controle-a-l-aide-de-linux
Git¶
Openclassrooms’ MOOC Manage your code with Git and Github https://openclassrooms.com/en/courses/5671626-manage-your-code-project-with-git-github
https://product.hubspot.com/blog/git-and-github-tutorial-for-beginners
The Git Book https://git-scm.com/book/en/v2
My own git cheat page http://www.pallier.org/version-control-at-your-fingertips-a-quick-start-with-git.html#version-control-at-your-fingertips-a-quick-start-with-git
Cognitive and Brain Sciences Programming¶
Programming Visual Illusions for Everyone https://www.programmingvisualillusionsforeveryone.online/ by Marco Bertamini.
Neural Data Science: A Primer with MATLAB and Python by von Erik Lee Nylen and Pascal Wallisch
Matlab for Brain and Cognitive Scientists and Analyzing neural time series data by Mike X Cohen
Python in Neuroscience https://www.frontiersin.org/research-topics/8/python-in-neuroscience
Modeling Psychophysical Data in R by Kenneth Knoblauch & Laurence T. Maloney
Stimulus/Experiment generation modules¶
http://www.expyriment.org (See Get started with Expyriment https://docs.expyriment.org/Tutorial.html
http://psychopy.org (See Programming with PsychoPy https://www.socsci.ru.nl/wilberth/nocms/psychopy/print.php)
http://psychtoolbox.org/ (See Psychtoolbox demos http://peterscarfe.com/ptbtutorials.html)
https://www.jspsych.org/ (See intro at https://blog.s-m.ac/using-jspsych/)
Data analyses, Statistics in Python¶
Modules: numpy, scipy, pandas, seaborn, statsmodel, sklearn
Scipy Lecture Notes: http://www.scipy-lectures.org/
Think Stats by Allen B. Downey: http://greenteapress.com/thinkstats2/
Python Data Science Handbook by Jake VanderPlas: https://jakevdp.github.io/PythonDataScienceHandbook
Introduction to Data Science in Python: notebook from a 2 day workshop organized by the Paris-Saclay Center for Data Science: https://github.com/paris-saclay-cds/data-science-workshop-2019
Machine Learning with scikit-learn” MOOC: https://www.fun-mooc.fr/en/courses/machine-learning-python-scikit-learn/ (on github: https://inria.github.io/scikit-learn-mooc/)