To me category theory seems a lot like a "theory of everything". And it's amazing how encompassing the theory is, how it starts out with so little (basically just "functions", or "arrows") and acquires so much — in the words (p. 2) of the author of this book, "category, functor, natural transformation, adjunction — Indeed, that gives a pretty good outline of this book".
It seems to me a rather modest outline — What about, for example, (generalized) products, and coproducts (indeed, duality), equalizers and coequalizers, all special cases of limits and colimits? And what about (generalized) exponentials? Not to mention his "beyond adjoints" last chapter on monads and (generalized) algebras? Indeed, much is covered in 247 nonoverbearing pages.
This book made me fall in love with category theory all over again. At first, page vi, when he writes, after talking about Saunders Mac Lane's Categories for the Working Mathematician, that this is a "book for everybody else," I was worried that the book would not be mathematical enough for me. But it is, bigtime. Moreover, it's full of borderingonliterary descriptions which enhance the various ideas and concepts; the author often uses words extremely well.

Page 2; "Before getting down to business, let us ask why it should be that category theory has such farreaching applications. Well, we said that it is the abstract theory of functions, so the answer is simply this: Functions are everywhere! And everywhere that functions are, there are categories. Indeed, the subject might better have been called abstract function theory, or, perhaps even better: archery."

P. 61: "There are many different ways of presenting a given algebra, just like there are many ways of axiomatizing a logical theory."

P. 90, working up via cones to the definition of "limit": "We are here thinking of the diagram D as a "picture of J in C'. A cone to such a diagram D is then imagined as a manysided pyramid over the 'base' D and a morphism of cones is an arrow between the apexes of such pyramids." (I do have a couple of reservations concerning the accuracy here: First, since D: J → C might not be oneone on objects, two elements of J might "go to" the same object in C (so "picture" might not be quite correct — "condensed picture" might work). Second, two "apexes" might be one and the same C. Still, the helpfulness of his description seems to me to be worth the slight inaccuracy — we might call it "poetic justice".)

P. 134: "If you think of a functor F: C → D as a 'picture' of C in D, then you can think of a natural transformation … as a 'cylinder' with such a picture at each end."

P. 167, about the Yoneda lemma: "…the category Sets^{COp} is like an extension of C by 'ideal elements' that permit calculations which cannot be done in C. This is something like passing to the complex numbers to solve equations in the reals…" (though to me, it seems more like passing from the rationals to the reals).

And most intriguing of all: P. 202, in the section on Kan extensions: "In a sense, every functor has an adjoint!"
Indeed, I like his wellchosen italics and exclamation points, as well as some of his other "friendly" ways, which show that he truly enjoys this stuff, and wants us to enjoy it too. I also like the way he sometimes (and not too often) uses the first, and the second, person. P. 125: "I think you can see…" and "Let me emphasize that…"
Besides being nice, he's also kind. E.g., p. 6: "Do not worry if some of these examples are unfamiliar to you. Later on, we will take a closer look at some of them…" And p. 12, after the proof of Cayley's Theorem: "Note the two different levels of isomorphisms that occur in the proof… There are permutations of the sets of elements of G, which are isomorphisms in Sets, and there is the isomorphism between G and Gbar, which is in the category Groups of groups and group homomorphisms." And he stays nice. For example, p. 226: "Now, what can be said about the structure (T,η,μ)? Actually, quite a bit!…" Also notable are the several instances of his welcome phrase: "Here's the easy way." (And indeed, his way always is "easy".)
Naturally, if it were my book there are just a handful of things that I'd do differently; it's precisely because he is such a good writer and teacher that I was sometimes surprised that he missed a few opportunities. For example, he does such a commendable job of emphasizing functions as the "first approximation" to the definition of category theory (saying, on p. 8, that "it's the arrows that really matter!") that I was waiting for him to mention (for example, on page 6) that "arrows" (functions or morphisms) include the objects (as their domains and codomains) so that one could, technically, define a category solely in terms of its "arrows". And in fact Saunders Mac Lane, one of the two originators of category theory, talks about the "arrowsonly" definition of categories, in his book Categories for the Working Mathematician. And while it isn't necessary, nor perhaps always advisable, to do this, I felt something lacking. When I think of the beginnings of category theory, I think of it as studying "functions without elements" or "functions without x and y" — perhaps more dramatically, "the demise of the elements". (Indeed, in the introduction to his book, Categories for the Working Mathematician, Saunders Mac Lane talks about "learning how to live without elements." Later, of course, the (generalized) elements are resurrected…)
Also, when Awodey introduces UMPs (universal mapping properties), he was not, for me, as descriptive as he could have been. He might, for example, have said something to the effect that the limit (of a diagram D) is the cone that's "closest" to D, something that's "just an arrow away" from any other cone to D. (And if I were the author, I'd add, "Two arrows away" is the same as "one arrow away" because of composition.) Also, something which might be clarifying for beginners: Anything that's "just an arrow away" (in the proper direction…) is also a cone into D, and that's what brings to mind the idea of limit via UMP — namely, conversely, any cone into D arises "that way", meaning via being "an arrow away" from the limit.
On p. 92, I feel that the proof of Proposition 5.23 (that a category has all finite limits iff it has finite products and equalizers) is a tad less straightforward than previous proofs, and thus could be explained a bit more thoroughly. (I would begin to motivate it by asking something like "What prevents the product ∏_{i}D_{i} from being the limit?', answering "the arrows in D", and proceeding from there. Such motivation also adds to the beauty of it all, at least for me.) Also, in this proof, I think the reader needs to be reminded that J_{0} denotes the set of objects in J and that J_{1} denotes the set of arrows.
However, these "nitpicks" arise more out of personal taste than anything else, and there are plenty of good exposition ideas that he thought of that I wouldn't have. Equally casually should be taken the several typocorrections and minor notation suggestions. For example, on page 109, middle, in the string of inequalities, the third line seems unnecessary (and what's f', anyway?). And on p. 113, unless I'm mistaken, the variables seem to be mixed up. a should be c, b should be a, and c should be b. (It's cyclic. Having had the experience of rererewriting lecture notes and tests, I understand how that can happen.)
On p. 135, line 5, end of line, X should be B. And on p. 151, very bottom, F o G should be G o F and, on the following line, vice versa. And on p. 189, again very bottom, I would suggest indexing the diagonal functor by J, similarly qualifying the lim and colim functors using J ; then the claim could be written, more definitively: Let C be a category and let J be a small category. Then Δ_{J} has left and right adjoints iff C has limits and colimits (resp.) of type J . Finally, the typo on the top of p. 225 could drive students crazy, so let me hereby do my good deed for the day: there needs to be a φ at the very beginning of line 2, and a θ at the very beginning of line 7.
My only other concern is a pragmatic one. It's about the author's premise, on p. vi:
The students in my courses often have little background in Mathematics beyond a course in Discrete Math and some Calculus or Linear Algebra or a course or two in Logic. Nevertheless, as researchers in Computer Science or Logic, many will need to be familiar with the basic notions of Category Theory… This… is intended as a text and reference book on Category Theory, not only for students of Mathematics, but also for researchers and students in Computer Science, Logic, Linguistics, Cognitive Science, Philosophy, and any of the other fields that now make use of it.
Even though he also says that these students are hypothesized to be "mathematically talented", I still find it hard to believe that they would easily relate to things like UMPs, monads, and Talgebras. I think that it takes more than a definition and a few examples of groups (and, unless I missed it, he doesn't actually define rings or fields) to prepare anybody to appreciate and be able to deal with these concepts. The notion of category is, after all, (among other things) a generalization of the class of all groups, or the class of all sets; it seems to me that in order to feel comfortable with this new level of abstraction, one would need to have experienced the "old" level. Perhaps I'm underestimating the "mathematical talent" of the nonmathematicians for which the book is intended.
All told, I don't want you to pay too much attention to my toovoluminous qualifications. All told, I want you to go back and reread the first five paragraphs of this review. All told, this book is wonderful, like category theory itself.
Marion D. Cohen has a poetry book in press, forthcoming from Plain View Press (http://www.plainviewpress.net ), about the experience of mathematics. The title of the book is “Crossing the Equal Sign”. She also has a prospectus for, yes, a userfriendly calculus text, which she would like to place with a textbook publisher. She would love to receive emails at: mathwoman199436@aol.com