Understanding through code

One of the best ways to test whether you understand a concept is to try teaching it to someone else. As you're asked clarifying questions, you're forced to figure out how to clearly explain yourself and quickly uncover gaps in your knowledge. But, if you don't have someone eager to learn with / from you and are up for a challenge, consider trying to write a program.

If you can't code a concept (or a basic version of it), then you don't truly understand it. Computers are the least understanding students because they only do exactly as they're told. As a result, you can't gloss over any details. Most people aren't used to this level of rigor. But, if you care about learning the nuances of how a system works, there's no better way to figure out how things fit together.