In preparation for the training, I put together an extensive outline of the process I follow whenever I theme a site. I wanted to have a design to work from during the training, so I modified a design that Abstract Edge had recently created for a site we worked on together. I made these design files available to the students to preview prior to the training.
On the registration form for the training, I asked a few questions of the attendees to help me best prepare for the training. One thing I learned was that all of the attendees had a moderate to strong understanding of CSS, so I was able to bypass some of the basic website styling principles, and focus specifically on Plone templates.
The training started out a little rough, which was to be expected with everyone being at different levels and having different computer setups. I was fortunate in that everyone in my class was using a Mac. By 11am, we were able to get past the more difficult parts of modifying and running buildout, and everything started running a bit more smoothly. The first thing we did on the second day of training was have everyone download a trial of TextMate, because of issues we had of everyone using different code editors. This made a dramatic difference in the ability for everyone to follow along, plus I was able to teach everyone the keyboard shortcuts that I was used to.
The main topics I covered were: creating a theme, editing the CSS, TAL, modifying/creating viewlets, modifying portlets, and creating custom templates. For the training, we used the latest version of Plone 3, but I also made sure to talk about Plone 4, and the differences there are for theming between Plone 3 and Plone 4.
Overall, I very much enjoyed the training experience, and had some great students. This was my second time leading this type of training, and I hope to have the opportunity to be able to do more trainings in the future.