Programming, Graph Theory, Computer Science, Data Science.
Python, to use pre-built abstractions. However, writing a does-everything abstraction is hard, and I regularly curse random design choices of such libraries. I’d suggest writing your own implementation if you have the interest, or room to experiment. We’ll do this in part 2, in Go. More where this