Ask Your Question

Seeking advice for classroom installation

asked 2017-08-28 11:33:06 -0500

this post is marked as community wiki

This post is a wiki. Anyone with karma >750 is welcome to improve it.

I'm teaching a cryptology class in the fall. We are meeting in a computer lab with Windows computers, and ideally I would like students to be able to use the Notebook interface in Sage. Does anyone have any advice or suggestions for how I should set this up? (Currently Sage is not installed.) In the past (around 2012), I believe we had a special server set up, and then students connected to that by typing in a special address in their web browsers.

I'm not considering using CoCalc (because even though we could maybe get funding for a few quarters, I don't think that would be sustainable longterm).

I will pass on any advice from you to my university's IT department.

Thanks very much!

edit retag flag offensive close merge delete


Do not hesitate to give feedback about your experience and what leads to your final choice.

tmonteil gravatar imagetmonteil ( 2017-09-03 13:53:31 -0500 )edit

4 answers

Sort by ยป oldest newest most voted

answered 2017-09-03 13:50:58 -0500

tmonteil gravatar image

[Disclaimer: i am the developper of SDL]

Since you have personal computers in the lab, i do not see the benefit to concentrate the computations of all the students on a huge server, it is far lighter to let each personal computer of the lab do the computation asked by the student in front of that computer (and if some student runs a stupid loop that eats all the memory, the other won't even notice it).

Since you are in touch with the IT crew of you university, you could think about:

  • installing a GNU/Linux distro instead (resp. aside) of Windows, and then use Sage from there.

  • install Sage in Windows with the recent cygwin build ( but you will not be able to benefit from the many optional packages provided by Sage.

If such things are not possible, an alternative could be to use the SDL (, which is a live-USB containing Sage (with most optional and experimental package) and other tools (e.g. LaTeX, R,...). The official images are available on Sage mirrors.


  • easy to deploy : start from one key and clone it from key to key ; since each cloned drive becomes a new seeder, you get exponential replication speed.

  • no need to install anything the lab's computers nor on the student's laptop

  • every student has the same set of available software (compilers, editors,...), no problems related to differences between versions.

  • students can use Sage at home, and even keep their data between the classroom and their laptop since SDL allows persistence of the home/ directory between boots.

  • the build system being modular and open, you can compile your own custom image with exactly the software you want (do not hesitate to ask me if you need help or would like to see some interesting packages entering the next official versions).


  • each student have to buy a >= 8GB USB drive (this could also be provided by the university, or you could decide that the USB drives must stay in the classroom).

  • windows 10 might hinder access to the BIOS to allow booting from the USB drive (so-called "secure boot" and similar crap). On the computers provided by the university, the "unlock" operation could be run only once.

I have had feedbacks from teachers in Spain and France universities about successfully using this method for a whole class couse, as well as feedback from various countries about using this during Sage workshops (up to 2 weeks).

Note that SDL with Sage-8.0 is going to be released soon (migration to Debian stretch takes some time).

edit flag offensive delete link more

answered 2017-08-28 16:54:56 -0500

smbelcas gravatar image

My advice is to ask students with laptops to install Sage and to bring their computers to class. (These days, that's most of the class at most institutions.) This approach has the advantage that students can work with Sage outside the classroom as well, to experiment with homework and such. The disadvantage is walking the students through the installation process. I've been doing this for several years now and find it much easier and more pedagogically effective than using computer classrooms or even laptop carts.

edit flag offensive delete link more


Agreed, yesterday i was writing a message trying to put the things work in the same direction. (Focus was more or less on the bad choice of the operating system. Gave up, as i finally realized it, because it is against the rules of the site / of my ethic.) The following play may work for each student: Get a cheapest laptop, install on it ubuntu or arch or manjaro, one hour. Install sage from the repositories, one hour. (In manjaro one needs the AUR repositories.) Install editor and IDE (eclipse+pydev). Sage can now be started from the command line and in the iron python console there is an automatic text completion of the available methods. Also mathematically interesting. I know, the nb is didactically important, but editor+IDE will give a decent job the whole life, and less frust. 1 up.

dan_fulea gravatar imagedan_fulea ( 2017-08-29 13:12:14 -0500 )edit

answered 2017-08-28 15:47:48 -0500

nbruin gravatar image

If your IT department has considerable resources, they could set up their own Cocalc instance. Alternatively, they could set up a jupyterhub server where sage is available as a jupyter kernel. The latter has the advantage of consisting of slightly more mainstream software components than Cocalc, so it might be easier to convince your IT department to set it up. Setting this up in only a month or so might be tricky, though.

edit flag offensive delete link more


Instructions for setting up your own CoCalc install:

It's just a docker pull away!

William Stein gravatar imageWilliam Stein ( 2017-08-30 06:43:37 -0500 )edit

answered 2017-08-28 13:58:54 -0500

kcrisman gravatar image

The Sage notebook server is still alive and well for multi-user accounts, but just keep in mind it isn't as robust for massive numbers of users as SageMathCloud/CoCalc codebase. It may be the right choice for you. Also note that you are able with the licensing to set up your own CoCalc/SMC server, if I understand it correctly.

edit flag offensive delete link more

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools

1 follower


Asked: 2017-08-28 11:33:06 -0500

Seen: 112 times

Last updated: Sep 03