Hacker News new | past | comments | ask | show | jobs | submit login

I get the feeling there are two very different paths towards an understanding of category theory. Moreover, I feel these paths either don't quite converge or only converge very slowly.

The roads are:

* Through experience as a type-system in e.g. Haskell * Through experience using this in pure mathematics

From my experience, it seems that trying to swap between the two paths at the start is reaaally confusing. You need to stick to one path until it makes sense. Then perhaps later, you can get back to the other path. The point where "it makes sense" is when you get out of the toy-examples and manage to put it to actual use. My hypothesis is that: because the first actual usage examples are so different between the two paths, switching only confuses you.

Obviously, this doesn't mean sticking to a single source. When you get stuck on one source an alternative explanation is great. It just needs to stay within the same path.




I definitely think you're on to something. I think there are two types of math people among programmers:

* Math heads that make their way into the CS world, and for loops were harder to understand in the beginning, but Set algebra makes sense.

* Programmers by trade that have had to deal with the math side of things that probably learned for loops at age 10, and seeing sigma and epsilon symbols drives them totally nuts.

I'm in the second group and I definitely say I live off content created by people that came into it the same way.

Shorter answer: there are Java people and there are Python people.


> for loops were harder to understand in the beginning

Hits home. Haskell is difficult but solid, mainstream languages are easy but based on arbitrary foundations.




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: