# Software

In theory, there is no difference between theory and practice. But, in practice, there is. attributed to Jan L. A. van de Snepscheut

I host some code, mostly in python, on github. Most of it is joint work with co-authors (and co-teachers).

## Research Code

Rule 8: The development of fast algorithms is slow! Arnold Schönhage

Academic software has some peculiarities. A Dagstuhl Perspectives Workshop addressed them with a manifesto.

`multivariate_polynomials`

: Generating Functions for Special Multivariate Polynomials`polynomial_decomposition`

: Decomposing Univariate Polynomials over Finite Fields`baby-AES`

: Differential and Linear Attacks on baby-AES

## Tutorials for Teaching

`Python Tutorials`

: Introduction to Programming with Python`Data Science Tutorials`

: Jupyter notebooks for scikit-learn