How should we do training in an agile process?

A lot of writings about agile processes seem to assume that everyone comes with all the skills they need, but in the real world people sometimes need to gain new skills which cannot easily be learned “on the job”. Planning ahead enough to ensure team skills are available when needed, and dealing with the impact on development speed of people spending time on training or independent study rather than productive work seem like tricky problems.

Jooli Atkins has written a bit on this topic for the British Computer Society (BCS) Agile Training : Blogs : BCS

I’d be really interested to hear from anyone how they deal with this!