Welcome to COGS 18: Introduction to Python!#

COGS 18 | Jason Fleischer | Winter 2023 | UCSD


Introduction to Python (COGS 18) is a course offered by the Department of Cognitive Science of UC San Diego. It is a hands-on programming course, focused on teaching students in Cognitive Science and related disciplines an introduction on how to productively use Python.

Current Iteration#

Introduction to Python is currently running for Winter 2023, please read the syllabus here!.


All course materials are openly available and downloadable from this website. Materials presented during the course lectures are viewable here.

Git and Github are tools used by many programmers. Git is version control software that helps you keep track of changes in your code as you work on it. GitHub is a web platform (using Git) for working on your code by yourself, working on your code with other programmers, and sharing your code once it is ready to be used. The source material for everything hosted on this site is also available on GitHub. While we don’t explicitly teach you to use GitHub in this class, you should definitely explore it on your own if you’re interested! Here are some different Github tutorials

As stated above, one use of GitHub is distributing your finished software. You don’t need to understand it to use it. We highly recommend following along in class with a live notebook so you can try the programs we talk about as we talk about them. To get your own live copy of the notebooks and follow along in lecture simply click on this link to transfer the current lecture materials from our GitHub to your DataHub instance This GitHub repo updates every lecture, so you will have to click on this link every lecture to keep your DataHub up to date.

Coding Labs#

An overview of the Coding Labs is viewable here.


An overview of the Assignments is viewable here.


An overview of the Project is viewable here and we’ve compiled a number of Frequently Asked questions (FAQs). Also available on datahub or for downlosf here is a template for setting up your project.