Implemented algorithms to deal with quadrangulations of surfaces in Scala, for the course on Computer-Assisted Topology and Geometry offered by Prof. Gadgil at IISc.
Positives: Loved that I could concretely do something with surfaces once they were implemented using their quadrangulations. My first experience reading and implementing ideas in papers - actively engaging with fairly recent literature.
Negatives: None really. It did take up a lot of time, but it was worth it.
Technical takeaways: Programming in a functional language, for moderate-to-large projects. How to use tail recursion well. Finally installed and worked with WSL.
Meta takeaways: Most things can be made very concrete. Before this course, I didn’t expect to see a computational/combinatorial implementation of things like geometric intersection numbers of homotopy classes of simple closed curves.