Read questions here or on clpm or on another site and work out the answers for yourself. Succumb to the dumb questions like, "Can I replace everything in a typeglob?" or "Can I tie a symbol table?" Then write code to see if you can answer the question yourself. Put code in one window and run it in the other, or get a good editor that handles it for you. Take advantage of the short, nearly-transparent compile cycle and make quick changes and see what happens.
If you end up with a directory with hundreds of little files, you're on the right track.
Update: I didn't say to *post* your solutions on Usenet. :)