These are a mix of videos from 2021 and 2022, depending on which seem most useful.
- Computing and interfaces (2021) 4m26s (this is a bit rambly...)
- Why we use conda environments (2022) 13m40s
- Checking
condais installed (2022) 1m09s - Building the
g420environment (2022) 2m58s - Running IDLE (2022) 3m40s
- Overview of week's practical elements (2021) 4m50s
- Getting to the materials 2m02s
- Unpacking the notebook materials and getting started 1m34s
- Introducing jupyter notebooks 6m16s
- Defining a function 7m38s
- Function parameters 2m55s
These are from 2021, because I forgot to hit record this time around (oops)
- Conditionals and the flow of program execution
- Boolean expressions with
TrueandFalseandand,orandnot - Evaluation of Boolean expressions
ifandelse
- Introducing
geopandas4m50s - Opening a spatial dataset and a simple map 4m21s
- Mapping data: choropleth maps 5m10s
- Multipanel maps 1m22s
- Dealing with projections 6m45s
- Preamble materials 12m33s
- The assignment itself 3m18s
- Overview comments 1m32s
whileloops 8m01sforloops 3m24s- Iteration notebook 2m39s
- Sequences, introducing
strings andlists 5m57s - Slicing sequences 4m05s
stringmethods 2m57slistmethods 1m00s- Immutable
strings, mutablelists4m17s - Sequences notebooks 1m31s
- Playing
hangman6m15s - Overview of the
hangmancode 10m03s
- Dictionaries and me (1m19s)
- Overview of dictionaries (2m30s)
- A silly example: Te Reo - English translation (2m25s)
- The basic features of dictionaries ()
- Inverting dictionaries to get the reverse lookup from values to keys (3m48s)
- Counting using a dictionary (9m23s)
- Memoizing a function using a dictionary (11m51s)
cachetools(1m55s)
- The land resource inventory data (9m11s)
- An outline solution (8m17s)
These materials were recorded in 2020, but remain applicable this year.
- Overview
- Loading the data
- Buffering
- Centroids and other spatial properties
- Spatial transformation
- Spatial overlays and joins
- Dissolves and merges
- Introduction to OOP 7m45s
- A minimalist class that contains data 8m27s
- Copying an object with
copy.copy()1m35s - Objects as more than data containers 6m11s Note: I seem to have cut the last 10s or so from that one, but you get the idea...
- How the class constructor imposes expectations on data 3m05s
- 'Dunder' methods (plus digression about
self) 9m17s - Adding specialised methods to our class 2m40s
dataclassobjects 3m25s- Composing more complex classes from simple ones 8m14s Note: probably shouldn't use a
tupleofPoints in case we might want thePolygonvertices to be mutable.
Nothing to see here really..., but for completeness...
- Overview 2m26s
- Isochrones 4m21s
- Multitype Voronoi 2m15s
- Gerrymandering and zone design 6m09s
- Cartograms 2m49s
- Visibility graphs 1m42s
- Woven maps 5m23s
- Introductory comments 1m18s
- Indentation tricks 7m10s
- Default values 4m00s
- Arbitrary numbers of arguments 4m22s
- Keyword arguments 2m50s
- Putting it all together 3m06s
- What they are 3m07s
- Two trivial reasons to use them 2m16s
- Performance... take 1, where I get flustered 2m43s
- Performance... take 2, which is not as bad... 1m31s
mapand comprehensions 6m21s
- Importing modules 6m21s
condaenvironments... with more technical glitches 5m22s- An overview of github 7m28s
- History on github and cloning a repo locally 6m41s
- VSCode and your project 9m45s
New! For 2021...
- The web in general (6:03)
- A simple web page (8:31)
- A more complicated web page (5:38)
- Summing all that up (5:00)
- Query parameters in a URL (1:59)
- Grabbing the AED locations data (11:01)
- APIs and why web scraping (8:11)
- The DOM (4:45)
- Introducing
BeautifulSoup4(8:10) - Grabbing the data (7:13)
- Making a scraper (5:13)
Some glitches at the start with getting that WFS layer into Q. And the sound is only OK, I'm afraid...
- The python console in QGIS and
pyqgisthe horror, the horror (7:51) - Doing some odds and ends in the console (6:35)
- There is also an editor available... and why
pyqgisis not very 'pythonic' (6:52)
(Try import this in a python console.)
- Answer to a question about whether a simpler API would be possible in some other language (5:04)
- Model designer intro and the sequence of operations for the polygon Voronoi model (9:51)
- Automating that workflow... (6:17)
- Models and generated code (8:36)
- Some limitations of visual model builders (9:58)
- Use code instead! (4:21)