University of Kansas Carpentries Instructors

June 7, 2021 Meeting Notes

Carpentries Instructors’ meeting

Present:

Brooks-Kieffer, de Mello, Deakyne, Everman, Kindred, Russell

Agenda

Discussions

Brief Introduction to Docker

Despite zero advance notice, Matt was willing to do a brief demonstration and introduction to Docker containers for the group. With some notice for the next meeting, he can prepare a more Carpentries-specific demo, maybe with some hands-on. Thanks, Matt!

Docker helps set up and contain all the environments and packages needed for a specific project. Matt demonstrated a Docker container he is using during KU’s transition from Blackboard to Canvas. He opens a Dockerfile, pulls in an existing Python image maintained by Docker, then starts adding an Oracle client and Python packages needed for the project. He is then able to open a new root user shell in this environment. Inside this environment, there’s no access to files on the local computer, so Matt showed a workaround that involves launching a Jupyter Lab instance in the environment that can then interact with the local computer. He also uses Jupyter Lab and GitLab to share his containers and code with colleagues, so the work doesn’t have to happen only on his computer.

Advantages include not having to run local installations of packages, avoiding dependency hell, and sharing project functionality across all operating systems. He is using VS Code as his IDE; he endorses because it can make some of the harder parts of Docker easier and more behind-the-scenes.

There is a Carpentries Incubator lesson for Docker; the group briefly discussed the idea of a code + container workshop series. Although it might not be the best fit for new graduate students, a series like Intro Python (or R), followed by Docker, followed by a lesson to combine the two might be a good fit for researchers. Another possibility might be a two day equivalent workshop assembled from shell + intro language + container lessons.

There was lots of discussion around this intro, with many folks having experience with environment managers like conda and some having experience with Singularity (containers for HPC). It seems like the group will be really interested in some hands-on time with Docker in the future. In the meantime, Matt shared a list of 3 installations for getting started:

  1. Docker
  2. MS VS Code
  3. Remote Development extension pack

Potential Workshop Topics and Timing

Besides the idea mentioned above about a code + container series, folks contributed ideas for workshops during the rest of 2021:

Folks seemed to think that full workshops as well as single topics are possibilities for late summer and fall.

Workshop Formats

Folks are interested in all possible formats: fully in-person, fully-online, and hybrid. A discussion ensued to define various interpretations of “hybrid”:

There was agreement that any version of a hybrid workshop is going to be more personnel-intensive than either fully in-person or fully online.

There was also agreement that in-person incentives (coffee, snacks) will be important for helping people feel comfortable coming back to an in-person environment. This led to an extensive discussion of cookies, brownies, flourless chocolate torte, and brigadeiro.

Notes by JBK