Я как раз делаю попытки объяснять это дело (категории) простым людям, программистам. Есть фокусы, позволяющие это сделать. Поменьше аксиоматики. Не поминать то, что им не надо: никаких эпиморфизмов, мономорфизмов, катаморфизмов (смысл употребления этого понятия, катаморфизм, вообще ускальзывает от меня).
И ещё, можно идти задом наперёд. Вот вам монада, все знают монаду. После рефакторинга получаем функтор, а монада - частный случай, со свойствами. А что за функтор такой, где у него область значений и определения? И тут бац - выскакивает категория. И ничего, переваривают. Правда, на Клейсли скисают.
no subject
И ещё, можно идти задом наперёд. Вот вам монада, все знают монаду. После рефакторинга получаем функтор, а монада - частный случай, со свойствами. А что за функтор такой, где у него область значений и определения? И тут бац - выскакивает категория. И ничего, переваривают. Правда, на Клейсли скисают.