Reasoning in terms of dimensions is such a powerful tool. I wish I had acquired this type of thinking earlier when I was a student.
Dimensions are the equivalent of typing in programming. It can help you write valid programs without having to run them in order to verify it.