Yes, there is seemingly a lot of documentation, each part of which describing about 80% of what you need to know. They've put a lot of effort into it, I think, yet it needs more effort. Since I haven't contributed to that effort, I can't complain. My advice: just read the source code. I wish you could just read the docs and understand the semantics of every api, but I finally realized that, if I cannot google the answer to my question in 15 seconds, just open the source code, which is excellently documented (internally), and very consistent in using patterns.
There is also the problem of having the documentation being "split" whenever there is more then one way to do something (say declarative vs programatic widgets) or there has been a major API upgrade (say AMD modules or the ObjectStores) so you also need to learn to convert from one to the other.