Coding fundamentals for humanists

A course overview

Author

Marie-Hélène Burle

Content from the webinar slides for easier browsing.

The course

Goal

Demystify coding

Give you confidence

Explain foundational concepts

Give you tools for your research

Who should attend?

Anyone without any coding experience who would like to use coding for their research or who is interested in understanding what coding is and how it works.

This course is particularly useful as a prerequisite to other DHSI courses using Python.

Overview

Core concepts of programming languages

Introduction to JupyterLab

Basics of Python

Using LLMs to write code

API querying in Python

Web scraping with Python

Your turn: get data from a website

Presentations: share what you learnt

In practice

Website

Each year we build a website. This makes it easier for attendees to follow along, copy code snippets, etc.

The sites never get taken down so attendees can rely on them to find information later on.

Presentation

We start the course with a presentation explaining the concepts:

Hands-on

Then move to hands-on:

JupyterLab

We use the free and open-source JupyterLab as an interface to Python to make it easier to play with code:

We pre-write the notebooks

Example of empty notebook:

And we let you fill-in the code

Example of completed notebook:

Guidance on using LLMs

When used well, large language models can allow students:

  • to be much more independent,
  • not to get frustrated over small road-blocks,
  • to go much further faster,
  • to keep learning on their own,
  • to be able to apply Python to their research.

We will show you what works and what doesn’t when using LLMs to write code.

What you will be able to do

End of course projects

At the end of the course, attendees work in pairs on a project of their choice (which can be their own research) with our help.

Following are samples of data our past students successfully scraped from various websites.

Guardian archives

Spotify playlist

Numbers of published books

Reddit data

Exported as a Python list:

And as polars DataFrame: