First, this is not a critique, this is a question.
Why is AMD's GPGPU solution so much harder to explain than NVIDIA's GPGPU solution?
The CUDA Programming Guide is straightforward and easy to read. It gives a high level overview of what's happening but at the same time offers good optimization options without a lot of "it depends".
I'm curious about what is so different about AMD's GPGPU solution that they can't do the same?