This year we are 'flipping' the classroom. That means that we expect you to come to 'lecture' (except in Week 1!) having already watched the assigned videos and completed the assigned readings. This means that there is a mix of 'asynchronous' (work that you do in your own time) and 'synchronous' (work that we do during scheduled hours) interaction. For those unable to attend a 'synchronous' activity because of Time Zone issues we intend to make a recording available afterwards, but we expect that a 2-hour recording of a group discussion and live coding session will be rather less educational and informative than actually being there so recordings should not be used as a substitute for attendance.
The nature and amount of preparation will vary from week to week, but may include:
- Readings from both academic and non-academic sources.
- Recorded lectures from CASA staff.
- Recorded videos from non-CASA staff.
- short Moodle quizzes to test your completion of readings and videos.
- Contributions to a weekly 'Padlet' that will be used to guide the 'synchronous' sessions.
The 'lecture' in your timetable will be used for a mix of discussion and 'live coding' (eeek!) using the following framework:
- We will review questions and issues arising from the previous week's practical session.
- We will use your contributions to the week's Padlet to prioritise discussion around concepts and readings with which students are struggling or wish to engage further.
- We will have a 'live coding' session following an 'I do/We do' format: we will employ concepts covered in the week's preparation activities, as well as approaches that will be explored further in the practical, to look a real-world data set together using code.
So we're going to call these workshops instead! These will take place on Zoom and can be accessed using the 'activity' specified on the Lectures and Workshop Material page.
There are two timetabled practical sessions; we will inform you of your assigned session. These will also take place on Zoom and can also be accessed using the 'activity' specified on the Lectures and Workshop Material page of Moodle.
This week is focussed on getting you set up for the rest of the course in terms of having the requisite software installed and accounts configured so that you can keep track of your work, write code, and track changes.
Although none of these activities are compulsory in advance of the first session, getting your computer set up to code does take time and most of these preparatory activites are fairly straightforward... with a few exceptions noted below. If you are able to get these tools installed in advance then you can focus on the taught content in the first two practicals rather than also wrestling with an installation. This will also give us more time to help you if you discover that you're one of the unlucky people for whom installation is a lot more work!
Please ensure that your computer is fully up-to-date with Operating System and application updates. Also, please make a note of the following three things:
- What Operating System and Version is your main computer running? Help for Windows. Help for Mac.
- How much RAM does your main computer have? Help for Windows. Help for Mac.
- How much free disk space does your main computer have? Help for Windows. Help for Mac.
This information will be very useful during the first few weeks when you are most likely to encounter problems with the programming environment. Generally speaking, the things to watch out for are:
- Your operating system is Windows 10 Home, or something older than Windows 10 (e.g. Windows 8 or ealier), or MacOS older than 10.13 (High Sierra).
- Your computer has less than 8GB of RAM.
- Your computer has less than 15GB of free disk space remaining.
If you want to get a little bit ahead of things, then you should try to install one of:
- Mac: the Xcode Command Line Tools, which can be done directly from the Terminal.
- Windows: Git Bash, for which you can follow these instructions.
If you want to get even more ahead of things, then the single most important thing you can do is to install the programming environment. This is the stage where you're most likely to encounter problems that will need our assistance, so knowing that you need our help here means that you ask for it much sooner!
So we have created installation videos with transcripts for Macs as well as Windows. There are also written instructions that you can follow for installing Vagrant, if you prefer.
If you are on a Windows machine and receive this error:
VBoxManage.exe: error: Not in a hypervisor partition (HVP=0) (VERR_NEM_NOT_AVAILABLE). VBoxManage.exe: error: VT-x is disabled in the BIOS for all CPU modes (VERR_VMX_MSR_ALL_VMX_DISABLED) VBoxManage.exe: error: Details: code E_FAIL (0x80004005), component ConsoleWrap, interface IConsole
Then you have two options:
- Talk to use about how to enable Hypervisor in the BIOS for computer.
- Switch to installing Anaconda Python directly.
We'd recommend #1 first as it will be useful to have 'virtualisation' enabled on your computer anyway, but we have #2 has a backup if that's just not possible for some reason!
-
Poll Time! The password for all Padlets can be found on Moodle.
-
1.2: Tools of the Trade (Recording)
-
1.3: Writing Code (Recording)
If you have already installed the programming environment then the practical can be downloaded from GitHub (Click on Raw and then Save File As...) and viewed by saving it to your Documents/CASA/... folder, or you can just view it online in your web browser.
If you didn't get to this during the practical then please do it before we get to Week 2's practical! You need to install one of:
- Mac: the Xcode Command Line Tools, which can be done directly from the Terminal.
- Windows: Git Bash, for which you can follow these instructions.
See the previous week's instructions. It is vital that you try to get this installed before this week's practical. If you encounter difficulties we will need time to help you, so the sooner you know that you need help, the faster we can help you.
If you have not completed Code Camp, then we would strongly recommend that you tackle Notebooks 3–5 as preparation for the week's class.
If you would like to have more time to focus on coding, please try to get your local computer and GitHub synchronising your Introduction to Programming (suggested name: i2p) project. Click on the still below to access the video on Streams.
There are written instructions in the Week's practical.
As we're working in a 'flipped' environment, you should watch these videos before class so that the 'live' (a.k.a. 'synchronous') session can focus on demonstration, discussion, and clarification. This week is very busy because we need to cover off the basics for those of you who were unable to engage with Code Camp, while recapping only the crucial bits for those of you who were able to do so:
- Watch: Python: the Basics (Notes)
- Watch: Lists (Notes)
- Watch: Iteration (Notes)
- Watch: The Command Line (Notes)
- Watch: Getting Stuck Into Git (Notes)
- Padlet: Collaborative Agenda
- Complete the short Moodle quiz associated with this week's activities.
-
Review of Collaborative Agenda (Recording)
-
Discussion of Readings (Recording)
-
Geography and Computers (Notes)
-
Principles of Programming (Notes)
-
Live Coding (Recording)
This week's practical requires you to have completed installation of the programming environment. The practical can be downloaded from GitHub.
All students should complete/revisit Code Camp Notebooks 8–11.
Note: there is an issue with the GeoJSON tasks in Notebooks 8 and 9. We can discuss in the Workshop.
This week we start to move beyond Code Camp. So although you should recognise many of the parts that we discuss, you'll see that we start to put them together in a new way:
- Watch: Dictionaries (Notes)
- Watch: LOLs (Notes)
- Watch: DOLs to Data (Notes)
- Watch: Functions (Notes)
- Watch: Packages (Notes)
- Padlet: Collaborative Agenda
- Complete the short Moodle quiz associated with this week's activities.
- Reviewing the Collaborative Agenda (Recording Part 1 and Recording Part 2)
- Discussion of Readings (Recording)
- Live Coding (Recording)
The practical can then be downloaded from GitHub.
- [@Cox:2016] PDF
- [@dignazio:2020, chap. 5] Unicorns, Janitors, Ninjas, Wizards, and Rock Stars Pre-review Chapter URL
- Padlet: Collaborative Agenda
- Complete the early feedback questionnaire please!
- Reviewing the Collaborative Agenda (Recording)
- Discussion of Readings (see Above)
- Live Coding (Part 2; Part 3)
The practical can be downloaded from GitHub.
- Watch: Logic (Notes)
- Watch: Randomness (Notes)
- Watch: Data Files (Notes)
- Watch: Pandas (Notes)
- [@dignazio:2020, chap. 4] What Gets Counted Counts in Data Feminism; Pre-review URL
- [@Wachsmuth:2018] DOI
- [@Harris:2018] URL
- Padlet: Collaborative Agenda
- Brief Discussion of *Assessments (Recording)
- Reviewing the Collaborative Agenda (Recording)
- Discussion of Readings (Recording)
- Live Coding (Recording)
The practical can be downloaded from GitHub.
You should be doing the readings that will support your answers to Assessment #2. And, looking ahead to the Final Assessment and where you might find ideas or literature to support your thinking, I'd suggest having a browse of the Full Bibliography. This is a working document and I will add more items as and when I come across them or new works are published!
In addition to looking for relevant content in [@dignazio:2020] (URL), you will also want to check consider:
- [@dignazio:2020, chap. 6] The Numbers Don't Speak for Themselves in Data Feminism; Pre-review URL
- [@Elwood:2017] DOI
- Padlet: Collaborative Agenda
- Complete the short Moodle quiz associated with this week's activities.
- Reviewing the Collaborative Agenda (Recording)
- Discussion of Readings (see Collaborative Agenda)
- Live Coding (Recording)
The practical can be downloaded from GitHub.
- Watch: Notebooks as Documents (Notes)
- Watch: Patterns in Text (Notes)
- Watch: Cleaning Text (Notes)
- Watch: Analysing Text (Notes)
- Padlet: Collaborative Agenda
- Complete the short Moodle quiz associated with this week's activities.
- Reviewing the Collaborative Agenda (Recording)
- Discussion of Readings (see above)
- Live Coding (Recording)
The practical can then be downloaded from GitHub.
- Watch: Linking Data (Notes)
- Watch: Linking Spatial Data (Notes)
- Watch: Grouping Data (Notes)
- Watch: Data Visualisation (Notes)
- [@dignazio:2020, chap. 3] On Rational, Scientific, Objective Viewpoints from Mythical, Imaginary, Impossible Standpoints in Data Feminism; Pre-review URL
- [@badger:2019]) Neighborhood Is Mostly Black. The Home Buyers Are Mostly White. URL
- Padlet: Collaborative Agenda
- Complete the short Moodle quiz associated with this week's activities.
- Reviewing the Collaborative Agenda (Recording)
- Discussion of Readings (Recording)
- Live Coding (Recording)
The practical can then be downloaded from GitHub.
- Watch: The Data Space (Notes)
- Watch: Transformation (Notes)
- Watch: Dimensionality (Notes)
- [@Bunday:0000] A Final Tale or You Can Prove Anything with Figures URL
- [@Harris:2019] The Certain Uncertainty of University Rankings URL
- [@Cima:2014] The Most and Least Diverse Cities in America, Priceonomics URL (PDF with Figures)
- [@lu:2013] Are statisticians cold-blooded bosses? a new perspective on the ‘old’ concept of statistical population DOI
- Padlet: Collaborative Agenda
- Complete the short Moodle quiz associated with this week's activities.
- Reviewing the Collaborative Agenda (Recording)
- Discussion of Readings (See above)
- Live Coding (Recording)
The practical can then be downloaded from GitHub.
- Watch: Classification (Notes)
- Watch: Clustering (Notes)
- Shapiro, W. and Yavuz, M. (2017) Rethinking 'distance' in New York City Medium URL
- Wolf, L. et al. (2020) Quantitative geography III: Future challenges and challenging futures, Progress in Human Geography DOI
- Arribas-Bel, D. and Singleton, A. (2019) Geographic Data Science, Geographical Analysis DOI
- Padlet: Collaborative Agenda
- Complete the short Moodle quiz associated with this week's activities.
The practical can then be downloaded from GitHub.
::: {#refs} :::
