The book falls short as it fails to focus on IPython. [Interestingly, this seems to be a recurring issue across IPython books from PacktPub.]
The book does a good job introducing IPython in Chapter 2. In chapters 3, the book describes how to use NumPy from within IPython. It is not clear if this chapter is intended to make the reader proficient with NumPy or IPython or the combination. The exposition about NumPy (and Pandas) is very limited; of course, NumPy is rich. Further, this chapter neither introduces new IPython features specific to computing nor describes nuances of previously introduced IPython features in the context of computing. This treatment continues in chapter 4 where the book talks about IPython and visualization.
When I picked the book, I wanted to learn about IPython features along with its facets specific to computation and visualization. When I put it down, I had learned about the basic features of IPython and was unclear if there were features specific to computation and visualization.
An ideal IPython book would talk about the features of IPython (shell and notebook), when to use these features (shell vs notebook), and the workflow to adopt when using IPython (and let other books focus on technologies such as NumPy and Matplotlib).