Just to recreate most of the examples (including Verlet algorithm and flocking) you just need to understand some math (linear algebra, vectors and matrices mainly) and physics at high school level at most, so it’s not that bad. IMO the bigger problem is getting your head around implementation in ICE and how the nodes work together, at least initially.
And, as said above, 90% of the time there is no need to know even that. You can’t randomly type code and get results, in ICE you can almost randomly connect nodes and come up with something.
For me personally ICE is a godsend ;)… I really don’t like typing code and especially debugging (had enough headaches on uni), even if I’d use ICE just to prototype stuff, it can save a lot of time and stress - and it’s fun after all.