Instructor Notes
General Notes
- It’s all right not to get through the whole lesson.
- This lesson is designed for people who have never programmed before, but any given class may include people with a wide range of prior experience. We have therefore included enough material to fill a full day if need be, but expect that many offerings will only get as far as the introduction to Pandas.
- Don’t tell people to Google things.
- One of the goals of this less is to help novices build a workable mental model of how programming works. Until they have that model, they will not know what to search for or how to recognize a helpful answer. Telling them to Google can also give the impression that we think their problem is trivial. (That said, if learners have done enough programming before to be past these issues, having them search for solutions online can help them solidify their understanding.) It’s also worth quoting Trevor King’s comment about online search: “If you find anything, other folks were confused enough to bother with a blog or Stack Overflow post, so it’s probably not trivial.”
Notes on individual episodes
- Operators, Functions and Methods
- Let learners run the cells that produce errors on purpose and read the error message together. This makes later errors less intimidating.
- Introduction to pandas
-
The data is downloaded from GitHub during the lesson. If the network in
the room is unreliable, download
openapc.csvbeforehand and share it with the learners. - Retrieving Metadata from an API
-
In current versions of the DataCite JSON schema,
publisheris a dictionary ({'name': 'Zenodo'}), not a string. Older copies of the notebook usedoi_dataset["publisher"]directly, which raises aTypeError. DOIs of journal articles are usually registered with Crossref and return a 404 error from the DataCite API.
Getting Started
Instructor Note
Instructors: Since the lesson is focused on Python we don’t include any Markdown examples here. If you want to teach Markdown, note that it will slow down the lesson.
Variables and Data Types
Operators, Functions and Methods
Lists and Dictionaries
Loops and Conditionals
Introduction to pandas
Retrieving Metadata from an API
Instructor Note
The following part is optional. Only show it if learners ask how to get all creators of a publication.