https://cpython.pythonprogramminghelp.com/confessions-of-a-linear-regression/