Category theory is really cool. You should study it for fun (though not, directly, to be good at programming).
If you’re interested in studying it for fun, I recommend the following resources.
- Lawvere and Schanuel’s Conceptual Mathematicsis my favorite book for “getting the CT viewpoint”. It’s a weird book, written from the perspective of an observer of a series of (make believe) lectures where a small group is being taught category theory. This is nice, though, as it gives lots of space for the characters to explore the ideas and discuss how they ought to be thought of and used. The topics can be a little mathematical at times, but the onramp is slow. Even if you only read the first half or third of this book, I think it can be a key perspective missing elsewhere.
- Spivak and Fong’s Seven Sketches in Compositionality is an odd bird as far as category theory books go. It’s a book written as a companion to a class at MIT, distributed for free. It teaches CT a little non-traditionally as it focuses on preorders and enriched categories. The former is sort of a very simplified category and is a great tool for understanding the latter theory. The latter is a sort of complexified category… which they compellingly demonstrate as being very useful for finding “practical” applications. All in all, this is a really great book for learning CT and also can help a lot for grasping the “CT viewpoint”.
- Bartosz Milewski’s Category Theory for Programmersis a series of blog posts which pretty deeply explore category theory as it applies to programming. Milewski is a Haskell programmer and freely uses Haskell syntax and techniques to connect to CT concepts, so he draws some very direct and desirable comparisons. This can be a straightforward resource for learning about so-called “Haskell-egory theory”, though in service of that end you may be picking up a somewhat slim view of the study at large.
- Aluffi’s Algebra: Chapter 0is something I always recommend. Technically, this isn’t about CT at all but instead abstract algebra. That said, I believe abstract algebra to be a pretty useful prerequisite for understanding CT and Aluffi is clearly, directly writing this book as an onramp to learning CT directly. If you read this book and then after it read a more standard CT book, you’ll get the connections he was trying to make immediately.
- Mac Lane Categories for the Working Mathematicianis the grand daddy of all CT books. Mac Lane and Eilenberg are credited with inventing CT and Mac Lane is an exhaustive, thorough, and unforgiving teacher of the subject… just about as completely as possible. You will not want to read this book without (a) some significant mathematical background, (b) some prior experience with CT ideas, and (c) lots of patience and scratch paper. That said, if you’re ever looking for the final answer on any basic category theoretic concept then this can be your bible.
- nLabis like the Wikipedia for category theory. Or, rather, the Wikipedia for higher category theory, which is a generalization of category theory. So, when you wake up some morning and feel “wow, category theory is fun but it’s just not abstract enough” then you’ll know where to go. Actually, though, they’re a great fast resource for reading about all sorts of category theoretic concepts once you get your footing sufficiently to read between the lines a bit. You should probably refer to it regularly and practice this skill as it can eventually become a fantastic resource for you.
- Cheng’s How to Bake Pi: An Edible Exploration of the Mathematics of Mathematicsis wholly unlike every other recommendation on this list as its a pop science book. That said, Eugenia Cheng is one of The Catsterswho made a series of YouTube videos on Category Theoretic topics as well as being a researcher and lecturer in pure mathematics and category theory. She’s good at writing about mathematics in a way that skips over hairy detail and gets close to the beating heart and How to Bake Pi is a perfect example. It’s a nice read on its own and great for handing to someone without a technical background to explain to them why you’ve been working your way through Mac Lane for the last 6 years.