# Sage Days 117 @ Le Teich (Projects, talks & tutorials)
- Main wiki page: https://wiki.sagemath.org/days117
- Github organization page : https://github.com/sagemath/days117
- [Participants codimd page](https://codimd.math.cnrs.fr/oqQ-5QpNTIuc0iU0BNHAmQ#)
- [Projects codimd page](https://codimd.math.cnrs.fr/1blGns8DRpu0e-RnjiIxBA#)
## Internet Access
There are two wifi networks available, PNRLG-EXT and WIFI-4476. PNRLG-EXT blocks most ports (but is a little bit "faster") so you need some extra setup to make things such as SSH work (i.e., to be able to use git.)
### Connect to github.com with git/SSH
Add the following to your `~/.ssh/config` (create that file if it does not exist yet; where is this file on Windows?):
```
Host github.com
ProxyCommand nc -X connect -x sage.flatsurf.org:80 %h %p
```
To check that it works, `ssh git@github.com`. (You should see a message that things are configured correctly.) If it says that `sage.flatsurf.org` could not be resolved, then your internet connection is not sufficiently stable. If it says that `-X` is not a valid option, then you are using "netcat traditional". You need to install "netcat BSD". If you get some other error, the proxy might have crashed, please let me (Julian) know.
❗ Remember to remove the above lines again after Sage Days or you won't be able to talk to github.com anymore.
### Connect to other Services
If an application does not work, you can try to configure sage.flatsurf.org port 80 as an HTTP proxy. There's also more generic ways to do that (talk to Julian if you need help with this.)
Or use the WIFI-4476 which has no ports blocked.
## Talks and tutorials
Talks and/or tutorials will be given each morning.
If you want to give a talk/tutorial on a particular subject, please add an item to the below list.
If you want to learn about a subject, please add an item to the below list.
If you are interested in a talk/tutorial, please add your name to the list of interested people. Since time is limited, priority will be given to topics for which **many people** are interested.
## Monday
**Topic**: SageMath and its ecosystem (Python, Jupyter, PARI/GP, GAP, flint, ...)
+ Adapting your workflow: Jupyter, console, writing code in files, documentation doctests
**Speaker**: Sébastien Labbé
**Schedule**: Monday 14:00-15:30
**Topic**: Basic Python and SageMath programming
Work on the worksheets at
- [learning Python worksheets](https://github.com/videlec/aims-python-rwanda-2016/)
- [SageMath tutorials](https://github.com/sagemath/days117/tree/master/resources/SageMath-tutorials)
- [SageMath thematic tutorials](https://github.com/sagemath/days117/tree/master/resources/SageMath-thematic-tutorials)
**Speaker**: Vincent Delecroix
**Schedule**: 16:00-17:30
**Topic**: The new SageMath development process (from trac to github)
**Speaker**: Matthias Köppe
**Schedule**: Monday 17:30
## Tuesday
**Topic**: Sharing code and writing Python libraries
**Speaker**: Sébastien Labbé
**Schedule**: Tuesday 09:00
**Interested people** (9): David Ayotte, Felipe Arbulú, Ariane Carrance, Pierre Stas, Doriann Albertin, France Gheeraert, Nicolas Delbovier, Zoé Varin, Germain Poullot
**Topic**: Combinatorics in SageMath
**Speaker**: Frédéric Chapoton
**Schedule**: Tuesday 16:00
**Interested people**: enough
## Wednesday
**Topic**: Optimization and Profiling
**Speaker**: Julian Rüth
**Schedule**: Wednesday 10:30
**Interested people**: enough
**Topic**: Graphs overview in SageMath
There is a lot of algorithm related to graphs in SageMath (distances, decomposition, coloring, graph generation up to isomorphism, embedding in surfaces, etc) as well as nice drawing tools such as [phitigra](https://github.com/jfraymond/phitigra). The aim of the talk is to explain
- what is available
- how to make use of external packages (bliss, nauty, MILP solvers)
- the structure of the code (Python part, C part, external libraries, ...)
- what would be desirable to have
**Speaker**: Vincent Delecroix?
**Schedule**: Wednesday 14:00
**Interested people**: enough
## Thursday
**Topic**: How to contribute to SageMath (example of lazy_string)
**Speaker**: Xavier Caruso (author), David Ayotte (reviewer)
**Duration**: 20 minutes
**Schedule**: Thursday 10am
**Interested people** (4): Pierre Stas, Doriann Albertin, Clément Legrand-Duchesne, Germain Poullot
**Topic**: Interface with LaTeX + tikzpicture
**Speaker**: Alex Best, Sébastien Labbé
**Duration**: 20 minutes
**Schedule**: Thursday 10:30am
**Interested people**:
**Topic**: Recursively enumerated sets
**Speaker**: Sébastien Labbé
**Duration**: 20 minutes
**Schedule**: Thursday 11am
**Interested people**:
## Friday
**Topic**: Graphics in SageMath
**Speaker**: Frédéric Chapoton, Julian Rüth
**Schedule**: Friday morning (9am?)
**Interested people** (4): Eric Gourgoulhon, Doriann Albertin, Sébastien Labbé, Haojie Hong
## Later (but when?)
**Topic**: Interface C and C++ code with [Cython](https://cython.org/) and [cppyy](https://cppyy.readthedocs.io/en/latest)
**Speaker**: Vincent Delecroix? Julian Rüth?
**Interested people** (8): Antoine Leudière, David Ayotte, Eric Gourgoulhon, Felipe Arbulú, Pierre Stas, Joseph Musleh, Zoé Varin, Germain Poullot