Monday, December 17, 2012


I just read this blog post about the direction of numpy development, which might be of interest to Sage Developers.   TL;DR -- Travis Oliphant explains that he is stepping down as head steward of Numpy, and then explains the awesome new things he's working on instead.

This made me think about my current relationship with the Sage project, where I'm similarly considered "head steward".  I have not been super-active in the last few months in day-to-day Sage development, and haven't posted a lot on the lists.   However, in my case, this is because I'm doing some hard work to build a company (Salvus) that may be able to provide more sustainable funding for core Sage development later.   For example, yesterday, Drew Sutherland and I worked at an approach to implementing computation of q-expansions of higher weight modular forms (using modular symbols) which would be much, much faster than what's in Sage (or Magma) now.  I'm not implementing it today, because I'm working on Salvus instead, so that hopefully in a year I will have all the time I need to implement exactly that algorithm and more in Sage, as a result of what I'm doing now.   (Drew will implement a special case he needs for his research.)

Saturday, March 10, 2012

Sage and Python 3?

Have you ever wondered how difficult it might be to switch Sage from Python 2.7 to Python 3.x?  Some students in my Sage course made a webpage that summarizes the Python 3 support status of the Python packages on which Sage depends.

Interesting examples:
  • Matplotlib doesn't support Python 3.x at all yet.
  • Mercurial doesn't support Python 3.x, and they don't have any plans to do so. (Which is another point in favor switching Sage to GIT.)

Thursday, March 8, 2012

How to get access to Magma

Despite Sage doing a lot, people still write to me asking about how to get access to Magma. Here is my advice:
  1. You can buy a copy of Magma here for only $1180.
  2. If your calculation will take less than 20 seconds (?), you can do it over the web for free. (Historical note: I wrote the first version of that website.)
  3. In Sage, use the command magma_free('some string'), though I just checked and the Magma calculator has changed in a way that breaks this command again. I'll be posting a patch to fix this in Sage.
  4. Most people I know who have Magma do not buy it, but get it in exchange for contributing to Magma (I used to get it free for that reason). Study the list of
    past and current contributors to Magma and ask the one you know the best. This is a list of people who definitely have a copy of Magma and know how to use it.