Think Linear Algebra (2023)

(allendowney.github.io)

214 points | by tamnd 1 day ago

12 comments

  • staplung 23 hours ago
    Allen Downey (author of the above) has a number of books on computer science-y things. You can buy hardcopies but I think all of them are also just freely available.

    Here's a few:

    Think Complexity

    https://github.com/AllenDowney/ThinkComplexity2

    Think DSP

    https://github.com/AllenDowney/ThinkDSP

    Think Stats

    https://github.com/AllenDowney/ThinkStats/

    Think Bayes

    https://github.com/AllenDowney/ThinkBayes2/

    • neves 19 hours ago
      BTW, if Allen Downey is reads this, I just want to send some love. I saw the beginning of the Internet. Everybody was full of dreams of the free flow of information and shareable knowledge, which greatest representation was executable code. Now, when we are surrounded by walled gardens and evil billionaires, Allen is always sharing his knowledge for all the world. Thank you.
      • nosioptar 19 hours ago
        Seconded, not only is Downey quite generous, his books are every bit as good, if not better, than expensive counterparts. Think Stats bailed my ass out of failing a stats class because it was so much clearer than the assigned book.
    • guiambros 14 hours ago
      Also:

      - Think Python

      - Think Data Structures

      - Think Java

      - Think Perl6 (!)

      - Modeling and Simulation in Python

      - Probably Overthinking It

      And more [1]. He's a prolific writer, and very generous for offering many of them for free. I read several of them online or through O'Reilly, and bought printed copies just to appreciate his work. Really enjoyed Think DSP, Think Complexity, Think Bayes, etc.

      [1] https://www.amazon.com/stores/Allen-Downey/author/B001O8NBPS

    • shibaprasadb 12 hours ago
      I love his blog too! Probably overthinking it.
    • fn-mote 23 hours ago
      You missed How to Think Like a Computer Scientist.

      Many places on the web. Runestone is probably the most useful like but I’ll leave my favorite classic one below.

      http://www.openbookproject.net/thinkcs/python/english3e/

  • s-zeng 1 day ago
    Matrix multiplication introduced before vector addition... the "Linear Algebra Done Right" in me is screaming inside.

    That being said, it is definitely cool to have a Jupyter-notebook based set of examples of practical linear algebra

    • rahimnathwani 14 hours ago
      This is a deliberate pedagogical choice, and one which will familiar to those who did one of Jeremy Howard's deep learning courses.

        One of the challenges of learning Linear Algebra is where to start. Most textbooks start with vector arithmetic, which make senses if you are working with paper and pencil, but they take a long time to get to something useful.
        
        With a computational approach, we have the option to proceed top-down -- that is, we can start with libraries that implement the core algorithms of linear algebra, and wait until later to see how they work. With this approach we can can get to the good stuff faster.
    • krackers 11 hours ago
      Vector addition is just matrix multiplication in a homogeneous coordinate system, what's the problem?
      • Pay08 10 hours ago
        "The Fibonacci sequence is just addition of specific numbers, what's the problem?"
    • bsoles 1 day ago
      And eigenvectors in the first lesson!
      • finghin 1 day ago
        I think at the beginning of learning LA I would have benefited from a more broad introduction to the topic by explaining that it is the algebra of transformations, generally linear transformations, and also the art of quantifying those transformations in meaningful ways.

        I would have benefited from some more handwaving in this regard (matrix multiplication, eigenvectors and eigenvalues) and less on the mechanics of the operations, before starting on the basic technicalities. But a “lesson” on these topics on day 0 is too soon

    • victor106 18 hours ago
      What would you suggest as a complimentary resource to this?
      • isomorphic 10 hours ago
        I think GP is both referring to and suggesting:

        https://linear.axler.net/

        • srean 7 hours ago
          This is a great book but and as the author himself notes, it's not an ideal first linear algebra book.

          Strang can be great as a first book. He focuses more on what rather than why, so if one wants to delve deeper, it needs to be supplemented by a few other books.

          • mamonster 6 hours ago
            I still don't get why Axler decided to discuss the Jordan normal form after already doing the spectral theorem, it's a bit like presenting Riemannian integration after Lebesgue.

            For the long term his emphasis on operators is probably better as naturally transitions into functional analysis, but you can get a lot of stuff done without ever touching them.

  • kevinwang 1 hour ago
    Where's chapter 3?
  • mangomountain 18 hours ago
    I saw a linear algebra “textbook” on Twitter in maybe 2022? It was black background and bright text with a good amount of graphs like someone’s incredibly long blog post. I’ve tried a few times to find it since but haven’t had any luck.

    This looks a bit more involved but lovely I think I’ll try it. I read Think Bayes and thought it was great.

    • rahimnathwani 14 hours ago
      'Coding the matrix' has a black cover with white/bright text.
  • emang23 22 hours ago
    Beyond regression, I’d like to see chapters on statistical topics like PCA, CCA. This textbook format which interleaves code and prose is the perfect way to show how scikitlearn’s decomposition.cca and decomposition.pca are implemented, e.g. the SVD matrix decomposition, etc.
  • vidro3 22 hours ago
    what's the deal with the loop example? am i supposed to understand what this represents before going through the material?
  • immanuwell 8 hours ago
    Downey's "Think X" series is consistently the on-ramp for people who learned to code before they learned the math, and honestly at this point everything is linear algebra
  • anthk 20 hours ago
  • fnord77 1 day ago
    I got my hands on a stanford Math 55 textbook and tried to do the exercises in numpy.
  • The_Blade 1 day ago
    Linear Algebra is dope, as in when we got to apply some mid-level linear to a real business problem and it worked i got high
    • deadbishop 21 hours ago
      What was the problem you solved?
    • bonsai_spool 23 hours ago
      What was the business problem, broadly? How did you apply linear algebra to it?