Ed Knorr said
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.
W Boudville said
Guzdial teaches Python from the angle that you want to use it to easily manipulate various types of multimedia files. The files might contain images, sounds, video or even just plain text. This gives some of you extra motivation to learn the material.
Along the way, you can learn how images are encoded in JPG, and how colours are represented, either in RGB or HSB. There is a fair amount of image analysis and modifications that can be easily done in Python. This does not approach the sophistication of what Photoshop provides. But being able to do a lot yourself, instead of invoking canned Photoshop routines, might appeal to you.
Audio manipulation is also covered, though perhaps not as extensively. There are more specialised audio tools available elsewhere, especially for music synthesis.
The discussion of movies is very weak. Due to the complexity of what is required. Here I suggest you turn to what Apple and others offer.
Michael Tobis said
This book achieves both of the things you would want a Python as a first language book to do - it engages the beginner with things they might actually want to do, but doesn't fail to introduce the deeper concepts that are needed to come to appreciate the beauty and elegance of Python.
Focusing on computing applications in the arts, this book uses a clever approach to enable the beginner to do really interesting stuff, very quickly. There are things in there that would be of interest to any photographer, not just a software beginner.
Yes, Photoshop is faster and easier, but it hasn't got this level of control! If you ever wanted to write your own Photoshop plugins, this book might be of interest just as an alternative way to get to design your own effects.
The end of the book gets carried away, trying to pack too much in. It tries to explain OOP and Swing, HTML, Javascript and SQL. I think this is too much to get into one book, and if you are working through the text yourself without any mentors you should probably not give yourself too much grief if you don't get all the way through it.
Admittedly, it is also pretty darned expensive.
Otherwise great stuff! This book fills a gaping hole in the Python literature. If you are an intelligent beginner, it is a great place to get started in getting real control over your computer!
CS newbee said
Guzdial presents concepts in simple form that is easy for beginners to understand. Actually entertaining to read. Worth every penny!
Comments