Dear Sage developers,
You may have heard of the
mybinder.org service:
``Have a repository full of Jupyter notebooks? With Binder, you can
add a badge that opens those notebooks in an executable environment,
making your code immediately reproducible by anyone, anywhere.''
So now what about notebooks that require Sage?
http://tmpnb.org/ is not an option because Sage is not installed
there. mybinder enables the specification of the software stack to
use, and the new beta version of binder just made it much easier by
enabling this specification through an arbitrary Dockerfile. E.g. one
that derives from sagemath's base Dockerfile. So we sprinted with
Sebastian Gutsche and much help from Min Ragan-Kelley, and ta-da:
https://beta.mybinder.org/v2/gh/nthiery/test-binder-sage/master
https://github.com/nthiery/test-binder-sage
Presumably this is the first time SageMath got to run on mybinder.
And, for the same price, GAP, Pari, and Singular, thanks to all those
that worked on their respective kernels and their integration into Sage.
In all fairness, Sebastian made Singular win the race :-)
https://beta.mybinder.org/v2/gh/sebasguts/SingularBinderDemo/master?filepath=brnoeth.ipynb
Potential applications:
- Live demos for notebooks using Sage/...
(e.g. to reproduce the calculations underlying a research paper)
- Live demos for packages based on Sage/...
- Compute service for live documentation using Thebe (more on this later)
- ...
Next steps:
- Cleanup the repo and make it into a template repo under
the SageMath github organisation (
https://github.com/sagemath/).
This repo could be used as well as compute service for live documentation.
- Lift whatever is relevant directly into the main sagemath docker
image (presumably the GAP, Singular, Pari kernels; possibly the
upgrade of jupyter 5.* unless this becomes unnecessary with a more
recent version of Sage).
https://github.com/sagemath/docker-images/issues/23
- Add the live demo functionality to Sage's sample package:
https://github.com/sagemath/sage_sample/
Help welcome :-)
Cheers,
Nicolas
--
Nicolas M. Thiéry "Isil" <
nth...@users.sf.net>
http://Nicolas.Thiery.name/