Intro2Computing4Psychology icon indicating copy to clipboard operation
Intro2Computing4Psychology copied to clipboard

A guided introduction to computing tools useful for research in psychology - targeted to complete beginners

#+Title: Introduction to Computing for Psychology Students #+Author: Britt Anderson

  • Overview 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:

    1. version control,
    2. operating system and software installation,
    3. using the terminal/command line,
    4. coding (Python and R),
      1. General purpose computing
      2. Data analysis
      3. Statistics
      4. Data Visualizations
    5. and the writing tools necessary for conducting
      1. a simple data collection (Psychopy),
      2. analysis, and
      3. generation of a reproducible report.
  • Org Book 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 [[https://vimeo.com/448900968][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.

  • Invitation

    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.

  • Organization of the Repository

What follows is left from the =s22= branch. It will be updated as the revision proceeds.

  • In the ~startHere~ directory there is an [[file:startHere/outline.org][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 [[https://vimeo.com][Vimeo]] in the i2c4p [[https://vimeo.com/channels/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.

  • Feel Free to Comment or Contribute 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 [[mailto: [email protected]][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 [[https://uwaterloo.ca][University of Waterloo]].

  • Footnotes

[fn:1] There is a trick to simulate the look of a html file as a webpage. Prefix it with ~https://htmlpreview.github.io/?~.