{{{#!rst

Tentative Programme
===================


Monday
------

* 9 am: Welcome, and Sage installation help
* 10am-11am : `Sage overview (presentation, demo, Sage-Combinat) <attachment:2011-05-02-SageDays30.pdf>`_ (Franco + Nicolas)
* 11am-12pm: coffee break at University Club (next door),
  Introductions, more Sage installations

Lunch Break

* [the afternoon sessions may start later to accommodate time for lunch - please stay tuned for updates]
* 1pm: Tutorial: `Using the Sage notebook and navigating the help system
  <http://combinat.sagemath.org/doc/thematic_tutorials/tutorial-notebook-and-help-long.html>`_ (Jason) [`help-notebook sws file <attachment:Tutorial_help_notebook_long.sws>`_]
* 2pm: Tutorial:  `Doing the first exercises from Project Euler <http://projecteuler.net>`_ (Jason).

  See also the `List tutorial <http://combinat.sagemath.org/doc/thematic_tutorials/siena_tutorials/Worksheet02-Lists.html>`_ [`list sws file <attachment:list_tutorial.sws>`_]
* 3pm: coffee break
* 3:15pm: Open tutorials (Anne, Jason, Florent, Franco, Nicolas):

  * Tutorial: `Linear algebra <http://combinat.sagemath.org/doc/thematic_tutorials/siena_tutorials/Worksheet06-LinearAlgebra.html>`_ (Franco) [`linear algebra sws file <attachment:Linear_algebra.sws>`_]
  * Tutorial: `Combinatorics <http://combinat.sagemath.org/doc/reference/sage/combinat/tutorial_enumerated_sets.html>`_ (Jason) [`combinatorics sws file <attachment:combinatorics.sws>`_]
  * Tutorial: `Words <http://combinat.sagemath.org/doc/reference/sage/combinat/words/demo.html>`_ [`words sws file <attachment:words.sws>`_]
  * Other resources:

    * `The Sage tutorial  <http://www.sagemath.org/doc/tutorial/>`_
    * `Sage thematic tutorials and demos <http://combinat.sagemath.org/doc/thematic_tutorials/>`_
    * Introductory book in French: `Introduction à Sage <http://sagebook.gforge.inria.fr/>`_

Tuesday
-------

* 9am-9:30am: Tutorial: `Programming in Python and Sage <http://combinat.sagemath.org/doc/thematic_tutorials/tutorial-programming-python.html>`_ (Franco/Jason) [`programming tutorial sws file <attachment:programming_python_sage.sws>`_]

  * Worksheet: `The 3n+1 Conjecture <http://combinat.sagemath.org/doc/thematic_tutorials/siena_tutorials/Worksheet05-CollatzConjecture.html#siena-tutorials-worksheet05-collatzconjecture>`_ [`Collatz conjecture sws file <attachment:collatz_conjecture.sws>`_]

  * Worksheet: `Strings and the Burrows-Wheeler Transform <http://combinat.sagemath.org/doc/thematic_tutorials/siena_tutorials/Worksheet07-StringsAndTheBWT.html#siena-tutorials-worksheet07-stringsandthebwt>`_ [`strings and Burrows-Wheeler sws file <attachment:strings-burrows-wheeler.sws>`_]

* 9:30am-noon: Anne's giving an introduction to implementations for crystal categories.

* 10:30am: coffee break
* 11am: Tutorial: `Editing Sage's Sources <http://combinat.sagemath.org/doc/thematic_tutorials/tutorial-editing-sage-sources.html>`_

Lunch break

* 2pm: Anders: "Strategies for computing Schubert structure constants"
* 3:15pm: coffee break
* 3:30pm: Tutorial: how to kindly report a bug or suggest an improvement (20 minutes)
* 3:35pm: Coding sprint organization
* 4pm-: Coding sprints

Wednesday
---------

* 9am-9:30: Sign up for `projects <days30_projects>`_ and short meetings; presentations of work so far (students and others)
* 9:30-10:45am: Tutorial: `Object oriented programming <http://combinat.sagemath.org/doc/thematic_tutorials/tutorial-objects-and-classes.html>`_ (FlorentHivert) [`tutorial-objects-and-classes sws file <attachment:tutorial-objects-classes.sws>`_]
* 9:30am: concurrent development projects: Scheicher and Thuswaldner algorithm, subspaces, posets
* 10:45am: coffee break
* 11am-11:20am: Tutorial: `programming iterators <http://combinat.sagemath.org/doc/thematic_tutorials/tutorial-iterators.html>`_ [`tutorial-iterators sws file <attachment:tutorial-iterators.sws>`_] (FlorentHivert)

Lunch break

* 1:30pm: concurrent development projects: actions
* 3pm: coffee break
* 3:30pm: concurrent development projects: IntegerVectors, crystals, d-complete posets
* 5pm: Coding sprint status report
* 5:30pm: ultimate frisbee (most likely on the NW dyke field - directions will be provided)

Thursday
--------

* 10am: coffee break

* 10:15am-12:15pm: Series of Tutorial: `Contributing to Sage
  <http://combinat.sagemath.org/doc/thematic_tutorials/demo-how-to-contribute.html>`_
  [`contribute to sage sws file <attachment:contribute-to-sage.sws>`_]
  `How to contribute <http://www.liafa.jussieu.fr/~labbe/Sage/how-to-contribute/>`_

      - Using and programming sage from the command line (Christian)
      - Creating a patch (Nicolas)
      - Reviewing a patch (Anne and Franco) `Short step-by-step checklist <https://www.evernote.com/shard/s16/sh/f30e5eb9-70a9-4882-818b-333c690942bf/d7a138e2705c25b8da6e2053950a89d5>`_
      - Sage combinat installation (Florent)

* 2pm: Coding sprint status report
* 2:30pm: Robert Smith `Equivalence in Computer Algebra <attachment:talkRobert-Smith.pdf>`_
* 3pm: coffee break
* 5:30pm: local weekly pick-up ultimate frisbee, President's Field (on the campus map: between field 46 (Raymond Field, fenced-in fancy field), building 48 (Festival Theatre, a former arena, so looks like one), and behind white house 47 (Alumni Hall administrative offices, formerly the university president's house))

Friday
------

- fill out travel reimbursement forms - TBA

* 10am: coffee break
* 10:15am-11:15am: Tutorial: Contributing to Sage-combinat `Mercurial step by step <http://wiki.sagemath.org/combinat/MercurialStepByStep>`_

  Illustrated by `the outdated picture <http://wiki.sagemath.org/combinat/Mercurial?action=AttachFile&do=get&target=patch-server.png>`_

  .. image:: http://wiki.sagemath.org/combinat/Mercurial?action=AttachFile&do=get&target=patch-server.png
     :height: 250px

Lunch break

* submit code for student contribution prize by 1pm
* 2pm: Coding sprint status report
* 3pm: coffee break

Potential material
------------------

* Tutorial: `Using algebraic structures: vector spaces, ... <http://combinat.sagemath.org/doc/reference/sage/modules/tutorial_free_modules.html>`_ (Jason Bandlow, Florent Hivert, Nicolas Thiéry)

* Tutorial:: `Implementing your own algebraic structures <http://combinat.sagemath.org/doc/thematic_tutorials/tutorial-implementing-algebraic-structures.html>`_ (Jason Bandlow, Floren Hivert, Nicolas Thiéry)

* Tutorial:: `Graph theory
  <http://www-sop.inria.fr/members/Nathann.Cohen/tut/Graphs/>`_

* Tutorial:: `Linear programming <http://www-sop.inria.fr/members/Nathann.Cohen/tut/LP/>`_

* Tutorial/demo:: `Symmetric functions <http://combinat.sagemath.org/doc/thematic_tutorials/demo-symmetric-functions.html>`_

* Tutorial: cluster algebras (Christian)

* Tutorial: Crystal bases (Anne)

* Tutorial: Posets (Franco)

* Tutorial: Parents, Elements, Categories (Nicolas Thiéry)

* Lexicographic generation of lists of integers (Florent Hivert, Nicolas Thiéry)
  Algorithmic & design

* Canonical forms, normal forms, and computer representation (Robert Smith)

* Schubert calculus: challenges, solutions, projects

* Various algebras in Sage (Hecke algebra, nilCoxeter, Temperley Lieb, local plactic) (Anne)

Discussions
-----------

* Thematic tutorials setup
* Categories
* The Sage-Combinat roadmap
* The Sage-Combinat workflow: writing the specs
* Modeling set containment: "x in S" see `Discussion about Containment in Sage <http://wiki.sagemath.org/ContainmentDiscussion>`_
* Posets, ideals/upper set


Development Projects
----------------------------

See the `projects <days30_projects>`_ page.

}}}