I am a very experienced Java developer who has been learning AEM for the last year. One of the things that makes me crazy is that it's so hard to debug.
In theory most of AEM is open source. In practice, it isn't.
Inevitably, I'm going to want to debug my application, but Adobe has gone out of its way to make that difficult. I can't just download a source jar with my IDE and set a break point (as was possible when using most other frameworks). When I do download a source jar Sling/Jackrabbit, whatever, inevitably, the source doesn't match.
Why doesn't Adobe choose release versions of the frameworks that it uses?
It's horribly frustrating. I understand that you are selling so VPs not developers, but you aren't making friends by doing this.
I don't think I would recommend that anyone use AEM.