#TradersBootsCamp learnt through programming.
It took a while, but I got the hang of it eventually.
Bitcoin is an open-source program, so you can read the code and write your own code to interact with it if you want to. I found the best way to learn how it works is to create your own simple tools.
So if you're reading a technical article on this website, I've already coded it so that I know how it works first. My language of choice is Ruby, but you can use whichever programming language you like the most.