Open-AT is an Event-Driven system, and many newcomers find this concept hard to grasp.
I recently found this paper which gives a good description of Event-Driven programming in general (nothing specifically to do with Open-AT):
Event-Driven Programming: Introduction, Tutorial, History
Stephen Ferg, January 2006.
The Headerless Handlers and Observer patterns are particularly applicable - and the paper gives a good illustration of the “Subscription” metaphor that is so widely used by Open-AT…
Note that the paper does treat everything in Object-Oriented terms. Open-AT isn’t exactly “Object Oriented”, but that doesn’t detract at all from the general principles.
Hope some find it useful…