Believe what you want, it doesn’t mean you’re right
One of the things I try to do when I’m picking up a new language is to enter the code by typing it in — that way I’m forced to think a little more about the code, and I get to make some typos. I find the bugs caused by simple typos can lead me down interesting paths, and help me develop a sense of how I can learn more about unexpected behaviour. I have also found that these detours can slow progress if not “managed” correctly — it’s surprising how momentum slows when I let myself slip down a “rat-hole.” (As an aside one of the benefits I’ve found to pair programming is that my partner might say “Haven’t we spent enough time on this?” long before I would have given up, saving me many hours…)
Now it’s back to work on the examples after letting myself stall for several weeks.
The interesting bug (a defp rather than a def, and a missing # in an interpolation) will have to wait for later. For now I have learned to time box those investigations and have a “later list” for things to investigate later!