Tutoring Remote Clients
Recently, our team spent a great amount of time tutoring a remote client. In this case, the client needed help understanding the basics for an off the shelf e-commerce package. Our usual channels of communication were not adequate since the client was not web-savvy and was easily confused with our instructions. We had to adapt, re-evaluate our assumptions, and find ways to get the client up to speed. How could we teach the essentials without face to face conferences and without a shared lingua franca? We rejected our usual suspects, tried a few new strategies, and found another one that, in hindsight, could have been very useful in tutoring remote clients.
Screen Sharing
The best solution is to use realtime chat involving a shared desktop. This is as close to a face to face conference as possible.
My preference is iChat screen sharing but not everybody uses Apple computers. a VNC derivative or Windows remote desktop would have been fine too.
Screen sharing is very close to a face to face conference but it does have its problems. The biggest is that the setup could be difficult for non web-savvy clients. Troubleshooting remotely is falling back to square one. Only recommended for clients with a reasonable chance of setting it up or who have lots of patience.
Existing Documentation
Usually, there is documentation for users to study. Have a look around the software website and you'll probably find official manuals and screencasts. Chances are good that a web search will find some great user created tutorials as well. This is a good first step and many times it'll work well to point clients to these resources instead of creating the content yourself.
In our case example, there are plenty of documentation for the software chosen by our client. Sadly, in response to some of the client's questions, references to selected manual pages and 7 minute video tutorials from the original developers were too confusing so we had to look at other solutions.
Phone Conferences, Email, Instant Messenging
Phone calls, email, and instant messenging are lousy for demoing or tutoring purposes. It's not meant for walking through a website or explaining multi-step tasks. However, they're great for answering questions that don't require great detail and if the team and remote client have a shared jargon.
Services such as Skype and Vonage could help keep long distance call costs down while still acting like a regular phone line.
Campfire is a web based instant messaging tool. No worries about setup and it retains chat histories accessible by all members of the team.
Highlighted Screenshots
Our aft-mentioned client was paralyzed and frustrated with the complexity of the website admin panel. The interface was too cluttered and the client was unable to navigate the menu to even begin performing administration tasks. Clarity is the key goal to strive for.
Try highlighting certain page elements to clarify what exactly the client should be concerned with. Another way of looking at it is the opposite: to de-emphasize as much of the non-essentials of a busy screen as much as possible.

Any additional text has immediate context. Consequently, text stays concise by only explaining the significance of the highlight elements. No need to describe page elements beforehand.
I tried a couple of highlighting techniques and the one I like best involves darkening, and thus lowering the contrast, of the entire screenshot. The background still preserves enough prominence such that the client can still figure out detail if desired. Since the page is dark, it is then easy to accentuate the important elements: make it bright and full of contrast.
Here is a screenshot to illustrate how easy it is to recreate the effect in Photoshop. Of course, many variations are possible so experiment until you find something to your liking.

While these screenshots can be made fairly quickly, a whole series of them sucks up precious time. Still, they are effective in getting the message across and can be worth the effort. Because I took into account what the client knowledge level was and customized it to answer questions directly and concisely, the client was able to learn at an accelerated rate.
Desktop Recording
The other day I came across this software called Jing that captures the video of the computer screen while recording from the computer's sound input. It isn't realtime like screen sharing, but is valuable for constructing quick and dirty tutorials that require little or no post processing.
The premise of a streamlined workflow is what sold me on the idea. First, record a demonstration as you would normally present it. Jing will then automatically upload the movie so that it is accessible through the web.
Jing can be configured to automatically upload the movie through FTP to a web accessible directory. If you don't have a web host, they do offer complimentary 2GB webspace accounts at screencasts.com. You can signup for this account during the Jing program installation.
So far, I've created a few test movies and the quality is great. movies are about a megabyte for every 20 seconds but your mileage will vary.
I can't say Jing is perfect though. It doesn't integrate well with the OSX environment with its custom yellow and black theme. Worse, switching to and from some of Jing's dialog boxes is a hassle since they'll disappear and are unrecoverable through the dock or expose. Sometimes application windows are unmovable and are set to appear above all others. Jing needs an interface overhaul.
Another downer is that files are encoded in only .swf format. That's fine for quick throw away movies but is not post processing friendly. Finally, the greatest sin is that Jing crashed too many times to ignore. I wasn't keeping track but it felt like there was a 50% chance it'll crash every time I record. I will need to find a more robust desktop recording software for more involved work.
Despite the negatives, Jing has a clear and productive purpose. I'll keep Jing installed.
Jing is not bad for screen recording, and it is even free. If you would like to use some screen recording editing function, DemoCreator could be nice.