[sage-combinat-devel] Sage Days in Bobo-Dioulasso debriefing; Sage in developping countries

2012-11-11 Thread Nicolas M. Thiery
Dear Sage devs,

The fall school on Discrete Mathematics in Bobo Dioulasso, Burkina
Faso, aka Sage Days 43, just finished. For two weeks we had courses
(combinatorics of words, dynamics, tilings, ...) interspersed with
on-hands tutorials using Sage. The public consisted mostly from
graduate students, from subsaharian Africa and some further away
countries.

That was a good occasion for a real-life evaluation of a claim I have
been desiring to make for a long time: «Sage, being open-source, is
well adapted for universities in developing countries».

Let's see about this.

A couple words of context:
--

- 70 participants total; in average 40-50 were there.
- Most participants had a laptop (or netbook for a few of them):
  - 90%: windows, 5% mac, 5% Linux Ubuntu (usually in double-boot with Windows)
  - Laptop age ranging from 2003 to 2012; 4 years on average
  - RAM: 500k-6Gb; 1Gb on average?
- Network: one ADSL line for 60 persons in the conference center
  Well, when it actually worked, which was not that often.
  We finished using a cell-phone shared over wifi.
  The local wireless network itself was down quite often.
  No network at the university itself or nearby
- Among the organizers were Sage devs with good experience on running
  Sage workshops and doing system/network administration, ...
- Sam had brought a big bunch of power cables. I screwed up not
  bringing my own wireless router to at least guarantee a reliable
  local network.

Strategies we tried or considered:
--

(a) Installing Sage on Linux/Mac with the binaries from Sagemath.org
(b) Installing Sage on Linux/Mac from sources
(c) Installing Sage on Linux from a custom built fat binary
(d) Installing Sage on Windows with the virtual machine
(e) Running a Sage server on my laptop (8 cores, 8Gb)
(f) Using a remote Sage server
(g) Installing Linux and reducing the problem to (a-c)
(h) Booting on a live Debian USB key, custom-build by Thierry Monteil
with Sage, self-cloning and persistence.
(i) Using a local PC lab after installing Sage on them

I would like to use the occasion to send my kudos to all those who
strive hard at making Sage easier to use one way or the other.

How it went:


(a) Went smoothly on Mac when appropriate binaries were available. We
had to recompile a few of those binaries.

(a) failed most of the time on Linux by lack of gfortran. Since we did
not have a reasonable network, apt-get install was not an option.
We did not have iso's of all the Ubuntu versions that were in use.
3D plotting was usually not available (by lack of appropriate Java
plug-ins).

(b) Compiling from source was not a viable option on Linux for the
same reason as above: build-essentials was usually not there. On
Mac that was ok, provided we had under hand the appropriate
version of XCode.

(c) This fat binary was built by Thierry Monteil on an old pentium 3
(!) with a minimal Debian install. Installation and usage went
smoothly, except that 3D plotting was usually not available.

(d) Virtual machine: Installation went smoothly on about 20 machines
(with close guidance). It failed on 2-3 machines due to resource
limitations (disk, ...).

However, except for about five recent machines, the memory
footprint was just too high: any non trivial calculation or plot
made the laptop swap and become simply too slow to use.

The french keyboard was not properly self-detected. Due to the
network, we could not look up on the web for help. We ended up
finding how to configure it from a shell. I'll create a ticket.

The Sage version available was a bit old (5.1) though that was not
an issue for us this time (but it could have been).

The usage was on the complex side for most participants. They
typically tended to reclick on the ova, creating a new virtual
machine each time. Also uploading worksheets was tricky; it would
be much simpler if the virtual machine was setup to access the
user directory on the host machine or if the web client was
running on the host.

(e) Running a local Sage server: This is a priori good short term
solution, except that participants don't leave with Sage running
on their machine. My laptop easily handled the dozen people using
it. However the unreliability of the local wireless network ruined
the game more often than not.  We have no data for how this would
have scaled if all participants had gone this way.

(f) Using a remote Sage server: given the network situation, we did
not even bother trying.

(g) Installing Linux, 3-4 machines: we were of course all favorable
to encourage participants to switch to Linux. However, installing
a new system always means taking a risk, especially since most
participants did not have backups (or even did not have a clue
what a backup was ...). Besides we did not want to spend too m

[sage-combinat-devel] Sage Days in Bobo-Dioulasso debriefing; Sage in developping countries

2012-11-12 Thread Nicolas M. Thiery
Hi Andrey,

On Sun, Nov 11, 2012 at 08:37:50PM -0800, Andrey Novoseltsev wrote:
> Thanks a lot for such a detailed report!

:-)

> Is it possible to have step-by-step instructions for
> self-replicating USB sticks posted somewhere?

Thierry Monteil, who worked hard on that key and should get all the
credits for it, is in CC. He is planning to advertise it shortly.

> I think these may be a great way to use Sage even in developed
> countries. Last summer I used USB sticks for our summer school, with a
> hope that students may use them in the lab (I got our IT guys to open
> USB boot) and then on their own computers. To make sure that results
> are preserved between sessions, I've installed Linux on a USB
> partition together with Sage and LaTeX, tinkered with GRUB to mount
> only the stick by label rather than UUID, and then used Clonezilla for
> duplication (which fortunately support 1-to-many image restoration and
> I had a computer with 8 ports available). 

Thanks for reporting the use-case!

> I also hit the problem that Macs don't boot from USB, which IMHO is
> completely retarded, but that's just life.

Yeah. Besides, installing on Mac is not so much of an issue.

> It also seems to me that memory consumption is the main bottleneck
> of running Sage servers - when users are playing with basic
> calculus/ linear algebra, there isn't much demand on CPU, but every
> open worksheet or interact worker consumes quite a bit of virtual
> and resident memory. I hope to run a class with ~2k students next
> year and it is conceivable that most of them will do something a few
> hours before the homework deadline. We'll see how it goes (if it
> goes at all, of course).

Wow, 2k? That's quite a few!
Nicolas
--
Nicolas M. Thiéry "Isil" 
http://Nicolas.Thiery.name/

-- 
You received this message because you are subscribed to the Google Groups 
"sage-combinat-devel" group.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
To unsubscribe from this group, send email to 
sage-combinat-devel+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/sage-combinat-devel?hl=en.



Re: [sage-combinat-devel] Sage Days in Bobo-Dioulasso debriefing; Sage in developping countries

2012-11-11 Thread Martin Rubey
Nicolas & team, I think this is absolut wonderful what you did!

Martin

-- 
You received this message because you are subscribed to the Google Groups 
"sage-combinat-devel" group.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
To unsubscribe from this group, send email to 
sage-combinat-devel+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/sage-combinat-devel?hl=en.