Not knowing Python, I read the book from cover to cover, doing many of the examples as interactive exercises. The book comes with a CD and includes a bunch of files (.jpg, .wav, .html) to experiment with (same files as the examples in the book). So, right off the bat, the reader is engaged in the material.
The CD that comes with the book runs on any PC and is easy to install and use. Because it's a multimedia-based book and self-study course, you get to do neat things like:
- manipulate images (.jpg files): understand bit representations of colors in a pixel, loop through pixels in an image, change colors in a photo, create a sunset (darken, lighten), convert to grayscale, remove red eye, repair photos, perform mirroring (symmetry in a photo)
- manipulate sounds (.wav files): understand the bit representation of sounds; view signals; change the volume; sample sounds at various rates; create echoes; splice sounds together; and learn a bit about compression, MP3, and MIDI
- manipulate strings and html pages: scrape Web pages for specific data and create your own Web pages based on the data you've pulled from other pages, perform string searches, work with files, deal with lookup tables (dictionaries) to act as primitive databases
- manipulate videos (series of .jpg images): there are tools on the CD that let you create simple animations (including fade outs and chroma key) and see how a stream of images combines to form a simple 3-second video
Overall, it's a great book, and a fun way to learn programming.