
Categories for the Working Mathematician a couple of months ago, and while it sometimes takes a bit of work it's a very good introduction. The only caution I have is that if you don't have that strong of a math background, or hadn't done it in a few years (like myself), you may have to lookup a lot of definitions in order to understand his examples. Wikipedia usually provides enough of a detailed description that you can get the point.
Good lack to you but this is very bad advice. It is too much even for average mathematician. As a serious first read for CS guy I would recommend Categories for Types by Roy Crole. For short introduction: Basic Category Theory for Computer Scientists by Benjamin Pierce. The problem with learning CT lies in the large amount of mathematical intuition that is assumed. This intuition can be build by studing topology and algebra. Learning CT without this background is kind of a Turing test;-)