This repository houses material I use in teaching at the University of Waterloo (Canada). The purpose is to introduce psychology undergraduates with limited quantitative and computing backgrounds to using their computers as research tools The topics covered include:
- version control,
- operating system and software installation,
- using the terminal/command line,
- coding (Python and R),
- General purpose computing
- Data analysis
- Statistics
- Data Visualizations
- and the writing tools necessary for conducting
- a simple data collection (Psychopy),
- analysis, and
- generation of a reproducible report.
In December 2022 I began work on collating the material into a sort of “book” using the org-publish
functionality of emacs org-mode. The org-book
branch tracks that effort. It also incorporates changes in the lessons that have been prompted by new features in the citation features of org-mode and many changes in the methods for installing linux on Windows and Mac laptops.
I have recorded a brief video introduction to the course. Many of those lessons are out of date and the ordering is hard to divine (it is basically alphabetical), but I hope to provide an easier path to follow in this revision.
While the material was developed for students at the University of Waterloo, I hope that some of the material may be useful to others. Feel free to provide feedback, or suggest material for inclusion.
What follows is left from the s22
branch. It will be updated as the revision proceeds.
- In the
startHere
directory there is an outline with a path through the material. Other paths are certainly possible, and you are encouraged to just pick and chose what is relevant for you. If you find that you pick a topic and it requires something you skipped you can always backtrack and pick it up later.
The teaching material is divided into subdirectories based on the nature of the content. Your main focus should be the topics
folder. The assessments
directory contains versions of assessments I give the students to provide them a concrete opportunity to use the skills and in order to document their progress and to give feedback. You are welcome to use the assessments to develop your own skills, but don’t expect feedback or submit them to me. codeExamples
contains examples submitted by past students, or written by me, to show how certain lessons might be tackled, or as educational illustrations. Many of the exercises are accompanied by videos or screencasts walking through various tasks. Those videos are hosted on Vimeo in the i2c4p channel. Their titles will guide you to the accompanying activity.
The best way to use this repository is by forking or cloning your own version. Work locally in your clone. There are internal links between files that don’t work properly if you just try and open the directories here and click on the links. The rendered version of one of the .org
files may look like a web page, but it isn’t. Also, any exports to html that I include will open as raw files on Github not as nicely rendered web pages, which they will often on your local computer[fn:1]. Links and file type associations should work better if you work within a local clone of the repository than if you work by clicking on files in github or download files one at a time. Having your own version of all the files locally also makes it easier for you to copy and amend the material to suit your own needs.
If something is unclear go ahead and open an issue. If you find small changes like typos or broken links that you know how to fix please feel free to make a pull request, or if that is too inconvenient you can also point me to the needed fixes as an issue.
This material is taught in many ways and many places. Most of it is not original to me. I am just curating topics and ideas that I have learned from others or providing links to others’ material that has helped me. Even when I make a video or a written file to explain something I am probably telling you something I learned elsewhere.
If you have ideas about approaches you think may work better for this material or want to talk about pedagogical strategies please feel free to email me. I am happy to entertain ideas for additional segments and topics, but all such suggestions or major restructuring of content will have to wait until this first version is completed and has been trialed by my Fall 2020 course at the University of Waterloo.
[fn:1] There is a trick to simulate the look of a html file as a webpage. Prefix it with https://htmlpreview.github.io/?
.