4
{'Chibok': 4}
Jon Reades - j.reades@ucl.ac.uk
22nd October 2026
4
{'Chibok': 4}
Four kidnappings, or one kidnapping reported four times?
So what is it really that GDELT is measuring? What events are happening in the world, or what the major international news organizations are focusing their attention on? ~ D’Ignazio and Klein (2020, 16)
From LOLs (“Making This Useful”):
What’s wrong with this data?
| On my slide | Actually | |
|---|---|---|
| London longitude | 0.1275 |
-0.1275 |
| New York longitude | 74.0059 |
-74.0059 |
| Tokyo time zone1 | +8 |
+9 (winter), +8 (summer) |
| New York time zone | -5 |
-5 (winter), -4 (briefly in spring) |
Actually, it depends on where you’re measuring from: London or UTC!
“‘Raw data’ is an oxymoron” ~ Gitelman and Jackson, quoted in D’Ignazio and Klein (2020, 13)
What place-based “information” doesn’t fit on a shelf or in a database? What are the non-textual, un-recordable forms of cultural memory? ~ Mattern (2017)
The last 100,000 crimes reported to Chicago police in 2025 (28MB)1:
About two seconds for 100,000 rows, and no Python.
That’s not the number of homicides with an arrest: it’s 3 too many. Why?
import csv
import urllib.request
url = 'https://data.cityofchicago.org/resource/t7ek-mgzi.csv?$limit=20'
with urllib.request.urlopen(url) as f:
rows = list(csv.reader(f.read().decode('utf-8').splitlines()))
header = rows[0] # the column names
data = rows[1:] # a list of lists: one list per crime
crimes = {} # a dict of lists: one list per column
for col in ['date', 'primary_type', 'block', 'arrest', 'latitude']:
i = header.index(col)
crimes[col] = []
for row in data:
crimes[col].append(row[i])In pairs, write down the code before I run it:
latitude?A reproducible sequence of interactions:
To bring one file back into the present:
| CVS (1990), Subversion (2000) | Git (2005) | |
|---|---|---|
| Where is the history? | On one central server | In every copy |
| Commit offline? | No | Yes |
| GitHub is… | (n/a) | just another copy |
So commit and push are different things.
When asked for a password, GitHub wants a personal access token (or an SSH key), not your account password.
The way through this predicament is by considering context, a process that includes understanding the provenance and environment from which the data was collected […] ~ D’Ignazio and Klein (2020, 27)
git log is the provenance of your work. Write the message for the person who will read it in six months.
Here’s what we’re covering:
Complete the sentence:
How I store data is / isn’t a neutral choice, because…
A selection will open next week’s session.
Provide your input here: form.menti.com/s/albxtzgfabbm