Zooming?

any tutorials out there to explain how to arrange a zooming effect, say to allow the user to zoom in and out of a small map ?
i have found a few source codes but id really appreciate some explanations.

nice.