On the one hand the meaning of icons should be as "self-evident" as possible. On the other hand, the actual meaning of all those icons is revealed by mouse hovering, in the tooltip which is displayed in plain English (or French, Farsi, etc.). I suspect that the learning curve goes like this:
- On a certain menu I see an icon which I can't quite guess what action it represents.
- I move the mouse over it and the meaning is revealed in the tooltip.
- If I need the action, I click on it.
- After some time, I have learnt what that icon stands for and I no longer need the explanatory tooltip, so I can click on the iconized button directly if I need the action to be performed.
Of course, it is very desirable that a certain standard of icon meaning be maintained. As an example, I see that in TinyMCE the "paintbrush" icon has the meaning of "Cleanup messy code" (whatever that may mean), whereas MS Word users are used to that icon with the meaning of "Format painter".
Joseph