Skip to content
HomeVideos
AllLongsCategoriesPlaylists
BooksBlogsPodcasts
HistoryListsWatch laterLiked videosFollowing

The videos, books, blogs and podcasts Hacker News keeps recommending, all in one place.

VideosBooksBlogsPodcastsAboutPrivacySettings

Data from Hacker News, HackerTube, HackerBooks, HackerBlogs and Open Library. Credits · Not affiliated with Y Combinator.

HomeVideosBooksBlogsPodcasts
Ctrl K

    Category Theory 1.1: Motivation and Philosophy

    Bartosz Milewski

    11 HN recommenders · recommended in 16 months, 2016–2026

    YouTube

    46:46 · 394K views · Aug 25, 2016

    The first lecture in Bartosz Milewski's category theory series for programmers. It covers the motivation and philosophy behind category theory and why composition matters for handling complexity.

    HN commenters repeatedly name it as the friendliest entry point to category theory for working programmers.

    Software Engineering & LanguagesFunctional programmingPure mathematicsUniversity lectures & courses
    1. 40:39
      Category Theory in Life - Eugenia ChengLambda World113K views • 9 years ago
    2. 56:58
      Philip Wadler - Propositions as Types (Lambda Days 2016)Erlang Solutions20K views • 10 years ago
    3. 1:02:06
      Real Analysis, Lecture 1: Constructing the Rational NumbersHarveyMuddCollegeEDU613K views • 16 years ago
    4. 1:36:54
      Category Theory by Tom LaGattaAI Council73K views • 12 years ago
    5. 1:03:14
      Category Theory, The essence of interface-based design - Erik MeijerFooCafe74K views • 11 years ago
    6. 1:07:10
      Brian Beckman: Don't fear the Monadjasonofthel33t415K views • 13 years ago
    7. 1:12:56
      Lecture 1A: Overview and Introduction to LispMIT OpenCourseWare421K views • 7 years ago
    8. 42:43
      "Propositions as Types" by Philip WadlerStrange Loop Conference144K views • 11 years ago
    9. 1:02:15
      Lambda Calculus - Fundamentals of Lambda Calculus & Functional Programming in JavaScriptFullstack Academy228K views • 9 years ago
    10. 1:12:56
      Lecture 1A | MIT 6.001 Structure and Interpretation, 1986MIT OpenCourseWare995K views • 17 years ago
    11. 1:04:16
      Simon Peyton-Jones: Escape from the ivory tower: the Haskell journeyChurchill College, University of Cambridge170K views • 9 years ago
    12. 1:05:51
      The Functional Programmer's Toolkit - Scott WlaschinNDC Conferences79K views • 7 years ago
    13. 1:30:45
      The Simple Essence of Automatic Differentiation - Conal ElliottMicrosoft Research17K views • 8 years ago
    14. 53:22
      Ruby Conf 12 - Y Not- Adventures in Functional Programming by Jim WeirichConfreaks66K views • 13 years ago
    15. 12:56
      Stephen Wolfram's Introduction to the Wolfram LanguageWolfram924K views • 12 years ago
    16. 1:00:34
      1. Introduction, Finite Automata, Regular ExpressionsMIT OpenCourseWare628K views • 5 years ago
    17. 48:55
      Pythagoras' theorem (a) | Math History | NJ WildbergerInsights into Mathematics518K views • 15 years ago
    18. 1:07:22
      Invited Talk - Guy SteeleClojureTV39K views • 9 years ago
    19. 17:05
      The essence of calculus3Blue1Brown12M views • 9 years ago
    20. 1:54:46
      Lenses, Folds, and TraversalsEdward Kmett54K views • 13 years ago

    19 comments from Hacker News

    1. @defaultcompanyOct 2019· in “On the Weaknesses of the Mathematical Mind”

      This reminds me of a great talk by Bartosz Milewski [1] about the motivation and philosophy behind category theory. He makes the observation that our "monkey brains" are not good at dealing with complexity at all and we only really have one good strategy for dealing with it, that being to chop up complex problems into smaller, simpler problems which we can solve in isolation and then combine the results back together to approximate a solution to the larger problem. His point is that we do this everywhere and therefore it's no wonder that category theory is able to describe so many disparate areas of mathematics - because it's really describing just this mechanism, not some deep truth about the universe itself. Like - what if we as humans are so "register bound" that we can't solve any problems which can't be chopped up and put back together like this - such as those in the social sciences. His presentation style is wonderful - i recommend the whole talk but this part starts at 37:20. [1]: this video

      Strongly recommendsView on HN
    2. @phekundeMay 2020· in “Ask HN: How to be fluent in functional language speak?”

      If you are coming from imperative land (more specifically C++) then nothing beats articles and videos by Dr. Bartosz Milewski: [LINK] this video [LINK] [LINK]

      Strongly recommendsView on HN
    3. @vishnuguptaMay 2021· in ““Computer science is not about computers””

      I suggest a combination of theory (videos/books/papers) and practice. For practice; I highly recommend learning Haskell. If you are new to functional programming then learning Haskell is challenging and frustrating but as with any new topic the key is to not give up but keep probing. A good recent development is lot of mainstream languages are beginning to include functional paradigms such as lambda, closures etc., For example Java introduced lambda expressions, Javascript has had them for a while now. But from a first-principles stand point Haskell is as good as it gets so please do learn and code in Haskell if not at work then at least side projects. For theory I've found following material super useful. 0. This[0] is an incredibly awesome lecture where Phil Wadler takes us on a whirlwind tour of computer science. He talks us through different foundational structures on which almost everything (hardware and software) about computer science is built. I watch this lecture once every few months :-). It helps you build up context and ground various topics. 1. The one and only SICP. Book[1] and lectures[2]. 2. Automata theory[3]. This isn't an easy course but gets to the heart of the matter i.e., the meaning of "function" and what how can it be mechanically "computed". 3. Category Theory is where lot of active research is happening in CS theory. This is a very good lecture series[4]. The pace may seem a bit meandering but don't be put off. Bartosz is a gifted teacher and works i

      RecommendsView on HN
    4. @philzookJan 2019· in “Ask HN: How to self-study mathematics from the undergrad through graduate level?”

      John Baez (physicist / category theorist / smort dude) has a list of books to learn math and physics. Is an interesting source to crib from. [LINK] Gerhard t'Hooft has a page on how to become of a good physicist. [LINK] Not math though. I'm not necessarily suggesting that a mountain of books is the best way to go about it. I think I respond best to video lectures. I'm not sure where you're starting from or how applied/pure you want. Here's a quick mind dump some of my favorites and some that I haven't watched. Roughly in order of how much I liked them. Gilbert Strang's Computational Methods for engineers was life changing for me. It is a two part MIT opencourse. [LINK] A Stanford course on the Fourier transform [LINK] Bartosz Milewski's Category theory for programmer's this video Stephen Boyd's courses are online. [LINK] Linear Systems, convex optimization. Useful stuff. Francis Su's Real Analysis is very good [LINK] Indian universities have an astounding collection of videos [LINK] I have a tough time with the accents, which is a bummer. UCCS MathOnline has quite a haul [LINK] I've been enjoying this Visual Group Theory course lately [LINK] Math Doctor Bob [LINK] Wildberger has some interesting takes on elementary and non elementary topics [LINK] [LINK] Perimeter scholars lectures. Physics not math. Good stuff. Federico Ardila has a number of combinatorics courses. [LINK] Nonlinear algebra course [LINK] Also of course there is Coursera and edX stuff. Godspeed.

      RecommendsView on HN
    5. @yanowitzFeb 2018· in “Monadic I/O and Unix shell programming (2001)”

      This is a fun read (fair warning: you should have some understanding of monoids and monads before reading) and further validates my hypothesis that understanding category theory would make me a more effective engineer. If you've had the joy of constructing useful shell pipelines, and part of it is in the ease of knowing how it will behave. this is a nice formal statement that the underlying reasons WHY it just “feels right” are because of category theory--which means if I can just learn category theory, I’ll have a new tool for approaching and factoring problems that will be, technically speaking, hella useful. I suppose I should start (re)working my way through this video

      RecommendsView on HN