P.S. I don't believe programmers need to know category theory. However, it's beautiful by itself like many art.