Education
- deeplearning.ai’s Deep Learning Specialization completed on July 27, 2020 (certificate).
- PhD degree in Mathematics, Computer Science and Statistics, thesis title An algebraic and combinatorial study of some infinite sequences of numbers supported by symbolic and logic computation (pdf), advised by prof. Donatella Merlini and affiliated to the Dipartimento di Statistica, Informatica e Applicazioni (DiSIA), University of Florence, from 2015 to 2019.
- Master Laurea degree in Computer Science, voting 110/110 cum laude, thesis title Patterns in Riordan arrays, supervised by prof. Donatella Merlini, University of Florence, 2015.
- Laurea degree in Computer Science, voting 110/110, thesis title Analysis of metabolic networks based on connection properties, supervised by prof. Pierluigi Crescenzi, University of Florence, 2012.
- Maturity exam on Computer Science, voting 100/100, Meucci Technical Institute, ABACUS project, Florence, 2005.
Papers
- Marco Maggesi, Massimo Nocentini. Kanren Light: A Dynamically Semi-Certified Interactive Logic Programming System (arXiv.org), accepted for communication to miniKanren 2020 – miniKanren and Relational Programming Workshop.
- Donatella Merlini, Massimo Nocentini. Functions and Jordan canonical forms of Riordan matrices, in Linear Algebra and its Applications, Volume 565, 15 March 2019, Pages 177–207 (DOI).
- Massimo Nocentini, Donatella Merlini. Crawling, (pretty) printing and graphing the OEIS, working paper at DiSIA (pdf).
- Donatella Merlini, Massimo Nocentini. Algebraic generating functions for languages avoiding Riordan patterns, Journal of Integer Sequences, Volume 21, Article 18.1.3, 2018 (link).
- Donatella Merlini, Massimo Nocentini. Colouring Catalan triangle, in preparation.
Conferences
- ESUG2019, August 2019, Cologne, Germany: contributed the talk Dancing Links: an educational pearl (pdf).
- ESUG2018, September 2018, Cagliari, Italy: volunteer student and contributed the talk Relational Programming in Smalltalk (pdf).
- Programming, April 2018, Nice, France: participant.
- ICFP, September 2017, Oxford, UK: volunteer student.
- EuroPython, July 2017, Rimini, Italy: participant.
- AORC winter school, February 2017, Suwon, Korea: contributed the talks Algebraic generating functions for languages avoiding Riordan patterns (pdf) and EOIS tools (slides).
- ECOOP, July 2016, Rome, Italy: volunteer student.
- Second International Symposium on Riordan Arrays and Related Topics, July 2015, Lecco, Italy: contributed a talk about modular Catalan triangle C ≡ 2.
Teaching and work in academia
- During Spring 2020, he (co)teaches the course Algorithms and Programming for Massive Data at the University of Florence.
Slides: Introduction, Jupyter notebooks, NumPy, Pandas, Matplotlib, NetworkX, gotchas, generators.
All content is taken from Jake VanderPlas. - From April 2019 to March 2020 he collaborated with prof. Daniele Vignoli on a scholarship titled Rilevamento dell’incertezza economica attraverso stampa e social media.
- He gave two classes on SymPy within a course on Analysis of Algorithms at the University of Florence and translated lab sessions from Maple to Python (notebooks).
- He collaborated with prof. Enrico Vicario under a scholarship titled Architetture e metodi per la cooperazione applicativa.
Work outside academia
After his PhD dissertation he opened a VAT number and currently collaborates with Schmidt using Smalltalk technologies.
During his studies he worked in software houses in Florence, Italy, formerly at Commit and later at Negens, developing client–server applications mainly in Java and C#, for about eight years, part-time alongside his studies:
- software to generate betting systems for the Italian circuit Sisal, written in C#;
- software for VAT registers and economic transactions for small businesses, written in C# interfacing with MSSQL;
- small projects on sensors, microcontrollers and home automation using Linux boxes and Raspberry Pi, combining C and Python with extensive use of shell and network protocols.