"What I cannot create, I do not understand." - Richard Feynman
Implementation of common algorithms from scratch. The goal is not to build efficient implementations (indeed, most of these algorithms are available in Scikit-Learn or other popular libraries), but to expose the internal mechanics of foundational algorithms and at the same time write modularized code that could be applied to realistic datasets of moderate size.