manuzhang / read-it-now

Don't read it later; read it now
4 stars 0 forks source link

Binder: Executable book in one click #20

Open manuzhang opened 6 years ago

manuzhang commented 6 years ago

I read the following tweet from the author of Python Data Science Book the other day.

image

So I went to the GitHub project and clicked on Binder (Try this). Here is what I find,

image

It struck me immediately. There is no need to git clone a Jupyter project from GitHub to try it out now (I also need to install Python and Jupyter). It's indeed "Executable book in one click".

Later on, I came across this introductory article, Binder 2.0, a Tech Guide. It started out with a vision

where scientists could specify dependencies along with a collection of Jupyter notebooks. Binder builds a Docker image from these dependencies, and provides a URL where any user in the world can instantly recreate this environment

Binder uses repo2docker to build a docker image from GitHub repository. It will check the commit hash and generate new version only on new commits. Only Python 3 and Jupyter Notebook are installed by default and users could specify dependencies and install packages through configuration files. The new version has more interfaces than notebook now, such as JupyterLab, RStudio, RISE plugin for interactive presentations and appmode plugin to generate interactive apps.

Binder is built on JupyterHub to serve multi-user notebooks and Kubernetes to scale out docker images.