Sage Days 40 Tutorials
This page is based on the corresponding page for Sage Days 38, which you can find here.
Tutorial II: Programming in Python and Sage
Leader: Nicolas Borie and Nicolas Thiéry
Worksheet:
- Programming in Python and Sage
- Additional Exercises (Sage worksheets):
- days38_tutorials/CollatzConjecture.sws: practice writing functions, plotting and interact while exploring the 3n+1-conjecture.
- days38_tutorials/Dictionaries-GraphTheory.sws: learn about dictionaries through graph theory exercises. (The Graph Theory Quick Reference Card might come in handy.)
- days38_tutorials/Strings-BWT.sws: learn about strings while exploring the Burrows-Wheeler Transform.
Related thematic tutorials:
- Loops and Iterators
- Objects and Classes in Python and Sage
- Functional Programming for Mathematicians
- Testing a conjecture in parallel
- Implementing Algebraic Structures
Learn-to-program resources:
- Project Euler: Project Euler is a series of challenging mathematical/computer programming problems that will require more than just mathematical insights to solve. This is a great source of problems to attempt while learning Sage/Python. (Projet Euler en Français; Проект Эйлера (Russian).)
- Learn to Code: The Full Beginner's Guide from lifehacker.com: 5 lessons on the basics of programming (PDF version)
- Google's Exploring Computational Thinking
- Python challenge
Python resources:
- Learn Python in 10 minutes (disponible en français)
- Instant Python: a minimal crash-course in Python.
- Dive into Python is a Python book for experienced programmers. Also available in French, Plongez au coeur de Python, and other languages.
- Code Like a Pythonista: Idiomatic Python is an interactive tutorial that covers many essential Python idioms and techniques in depth.
- Python tutorial: the "official" Python tutorial from the Python Software Foundation
- Learn Python the Hard Way is a very beginner book for people who want to learn to code.
- Google's Python class for people with a little bit of programming experience; includes videos of lecture, written materials and exercises.
- Discover Python is a series of articles published in IBM's developerWorks technical resource center.
- Python Programming Wikibook
- Python Standard Library
- High Performance Python
Tutorial III: Contributing to Sage
Leader: Franco Saliola and Anne Schilling
Guides:
- How to Referee Sage Trac Tickets by William Stein
- How to contribute to Sage by Sébastien Labbé
- Introduction to Sage Development by Mike Hansen
- Short step-by-step checklist for reviewing a patch by Franco Saliola
- Sage Developer's Guide:
Videos:
- Contributing to Sage : Who, What and How: video of a talk by William Stein
Related thematic tutorials:
ReStructuredText resources:
- Quick reStructuredText: quick reference for reStructuredText
- reStructuredText: more detailed reference
- reStructuredText (saifoo.net)
Mercurial resources:
- Hg Init: a Mercurial Tutorial. In this user-friendly, six-part tutorial, Joel Spolsky teaches you the key concepts of Mercurial.
- Learning Mercurial in Workflows. This page illustrates the use of Mercurial in various workflows.
- Mq Tutorial. A tutorial on Mercurial queues.
- A Git User’s Guide to Mercurial Queues
Tutorial: New functionalities in symmetric functions and k-Schur functions in Sage
Leaders: Mike Zabrocki and Anne Schilling
Worksheet:
Tutorial: Demo on crystals in sage
Leader: Anne Schilling
Worksheet:
Talk: Chromatic quasisymmetric functions and regular semisimple Hessenberg varieties
Speaker: John Shareshian
Slides: days40_tutorials/johnbeamer8.pdf
SageTeX and the Sage cell server
Leader: Dan Drake
Check out sagetex-examples.tar.bz2. The main cell server is aleph.sagemath.org; here are some more cell server links: