With Permission: Running Arbitrary Startup Services In Docker Containers

In Running Arbitrary Startup Scripts in Docker Containers, I described a recipe cribbed from MyBinder/repo2docker, for running arbitrary scripts on startup of a Docker container. One thing I hadn’t fully appreciated was the role of permissions in making sure that scripts and services called in the startup script had enough permissions to run. In the containers … Continue reading “With Permission: Running Arbitrary Startup Services In Docker Containers”

Sick of Being Stuck Trying to Do Things That Should BE Really Simple With Docker

Set up is – trying to cross-build a large Docker container. Something like this seems to work with Github Actions: only it doesn’t because trying to cross-build several images at the same time seems to break the action (out of space?) With smaller images everythig is fine and the second build appears to just use … Continue reading “Sick of Being Stuck Trying to Do Things That Should BE Really Simple With Docker”

Using Dummy Python Packages to Distribute Course Code Requirements

One of the approaches I started exploring some time ago for distributing required Python packages to support particular courses (modules) was to create a dummy Python package containing just a list of required packages and push it to PyPi. Installing the single dummy package then installs all the actually required packages. (The dummy package could … Continue reading “Using Dummy Python Packages to Distribute Course Code Requirements”

Preparing Jupyter Notebooks for Release to Students

Over the years, I’ve sketched various tools to support the release of notebooks to students, but as I’m not the person who prepares and distributes the releases, they never get used (“Tony hacking crap again” etc.;-). Anyway, on the basis that the tools aren’t completely crap, and may be of use to others, perhaps even … Continue reading “Preparing Jupyter Notebooks for Release to Students”

Fragment: Generative Plagiarism and Technologically Enhanced Cheating?

An interesting post on the Paperspace blog – Solving Question-Answering on Tabular Data: A Comparison – briefly reviews several packages to support the generation of SQL queries from natural language questions that might be asked over a particular data table. I’m interested in this sort of thing for a couple of reasons. Firstly, how might … Continue reading “Fragment: Generative Plagiarism and Technologically Enhanced Cheating?”

Automated Testing of Educational Jupyter Notebook Distributions Using Github Actions

For years and years and years and years (since 2016) we’ve been updating both the notebooks, and the environment we ship to students on our data management and analysis course, on an annual basis. The notebooks are substantially the same (we update maybe 20% of the material each presentation) and the environment updates are typically … Continue reading “Automated Testing of Educational Jupyter Notebook Distributions Using Github Actions”

More Automation Sketches – Creating Student Notebook Releases

Tinkering a bit more with Github Actions, I’ve hacked together some sort of workflow for testing notebooks in a set of specified directories and then clearing the notebook output cells, zipping the notebooks into a release zip file, and then making the release zip file via a github release page. The test and release is … Continue reading “More Automation Sketches – Creating Student Notebook Releases”

Fragment: On Failing to Automate the Testing of a Jupyter Notebook Environment Using playwright and Github Actions

One of those days (again) when I have no idea whether what I’m trying to do is possible or not, or whether I’m doing something wrong… On my local machine, everything works fine: So far, so simples: I can run tests locally. But it’d be nice to be able to do that via Github Actions. … Continue reading “Fragment: On Failing to Automate the Testing of a Jupyter Notebook Environment Using playwright and Github Actions”

Where Next for OUr Use of Docker in 2023? Docker Dashboard Extensions and Docker-wasm Containers

A couple of years ago, we moved our VM solution for the TM351 data management and analysis course to a Docker based solution. I had tried the Docker solution way back when, but at the time Docker was still immature, cross-platform running was incosistent, and the most promising UI way in was the third party … Continue reading “Where Next for OUr Use of Docker in 2023? Docker Dashboard Extensions and Docker-wasm Containers”