Benjamin Pierce's "Basic Category Theory for Computer Scientists" (not online) is terse and complete [1].
Wikipedia is good for definitions and there's also a Wikibook on category theory: http://en.wikibooks.org/wiki/Category_theory
There are some brief, informative, and fun lectures on YouTube by the Catsters: http://www.youtube.com/profile_play_list?user=TheCatsters
The natural transformations playlist is where to start, just be ready to use the aforementioned references.
__
[1] Natural transformations are the original point of category theory. A text that doesn't cover them is incomplete.
Are there any data structures based on category theory, like sets & graphs which are inspired by mathematical theories?
As for the Catsters' videos, I'm unsure about the best order. The recommendation to start with the natural transformations playlist came from someone in #haskell (Cale, maybe?). I'd suggest diving in to whatever sounds interesting and backing up to review other videos that contain any new terms.
> Quoting Asperti and Longo [1]: “The basic premise of category theory is that every kind of mathematically structured object comes equipped with a notion of [ . . . ] transformation, called ‘morphism’, that preserves the structure of the object.” By means of the categorical language one cannot express properties of the internal structure of objects. The internal structure of objects is accessible only externally through the morphisms between the objects.
What is described here sounds a lot like information hiding/encapsulation. Is category theory similar to OOP in this way?