When to learn category theory? I'm a undergraduate who wishes to learn category theory but I only have basic knowledge of linear algebra and set theory, I've also had a short course on number theory which used some basic concepts about groups and modular arithmetic. Is it too early to start learning category theory? should I wait to take a course on abstract algebra?
Is it very important to use category theory facts in a first course in group theory, ring theory, fields and Galois theory, modules and tensor products (each of those is a one semester course), would that make it a 'better' course?
I was unsure to learn category theory early but this post Mathematical subjects you wish you learned earlier inspired me to ask you given my background.
 A: I think there are good reasons to learn category theory early on for the unifying perspective it gives and also good reasons to wait until you have a healthy amount of examples on hand. One thing I want to emphasize, since no one here has mentioned it thus far: elementary category theory is largely a matter of learning a new language, with many definitions and few results. In fact, I would go so far as to say there are no results in elementary category theory. The Yoneda lemma might count, depending on whether it is actually elementary and whether its proof is actually more than a tautology. 
Anyway, I think this helps the case of those who would encourage you to learn the subject earlier, since reading or talking about category theory is pretty smooth sailing in the sense that there are no intricate proofs to follow. Note, however, that the definitions of basic categorical concepts may themselves be somewhat intricate, but hopefully after a while they will seem natural and not cumbersome.
A: Luckily these days there is a beautiful text that teaches algebra and category theory at the same time: Aluffi - Chapter 0. It deserves to be more well-known. Besides the fact that it uses (basic) category language from the outset, it is very well-written. If I would ever teach an algebra course, this would probably the text I would use.
A: I tried reading Mac Lane's classic Categories for the working mathematician the summer after I finished first year. That didn't go very well, and I didn't learn much. I suspect the reason was that the examples were too inaccessible at that stage. On the other hand, I did understand Lawvere and Rosebrugh's Sets for Mathematics at that time, but again the lack of examples meant that I didn't appreciate the significance and elegance of categorification.
I would recommend not learning category theory until you've seen enough concrete examples to be able motivate its study properly — at the very least one course in group theory, one in linear algebra, and one in general point-set topology. Generalised abstract nonsense is better appreciated when you realise, for example, that the Cartesian product of sets, the direct product of groups, the direct product of vector spaces, and the product topology all satisfy the same universal property: Given two objects $A$ and $B$, their product is an object $A \times B$ together with a pair of arrows (structure-preserving maps) $p_1 : A \times B \to A$, $p_2 : A \times B \to B$ which are universal, in the sense that for any pair of arrows $f: X \to A$, $g: X \to B$, there is a unique arrow $(f, g): X \to A \times B$ such that $p_1 \circ (f, g) = f$ and $p_2 \circ (f, g) = g$.
On the other hand, learning category theory can also lead to some insights: for example, it is a remarkable fact that in the category of vector spaces, the direct sum of finitely many vector spaces is the same as the direct product of them. This is a mysterious coincidence, since in the other categories you are familiar with, the constructions corresponding to direct sum and direct product are distinct and in general not the same. This, together with some other facts, should convince you that something special and very nice is going on in linear algebra.
A: I very often find some knowledge of category theory useful to understand things conceptually.
A book that one could read before studying mathematics at the university is Lawvere's and Schanuel's Conceptual mathematics. This is an introduction to category theoretic ideas on a most elementary level.
Edit: two days ago, there appeared a very interesting-looking book by David I. Spivak on the arxiv called Category theory for scientists.
A: I've already answered a similar question on MathOverflow here.
Here are some thoughts of mine:

category theory (seen as a language) should not be teached just in advanced courses, but it should be developed into the basics courses, in a very gradual way;
some elementary concepts are so simple that also a first year student can understand them, if these concepts are presented in the right way:
  for instance you can see a category just as a graph with operations and functors as graph morphisms preserving the operations (this definition is not more complex or abstract then group-group homomorphism and vectorial space-linear map definitions; because these concepts are so simple way not introducing them early?
learning category theory helps in making connections between many different concepts, because it shows the deep unity in maths; 
category theory is first of all a language, and so it gives us a new way of reasoning; this new way of reasoning requires some time to be fully assimilated, and this assimilation could require years; for this reason I think it's best starting to learn category soon; 
having category theory help to learn new maths: for instance I've learned category theory for my interest in logic and foundations, then knowing those concepts helped to understand constructions in algebraic topology and algebraic geometry faster then what I would have done without it;

Other things can be found in the link above.
A: Echoing a bit of user1728 and Sean's comments, Category Theory is a wonderful unifying language that ties together a lot of ideas and makes certain things much easier, but it is pretty rough going to learn in the abstract. 
I was lucky enough that the professor that taught Abstract Algebra at the National University in Mexico when I took it did a lot of the proofs as if they were category theory, but without actually saying "Category Theory". So he proved that the product of groups has the universal property of a product, and the uniqueness up to unique isomorphism, and so on, with diagrams; did the same thing with rings. Etc. By the end of the course, he was mentioning that all of these ideas were special cases of a general theory called "Category Theory". And so on.
By the time I got to an actual course in Category Theory, I had a whole library of mental examples to draw upon when looking at all the different concepts, amplified with some of the less algebraic-flavored examples (such as considering a partially ordered set as a category, etc) that the professor for that course gave. With that in hand, the first couple of chapters of Mac Lane's book became easier to digest and understand, and use elsewhere.
Of course, this may slant my view; I tend to view Category Theory more as a useful unifying language than as a particular subject (in which I am at least somewhat wrong, if not more). But I suspect you'll be able to get into, and get a lot more out of, Category Theory if you have the library of examples on hand. 
Of course, as I said, I was lucky: I was primed for Category Theory with examples that were essentially Category Theory without saying so. You may not benefit from that. Still, I think that waiting until you study some abstract algebra and see some of these constructions in action might be a good idea.
A: I agree a lot with user1728's answer. IMO category theory is a beautiful subject, but one that does not make a whole lot of sense without examples. I think it would be pretty hard to learn category theory while also learning all of the standard examples. I consider having an abstract algebra and/or a topology course an absolute prerequisite to understanding category theory. For me, the best part about category theory is that it is a framework that makes life easier.
There are some subjects that it is absolutely necessary to know category theory before hand, but a pass familiarity with the definitions should suffice for a first algebra or galois theory course.
A: The professor of the short algebraic topology course I took during my second year refused to give us the definition of functor, saying that it is better to start using them and building up interesting examples before looking at the abstract definitions.
I remember that at the time I tough that this was quite stupid, but now I actually agree with him. I was happy to learn the basics of category theory the following year having more examples in mind.
Most of the concepts of category theory are extremely natural but to realize that you need a good background. Otherwise you will most likely struggle against the abstractness with few chances to understand what's truly going on.
Moreover, I don't think that you will profit much from knowing some category theory this early, before an advanced course in abstract algebra. I learned it while studying module theory, quite a long time after a first course in abstract algebra and a course in Galois theory, and I felt that that was perfect.
