Talk: What is SageMath good for?

Speaker: William Stein

Abstract: Answer – almost everything you do. I will talk about how you can use SageMath in teaching and research. In particular, how to use Sage to support courses involving computation, to help in collaborative writing of LaTeX documents, to contribute and improve peer reviewed implementations of algorithms, and to explore new mathematics.

SCREEN RECORDING: https://youtu.be/wOCYTLdvVDM

What is SageMath?

What is SageMathCloud?

Teaching a computational course

If you're teaching a course and want to use open source technical software with zero installation headaches, SageMathCloud (SMC) is the canonical choice.

Course management: - create a project - create a course in the project - add students -- projects are automatically created for each student - assignments and handouts are just arbitrary directories of files: - a latex document that students fill in - a worksheet where they put answers - code in language like R, Python, C, or anything else open source - NO realtime automated homework yet (SMC is not webassign or webwork yet)

Experience:

Note: - A LOT of our users are in biology, chemistry, CS, etc. -- not math. We will have a more general brand/product called CoCalc, which standards for "Collaborative CALCulation".

Collaboratively writing math papers

If you're writing a paper using LaTeX with other people, you can author it in SageMathCloud.

Benefits:

SageMath: Peer-reviewed implementation of algorithms

SageMath provides a rare way to subject your work on software to same sort of rigorous peer review that research papers get, and ensure maintenance of your software.

The Sage Developers Guide explains how to contribute new code to Sage.

  1. Create a trac ticket.
  2. Write and push code (this can take you days of suffering). Set the ticket to "needs review".
  3. Other people will review the code.
  4. Code goes into next Sage release (happens frequently).

Unlike many math journals:

Exploring new mathematics

SageMath itself has an enormous range of capabilities for research mathematics. It's particularly strong at:

Browse the reference manual!

Major Strength: about 95% of functions in Sage have examples that actually work. If you like to learn by copy/pasting examples that work, you will love Sage's documentation.

Some notable (to me) weaknesses: