The Python apprentice : a practical and thorough introduction to the Python programming language - Smallshire, Robert, (Packt Publishing, 2017)