I really enjoy teaching. I think it's quite a rewarding thing to do. And generally quite fun. But *boy* is it hard work. From preparing the slides to going through what you need to teach, and the objectives you aim to reach at the end... lots of work. Every time I give a talk or tutorial I also realise that I just plain need more slides. There's simply no way around that - people grok stuff a lot more if you break it down really carefully into small components, and I'm forever discovering more ways to break down my slides to make these concepts easier to understand.
This is especially significant trying to teach XML stuff to Perl geeks. Last night trying to teach the basics of XSLT in 10 minutes reminded me that there's so much ground to cover before you can even get into XSLT itself - XML namespaces and XPath being the two core things there. But you can't do a tutorial like Hypertext - jumping right off one subject to another. It has to have a natural progression - and AxKit doesn't lead naturally into teaching XPath... So for now I simplify XPath by saying "It's unix directory paths into the XML". Which is how it was designed I guess. Anyway I hope my jumping about pointing to bits of my slides weren't too disjointed last night. I certainly realised one thing last night: you can't just teach one little bit and then expect the audience to grok a huge chunk of code just because it's using similar features... Each little bit needs explaining in detail.
Anyway... On to work. I spent a couple of hours the other day writing mkrpm.pl - a script which uses CPAN.pm to download files from CPAN, build them, pull out pre-reqs, and build a proper LSB/RedHat RPM of the module. It works *really* well, for me. But the code is awful, because CPAN.pm doesn't really expose an API, so it only worked in the most recent version of CPAN.pm... So today I'm having a look at CPANPLUS. I sent a patch to the author as it wouldn't compile on 5.6.1 with the latest Term::ReadLine. It looks nice - I can now basically go fetch(), extract(), do my make bits, built the