Skip to content

jpivarski-talks/2022-07-11-scipy-loopy-tutorial

Repository files navigation

Loopy and unloopy programming techniques

This repository contains everything you need to follow the "Loopy and unloopy programming techniques" tutorial, presented at the SciPy conference on July 11, 2022 at 1:30pm‒5:30pm CDT (video).

How to participate

You don't need to install anything on your computer to participate; I encourage everyone to join on Binder.

Launch Binder

Binder tips:

If your notebook becomes unresponsive, reconnect to the kernel or restart the kernel from the "Kernel" menu.

While working on exercises, keep a copy of your work-in-progress in a text editor, so that you don't lose them if the web page reloads. "Run → Run All Above Selected Cell" and "Kernel → Restart Kernel and Run up to Selected Cell" will rerun all of the code to get your Python session back to the state it was in before a page reload or kernel restart.

In JupyterLab, the left-bar lets you navigate through files, shut down unnecessary kernels (closing a notebook tab does not shut down its Python kernel), and navigate the table of contents.

Google Colab:

The "intermezzo" demo will be run on Google Colab (because it requires a GPU). You can join that as well if you have a Colab account, but you don't have to—none of the exercises require it.

If you want to install and run on your computer

We use the libraries and versions listed in requirements.txt. You also need to install JupyterLab. You don't have to install the libraries with pip (you can use conda, for instance), and you don't need to use the exact versions that this tutorial has been pinned to, but you should probably use at least those versions. Note that awkward>=1.9.0rc5 is a minimum requirement and a pre-release.

We won't spend any time in the tutorial session on installing libraries. If an installation on your computer doesn't work, switch to Binder by pressing the button above.

Browsing the material online

If you want to see the notebooks online but don't want to execute them in Binder, the starting point is narrative.ipynb, which continues into notebooks in the exercises directory. It does not contain a direct link to the solutions, but you can navigate there manually. (The prep directory was only used to create this tutorial.)

The default notebooks are unevaluated. To see static outputs from a previous run, look at the "-EVALUATED" version of each notebook.

The whole tutorial was recorded; here is a video of it on YouTube.

Rough timeline of the tutorial

The tutorial is designed around three major exercises with some introductory material for each, and it is designed to fit into 4 hours, with breaks. Here is a rough timeline of how we may go through it, though I'll adjust based on feedback from the participants.