Yeah, I think the short lesson here is that you really have to build something to learn to code, otherwise it's just not engaging. Not until you've built that first thing. Then it's like crack.
I've always been told this with mathematics. You won't really "get" it until you've done enough exercises, especially the more abstract you get (I'm looking at you, Category Theory proofs.)
I don't know why it took me this long to apply the same principle to learning new programming languages. I always thought, well if I just start on this monolithic hobby project, I'll learn the language after having read xyz. Well, turns out, it's a lot more entertaining and faster for me to just blow through a bunch of medium-sized throw-away examples for a while first. That monolithic hobby project comes along much easier with less of a "I give up rate" afterwards, for me anyway..
Absolutely. I kinda wish I had written more in this post about context... I had a similar frustration with math even though we did many, many more exercises... Some kind of practical real world context really helps.
If you just naturally love math and think that way you can often see the context yourself anyway (or at least I did) but your average word problem at school isn't much of a real world context. When the hell will I sit around with my friends and say "Hey Jennifer, lets get that volume of beer in that cup. That sounds like a good time".