OTOH it can also be just a pedagogy issue. That nobody has figured out how to condense it into an undergraduate level so working engineers can grasp basics.
OTOH it can also be just a pedagogy issue. That nobody has figured out how to condense it into an undergraduate level so working engineers can grasp basics.
It's not. However claims like that get thrown around a fair amount so the confusion is understandable.
That said, some important Haskell abstractions were designed using category theory. So it can be helpful to know some of the lingo (since it will show up in abstraction names and descriptions).
And if you're looking to design the next breakthrough Haskell abstraction it might be extremely helpful, but that's not 99% of programmers. However, the people who can do that are super cool, eg https://www.staff.ncl.ac.uk/andrey.mokhov/selective-functors....
It depends. Are you an abstract or a concrete thinker? That's one axis of one the standard ways of describing personalities. (Yeah, I know, psychology... but it does seem to describe an actual difference in how people think.)
Now, people with one kind of personality can learn to think in the other way, but they won't find it as easy.