Since I'm a novice, I enjoy novice friendly online education but feel reading hundreds of pages of programming books or documentations daunting. I'm curious how experienced programmers learn new things. Do you ... ?
* Read the docs
* Read programming books (such as those by O'reilly)
* Go through online courses
* Other ways (comment if you like)
For me, I learn most when I create something or put my learning in practice immediately. Whether it's languages (natural or programming) or a certain framework, or paradigm. The key is that by running into problems you see how a piece of technology fits into the big picture.