This is great! I followed something like this recently when I started contributing to an open source project, though not quite as systematically.
It does make me wonder if there could be better tools for this process, especially the "trace down, learn up" steps. Some of my coworkers have to deal with projects that have millions of lines of code that were written decades ago, and even with this strategy it seems pretty hard to keep track of it all.