When it comes to the use of mathematical software as a pedagogical tool, I am something of an old fogey. I find *Mathematica* and *Maple* useful, and I encourage students to use them, but I am leery of allowing such tools to occupy a very large part of the classroom or the textbook, for two reasons. First, I worry that learning to use these programs will become one more hurdle, one more difficult thing in a subject that is already quite difficult. Second, I worry about the fascination that these programs seem to exert. Some mathematicians, and some students, seem to get so fascinated with the tools that the mathematics ends up relegated to a supporting role.

Alfred Gray's *Modern Differential Geometry of Curves and Surfaces* was one of the first textbooks to fully integrate *Mathematica* into an undergraduate course on differential geometry. Doing so is clearly a good idea. Geometry should be visual, and using software allows us to make it so. Furthermore, differential geometry deals with lots of important things that are easy to define and very hard to compute. Even computing the curvature and torsion of a curve in Euclidean space can be a pain. As a result, we are either reduced to having students work on carefully selected toy examples or we tell our students to learn to use symbolic manipulation software.

In his introduction to his second edition, Gray made the first point forcefully. He pointed out that differential geometry was out of fashion in the mid-twentieth century, and said, "I attribute the decline of differential geometry, especially in the United States, to the rise of tensor analysis. Instead of drawing pictures it became fashionable to raise and lower indices." Computers made it possible once again to draw pictures. Computer graphics has, in fact, created a whole new range of applications of differential geometry. And computers make it easy to do complicated computations. To use the most obvious example, the horrible formula for the Gaussian curvature in terms of the first fundamental form that comes out of Gauss's *Theorema Egregium* is much too complicated to use when computing by hand, but it doesn't bother *Mathematica* one bit.

All of this makes me ambivalent about this new (third) edition of Gray's book, revised after his death by Elsa Abbena and Simon Salamon. It is *huge*, bringing to mind those scary massive software manuals that used to come with *Mathematica*. Opening the book reveals that much of this size is due to the decision to *print* the *Mathematica* notebooks corresponding to each chapter as a appendices to their chapters. This instantly doubles the size of the book. It is a puzzling decision. First of all, the notebooks are all available online. Second, there is very little benefit to reading a *Mathematica* notebook without being able to execute the code. Yes, it's nice to see the code written out, but one could see that in the electronic form too.

Seeing the size of the book and the presence of all the code, my initial reaction was to conclude that my fear had come true: the software had eaten up the mathematics. There is certainly some truth to this. In fact, someone wanting to teach a course on *Mathematica* and graphics could use parts of this book as a text. (Gray even says so!) But there is more to the book than that.

If one ignores those many pages of *Mathematica* notebooks, what is left is very good. The treatment of differential geometry is quite classical, but it is also intelligently and charmingly presented, with many more pictures than usual. For example, I had never before seen a simultaneous plot of a plane curve and its curvature function, or a plot of the Gaussian curvature of a surface. There are pictures of tangent developables, generalized cones, parallel surfaces, and other constructions that usually only show up in problem sets. There are *lots* of pictures of minimal surfaces.

There are also some nice theoretical touches, such as relating the existence of a signed curvature function for plane curves to the existence of a complex structure on the plane. Links to complex analysis and to quaternions are made when appropriate, which is also helpful. And the ugly equations with awful indices are also there for those who like them.

The book covers far too many topics for a one-semester course, but that is fine: one can select, and much will be left over for students to consider and study. There are little biographical footnotes and attempts at history. These are mostly inadequate and sometimes even annoying. (What's the point of pointing out that "ellipse" comes from "falling short" if one does not then explain what has fallen short of what?)

One final complaint is that the Gauss-Bonnet theorem is relegated to the very last chapter, and the proof uses (lightly) the theory of abstract surfaces developed earlier. This is unfortunate, since in an undergraduate course it is very hard to cover abstract surfaces and still get to Gauss-Bonnet… but it would be educational malpractice *not* to get to Gauss-Bonnet.

In the end, though I would have preferred to have the notebooks on a CD-ROM and a thinner book, I think this is a very good introductory textbook, particularly if your students are already familiar with *Mathematica* and can therefore concentrate on learning the geometry. I would probably not choose it as a main text, but I would certainly recommend it to appropriately inclined students and to their professors.

Fernando Q. Gouvêa just finished teaching a one-semester undergraduate introduction to differential geometry at Colby College.