I'm trying to learn category theory. It's not the kind of thing you can learn the way this article suggests. I find learning new abstractions rather difficult especially at the level of category theory. If anyone has any tips I'd love to hear them.
Have you studied abstract algebra first? Category theory is an abstraction level above abstract algebra, so the normal way to learn it is to first get a solid foundation in abstract algebra.
How to learn hard things in tech
21–30 of 39 posts
Re: How to learn hard things in tech
#22I’m enamoured by the concept of functional core imperative shell but I’m struggling to see how to refactor my own projects to be like that.
(In python if it matters)
Would love screencasts, books, blogposts, other resources that cover this kind of intermediate “working on the code” not working “in the code”
Re: How to learn hard things in tech
#23When I encounter something new and hard I try to find a conference presentation around this topic. I'm guessing public speaking in a time constrained format really forces speakers to prepare well and provides the best time/information balance. Even better if there are questions from the audience that dig deeper into the why questions.
Re: How to learn hard things in tech
#24I'm trying to learn category theory. It's not the kind of thing you can learn the way this article suggests. I find learning new abstractions rather difficult especially at the level of category theory. If anyone has any tips I'd love to hear them.
https://www.youtube.com/watch?v=ho7oagHeqNc
and in a similar vein I am enjoying her book: "How to Bake Pi".
Getting more into the technical side of things, Bartosz Milewski has good lessons in this playlist:
https://www.youtube.com/watch?v=I8LbkfSSR58&list=PLbgaMIhjbm...
Re: How to learn hard things in tech
#25>Start with the smallest working example —it doesn’t matter where this comes from, it could be a website, blog, the documentation for the technology, a friend or coworker, it could be from anywhere. This is your basic working example. It’s the baseline for building further knowledge. This is the main idea behind over 400+ micro samples I created for ASP.NET Core https://github.com/dodyg/practical-aspnetcore
There's gobyexample.com, but it contains usually basic stuff to get started with the language.
Re: How to learn hard things in tech
#26My hard thing right now is how to layout a modern project in terms of folder structure, how big should files be, where to put things. Separating gui from app, nice clean architecture. I’m enamoured by the concept of functional core imperative shell but I’m struggling to see how to refactor my own projects to be like that. (In python if it matters) Would love screencasts, books, blogposts, other resources that cover t…
[0]: https://learning.oreilly.com/library/view/architecture-patte...
Re: How to learn hard things in tech
#27My hard thing right now is how to layout a modern project in terms of folder structure, how big should files be, where to put things. Separating gui from app, nice clean architecture. I’m enamoured by the concept of functional core imperative shell but I’m struggling to see how to refactor my own projects to be like that. (In python if it matters) Would love screencasts, books, blogposts, other resources that cover t…
Re: How to learn hard things in tech
#28>Start with the smallest working example —it doesn’t matter where this comes from, it could be a website, blog, the documentation for the technology, a friend or coworker, it could be from anywhere. This is your basic working example. It’s the baseline for building further knowledge. This is the main idea behind over 400+ micro samples I created for ASP.NET Core https://github.com/dodyg/practical-aspnetcore
Re: How to learn hard things in tech
#29I'm trying to learn category theory. It's not the kind of thing you can learn the way this article suggests. I find learning new abstractions rather difficult especially at the level of category theory. If anyone has any tips I'd love to hear them.
As Jensson recommended I would learn abstract algebra first to understand concrete examples in category theory. If abstracts algebra is too difficult then learn introduction to proofs before continuing with abstract algebra. Try doing problems and posting them online to have them checked. Currently you can use discord, reddit, math stack exchange etc Don’t worry about rushing it. Everything builds on itself. For inst…
Re: How to learn hard things in tech
#30Earlier quoted context omitted.
As Jensson recommended I would learn abstract algebra first to understand concrete examples in category theory. If abstracts algebra is too difficult then learn introduction to proofs before continuing with abstract algebra. Try doing problems and posting them online to have them checked. Currently you can use discord, reddit, math stack exchange etc Don’t worry about rushing it. Everything builds on itself. For inst…
Any good resources for proofs and/or abstract algebra?
supplement those books with these lecture videos:
https://youtube.com/playlist?list=PLl-gb0E4MII28GykmtuBXNUNo...
they appear to follow rosen but they’re the same topics you’d see in epp
if you’re the complete beginner go with epp and then use rosen as a supplement.
if you are an advanced undergraduate in math but don’t know category theory then:
https://math.jhu.edu/~eriehl/context.pdf
or
Basic Category Theory by Tom Leinster
(even though i’ll list a bunch more resources below i’d probably start with leinster and work up enough math maturity to push through it.)
i also liked this: https://arxiv.org/pdf/1912.10642.pdf
if you don’t know advanced math then there is an upcoming (not yet released book) called “the joy of abstraction”
i cannot attest for the book as i haven’t read it but may be good for true beginners:
https://www.cambridge.org/us/academic/subjects/mathematics/l...
(click “look inside”)
they say “no formal mathematical background needed”
you can read the description and see if that is something that would be of interest to you.
this guy has videos + a book
there are a lot of books like “category theory for programmers”, “programming in categories” and the “seven sketches” books along with lecture recordings and videos that you may find helpful.
category theory for programmers might be the easiest of those three books. i worked a bit out of the programming with categories (http://brendanfong.com/programmingcats_files/cats4progs-DRAF...) book and ignored all the haskell sections and just focused on the math parts (this is a distinct book from “category theory for programmers”. people confuse the two due to the names and the fact they both use haskell).
if you know category theory and want to learn topology then there is “ Topology A Categorical Approach” by bradley et al.