Developing algebra categorically is unfortunately difficult because the necessary material is spread over a number of seemingly unrelated books and articles. Another difficulty is that the mixing of set-theoretic foundations with categorical language makes things somewhat difficult to understand. I do have a reading list from which you can learn the categorical perspective, but this is actually quite a lot of material, and none of it comes from textbooks, so it is quite slow-going to learn from. In particular, you will not actually learn algebra from this and will be better served in terms of acquiring working knowledge from, say, Aluffi. In any case, below is the list, arranged in a somewhat logical order, but you should really be reading all of the stuff simultaneously.
First, you need to understand the category of sets s being a well-pointed topos, internal to the syntactic (bi)-category of predicates and functional (predicates) classes. For this you want to look at
- Sketches of an Elephant: First read Section D1. This is about what first-order logic looks like in categorical language. You want to understand the syntactic (bi-)category of predicates and functional (predicates) classes associated to a first-order theory. Second, read sections A1 and A2 in order to understand what a topos (hence a "set theory") looks like categorically.
Second, algebra is really about monads, in the sense that any category of algebraic objects is a category of algebras for a monad. For this you should read
Next, you will need some knowledge of enriched category theory in monoidal closed categories since, since most of the monads of basic algebra comes from monoid objects in a monoidal closed category (e.g. group actions are algebras for the monad associated to a group object in Set, vector spaces are algebras for the simple objects in the category of monoid objects in the category of abelian groups, etc.). The relevant material for understanding the constructions of these categories are the first few chapters of
It is here, in considering the enriched category theory perspective, where having a good understanding of the category of sets as a well-pointed topos is crucial. Without well-pointedness, you cannot conclude much about the categories of functors that you are building, and which the various categories of algebraic objects ultimately are.
Finally, there are the papers "Monads on Symmetric Monoidal Categories" and "Closed Categories Generated by Commutative Monads" by Anders Kock that address the fact that algebras for commutative monads inherit a monoidal closed structure when the commutative monad is in a monoidal closed category. This is where tensor products, for example, really come from.
Regarding topology, the Categorical Foundations book also has Chapter III: A Functional Approach to General Topology, which is quite enlightening, but you should probably only read it concurrently with an actual topology book, like Munkres.
In one place, the theory of fibrations, I feel tom Dieck's book is superior. Thus in the first edition of Spanier, in the proof of Lemma 11, of Chapter 2, Section 7, Spanier writes down an extended lifting function $\Lambda$, but he does not prove it is continuous. I did not manage to prove it was continuous, and in fact found the function was not well defined. I sent a correction of the definition to Spanier, and this appeared in the second edition, but I still do not know how to prove $\Lambda$ is continuous. Have I missed something?
On the other hand Spanier's ideas on the construction of covering spaces are still referred today by experts, with the notion of what they call the Spanier group.
I find Section 3 of Chapter 7 of Spanier on "Change of base point" rather hard work, and I feel it can all be much easier done, and more generally, by using fibrations of groupoids. But tom Dieck's book does not use this method either.
Spanier gives van Kampen's theorem for the fundamental group of a simplicial complex as an exercise, while tom Dieck's book does give the statement of the theorem for a union of two spaces. Hatcher gives a more general theorem, for a union of many spaces, but none of these mention the fundamental groupoid on a set of base points.
I tend to agree with 313's answer that readers should look around, and find what is easier for them, in different aspects.
My copy of Spanier, dated 1966, had a price of \$15, but when I checked for inflation that was equivalent to \$111 today.
March 13: I add that neither book develops the algebraic theory of groupoids. For a relevant discussion on this, see https://mathoverflow.net/questions/40945/compelling-evidence-that-two-basepoints-are-better-than-one/46808#46808
Best Answer
0) The excellent mathematician you evoke has as family name (=surname) tom Dieck and as first name Tammo: tom is part of his surname and has nothing to do with Tom, the endearing form of Thomas.
1) Your idea of "finding a book that starts with a formal treatment of the basics of category theory and moves to more advanced/specialized concepts in a moderate pace" is exactly backward: you should learn some mathematical subject that attracts you first and learn the relevant categorical facts as the need makes itself felt.
Else you will learn an unmotivated and dry formalism with no clue as to its usefulness.
2) I can't recommend strongly enough to keep away from Kashiwara-Shapira's book.
It is an extremely technical and advanced monograph written by and addressed to experts.
Kashiwara is a world renowned specialist in algebraic analysis, a domain created by his advisor Mikio Sato (who introduced hyperfunctions, a sort of alternative to Schwartz's distributions). Kashiwara has arguably been the dominant figure in $\mathcal D$-module theory before he turned to other subjects like the microlocal theory of sheaves which he created with Schapira.
In summary: be very aware that this monograph is addressed to quite advanced readers, as its inclusion in Springer's prestigious series Grundlehren der mathematischen Wissenschaften already shows.
3) The book by tom Dieck is an excellent choice: it covers basic algebraic topology and has a very healthy attitude toward category theory.
Namely, when the author needs a concept he introduces it, explains it, and uses it in the particular context where it arises.
A typical example is on page 60, where tom Dieck introduces the concept of $2$-category while studying the homotopy groupoid $\Pi(X,Y)$.
The only caveat is the length of the book, but since the book is well organized you don't have to read it from cover: just select the morsels you find most appetizing.