I love einsum so much! I've never been able to figure out how tensordot works, but I find einsum easy to understand. I've long wanted to write a jupyter notebook explaining how einsum can be used in different contexts, but as I move away from technical work it's unlikely I'll ever get around to this.