Short Topical Videos
Jupyter Notebooks (which were born out of IPython notebooks) are files with extension *.ipynb that contain code (Python, R, Matlab, etc), markup text, images, and html all bundled together in one document. Critically, Jupyter Notebooks make use of a live interpreter for the language in question, so the document can be run as a program with the output of code snippets (called "cells") updating interactively as you make changes to the notebook.
Jupyter Notebooks rely on a web browser for display and user interfacing. The browser links to an instance of an interpreter, which can be running locally (installed on your own computer), or on a remote server. DataHub and JupyterHub are examples of services that remotely host Jupyter notebooks, but any web-accessible computer can be set up as a hub, provided the appropriate software is installed and running on a port that the client can access (either via an ssh tunnel or through a publicly accessible port).