Resources

This page lists the resources available to everyone. Sign in with your SUNet ID to view the complete page, which additionally covers Stanford storage, computing clusters, and library services.

The resources below are listed roughly in the order in which they are most useful to someone learning Git.


Introductory material


Reference


Last updated: September 3, 2026

Multi-stage container builds keep an image small and reproducible, but they are laborious to write by hand. This template makes the build declarative: installation steps are written as ordinary shell scripts, the image is described in a single YAML file, and the build is run with make.


How it works

  1. Place the installation scripts, written exactly as they would be run at the command line, in ./template/containerfiles/run.
  2. In ./template/engine_instructions.yaml, set the base image and list the scripts under images. Each becomes an intermediate build stage.
  3. Use the optional instructions keys (ENV, COPY, ENTRYPOINT, CMD) to complete the image.
  4. Complete the tagging keys if the image is to be pushed to a registry.
  5. From ./template, run make.

The repository README documents every key in full.


Related Links


Last updated: September 3, 2026

Google Apps Script provides a JavaScript front end and back end for building websites and web services, such as a REST API, a form handler, or a scheduled job, without provisioning any infrastructure locally.

It is integrated with the remainder of Google Workspace, so a script can read from and write to Google Sheets, Drive, and Calendar directly.


Related Links


Last updated: September 3, 2026

A Data Management Plan (DMP) describes how data will be collected, stored, documented, shared, and preserved over the life of a project. Most federal funders now require one with the proposal.

Most institutions offer help writing and reviewing a plan through their library or research office, and many funders publish their own templates and requirements.


Related Links

  • DMPTool, which provides free templates matched to the data management requirements of specific funders

Last updated: September 3, 2026

Google Forms


Last updated: September 3, 2026

Building Intuition

Paul Nuyujukian's Building Intuition channel covers the concepts underlying several of the tools described elsewhere on this page, such as the effect of chunk size on read performance and the function of a job scheduler, rather than the specific commands required to use them. The series are listed below in the order in which they are most usefully watched.


What is Data? (7 videos)

Begins with data as sequences of ones and zeros, and shows how the same bits are interpreted as integers, characters, or floating point numbers according to the convention applied to them. It then addresses the ambiguity that follows from this, namely that a single file may be decoded in more than one way, and the role of file formats in resolving it. This series provides the background to most encoding errors and unintended type conversions.


HDF5 Overview (11 videos)

The series of most direct practical use for storing large numerical datasets. It covers the structure of an HDF5 file and its datasets, followed by the factors that determine performance: chunking and the selection of chunk sizes, compression filters including gzip and ScaleOffset, and chunk caching. Two videos address h5py specifically, including its own chunk cache, which is a common cause of poor read performance despite an otherwise reasonable layout on disk.


Cluster Computing (2 videos)

A short introduction to compute clusters and to the reasons work is submitted to a scheduler rather than run directly, followed by the basics of the Slurm job scheduler. Slurm is the scheduler used by most university and national laboratory clusters, so the material applies to most systems a researcher is likely to encounter.


Fourier Transform (7 videos)

Proceeds from the continuous Fourier transform to the discrete-time transform and sampling theory, then to the discrete Fourier transform, concluding with a worked numpy.fft example. The playlist also includes two 3Blue1Brown videos covering the same material visually.


Dynamical Systems (5 videos)

Covers linear dynamical systems in matrix form, fixed points and the conditions under which they are stable, and the use of the Jacobian to determine stability in nonlinear systems.


Last updated: September 3, 2026