I'll reply from an experienced user's perspective.
Scripting yes, but not programming. Difficulty of this API is comparable to python and in looks it resembles C.
It all depends just how complex your effects are going to be. What I found out is that some of the most advanced techniques are useful only on more powerful hardware, so if you're developing for mobile you'd be using simpler scripts. Due to large amount of control, effects are not idiot - proof to author, which can cause a lot of problems. On the other hand though, an experienced user can funnel resources exactly where they need them and do some pretty sophisticated and well performing VFX.
To confuse you even more and answer your question in one word : it depends.
Have fun! :)