Yes, angular is complex and have a terrible learning curve.
The worst thing is that you are learning framework for sake of learning framework.
It will not save you from mistakes.
You are relying only on your battle-proven experience, but not on the experience of the community.If you have not enough experience - no one will save you.
And there are tons of little nasty things that can go wrong and just let you shoot in your leg, believe me, I've done that many times.
*Btw, do you know already about the invokeApply parameter in a $timeout call? *