HACKER Q&A
📣 hnmathsq

Learning Maths from the Ground Up


Hello HN,

I'm looking for advice on how to rebuild my understanding of mathematics.

During my end of school exams, I barely scraped through my maths GCSEs (the UK's standard exams at age 16). Both a lack of discipline (I was more interested in CS) and subpar education (my teacher told me my ambition to become a programmer was a "pipedream") left me with limited confidence and knowledge of algebra, statistics, geometry, etc, and extremely shaky foundations.

10+ years later I've finally decided the time is right to go back to the basics and learn what I didn't from the ground up. However I don't know where to look for resources or even where to start. - Ideally I'd love a *roadmap* for mathematics that I can follow from the extreme basics to more advanced concepts in algebra, statistics, geometry, etc. - Otherwise, recommendations for textbooks, courses, or interactive tools (especially anything oriented towards technical minds). - Anyone who had a similar journey; it would be great to hear from you, and how you overcame this particularly intimidating hurdle.

-- Some context about me --

I'm a software engineer with ~10 YOE, the latter at big tech. Primarily I'm focused on improving client side architecture and rolling out these changes, usually behind flags. I increasingly find my weak maths/statistics skills limit me when it comes to interpreting any metrics meaningfully. When talking to colleagues about these metrics I'm nearly always out of my depths and spend hours struggling to understand what they gleaned in minutes.

From a CS perspective I have strong foundations with good knowledge of algorithms and data structures; I sit on hiring committees, regularly perform technical interviews, and teach others about these concepts (from teenagers to other SWEs). When I did receive 1:1 education, I understood the concepts, what held me back wasn't intelligence but a lack of discipline and 16 year old preferring anything but maths :).

I'd value any advice anyone may have.


  👤 landosaari Accepted Answer ✓
Susan Rigetti has a nice overview [0]

In this Susan recommends https://www.khanacademy.org/, which is good for most things learned in primary or secondary school.

There is an open source curriculum equivalent for an undergrad compromised of MOOC and similar resources [1]

Similar to the above is a markdown [2], with a scope directed towards people coming from a CS background.

After this perhaps focus more on statistics & data science for metric interpretation. R for Data Science [3] is an option.

[0] https://www.susanrigetti.com/math

[1] https://github.com/ossu/math

[2] https://github.com/NavigoLearn/RoadmapsMarkdown/blob/master/... for computer science/full-roadmap.md

[3] https://r4ds.hadley.nz/


👤 jjgreen
I did something similar, taking up maths again 10 years after leaving school. I found it very helpful to locate the original textbooks from school and work through them (especially the exercises) from start to finish. May be worth considering doing that?

Good luck!


👤 sk11001
> I increasingly find my weak maths/statistics skills limit me when it comes to interpreting any metrics meaningfully. When talking to colleagues about these metrics I'm nearly always out of my depths and spend hours struggling to understand what they gleaned in minutes.

The way to address this is to learn more about these metrics specifically - what's measured, how it's aggregated, what the formulas are and why.

You don't need to go back to pre-calculus and learn from the ground up to do this (but if you do Khan Academy is a good place to start).


👤 nborwankar
Programmers Introduction to Mathematics by Jeremy Kun should get you started. Look on Amazon. Then you can decide if you want to do a formal course and which one. I would also strongly suggest you buy yourself a personal copy of Mathematica which will give you a very powerful portal into Mathematics via a notebook interface and an elegant functional programming language. The documentation is probably the best I have ever seen for a software product.

Book overview for Jeremy Kun book from Amazon A Programmer's Introduction to Mathematics uses your familiarity with ideas from programming and software to teach mathematics. You'll learn about the central objects and theorems of mathematics, including graphs, calculus, linear algebra, eigenvalues, optimization, and more. You'll also be immersed in the often unspoken cultural attitudes of mathematics, learning both how to read and write proofs while understanding why mathematics is the way it is. Between each technical chapter is an essay describing a different aspect of mathematical culture, and discussions of the insights and meta-insights that constitute mathematical intuition. As you learn, we'll use new mathematical ideas to create wondrous programs, from cryptographic schemes to neural networks to hyperbolic tessellations. Each chapter also contains a set of exercises that have you actively explore mathematical topics on your own. In short, this book will teach you to engage with mathematics. A Programmer's Introduction to Mathematics is written by Jeremy Kun, who has been writing about math and programming for 10 years on his blog "Math Intersect Programming." As of 2020, he works in datacenter optimization at Google.The second edition includes revisions to most chapters, some reorganized content and rewritten proofs, and the addition of three appendices.


👤 theGnuMe
Your math skills are probably better than you think and your memory is clouded by emotion that recalls the stress of the time. So you remember that you were less competent at it then you actually were.

This is very common but I've forgotten the psychological term for it. Think of it this way, you really showed that teacher that he/she was wrong. You are a success and a software engineer. Adults who say the things said to you are typically bitter at their own life outcome. Aka it is more about them then it is about you.

As to your performance at age 16, remember also that your brain was still developing. The prefrontal cortex doesn't fully develop until your 26. And I suspect it still develops after that. We know that alcoholics stunt their developmental age essentially at the age they start drinking because they quickly mature after getting sober. Stress has a similar effect.

Anyway if GCSE maths is really what you want to learn again, then you can find the topics covered online and study those. There are plenty of resources from textbooks to youtube etc... it is a golden age to self study. If you can't self study you can probably find a tutor. The big thing is to learn how to learn and to do that you learn how to teach what you're learning.

For "work" though I would say the best class you can take is a class in statistics. And if you find the basic class in statistics too hard then go back a bit to a class before that (probably calculus). But I would just pick up the calculus you need for the stats. Really all you need is an understanding of a derivative and an integral. Or maybe start with the undergrad business school version of statistics or statistics for engineers etc... If you learn statistics you will be in the top 1% of software engineers.

After calculus and stats if you are interested in deep learning you might want to take linear algebra for engineers. Understanding what a matrix is and some basic operations on it can be useful. But that opens up a big can of works though and it is quite a competitive space now because there are many engineers who work as programmers and learnt all of this stuff in school now have an outlet! It is also an exciting time.

One last thing would be to ask your colleagues for help understanding the metrics. Pick someone who is friendly and nice and they may be delighted to explain it to you.


👤 usgroup
I've spent a lot of time in academia up to PhD level. Personally I'd suggest you start by doing the Maths A-Levels. There is lots of solid material / books, there a lots of tutors if you need them, and you have exams to prove you know the syllabus. If I remember correctly GCSEs are not a prerequisite. If they are -- or your Maths is very basic -- then start with Maths GCSEs.

It is important not to bullshit yourself when learning Maths. If you don't do exams, there are so many ways to fool yourself into thinking you know what you're talking about.

Not to pick a magic number, but if you're a normal person (like me), expect to spend 5000-10000 hours before your Maths is worth a damn. A-levels are just the start.


👤 kingofalltrades
First step into math is to learn how math people think. Here below is an intro textbook meant to do just that[0]. It's a high quality, free introduction. You don't need to know much past 6th/7th grade level math which amounts to knowing how to do arithmetic with fractions and decimals and maybe an ability to in/equalities in one variable. I will also add a couple of google links that might be more relevant to what you might be trying to do[1][2].

[0] Book of Proof by Richard Hammack https://www.people.vcu.edu/~rhammack/BookOfProof/

[1] Linear Algebra: Step by Step by Kuldeep Singh https://www.google.com/books/edition/Linear_Algebra/BJNoAgAA...

[2] Number Theory: Step by Step by Kuldeep Singh https://www.google.com/books/edition/Number_Theory/YZr9DwAAQ...

[3] Undergraduate Analysis: A Working Textbook by Aisling McCluskey and Brian McMaster

https://books.google.com/books?id=7U9HtAEACAAJ&printsec=copy...

There's even more relevant book for you[4]

[4] Foundations of Applied Mathematics by Jeffrey Humpherys, Tyler J. Jarvis, Emily J. Evans

https://books.google.com/books?id=CEc3DwAAQBAJ&pg=PR3&source...


👤 lupyro
Paul's Online Math notes was a godsend for me in college and I wish I knew about it in high school: https://tutorial.math.lamar.edu/

👤 pgustafs
There are three broad subareas of mathematics: geometry, algebra, and analysis. Geometry studies space, algebra studies time, and analysis studies infinity. They are not independent -- most professional mathematicians use some mixture of the three, and virtually every mathematician understands the basics of all three.

The most important object in modern geometry is the manifold. This is a space that looks locally like n-dimensional Euclidean space -- 1-dimensional manifolds are curves, 2-dimensional manifolds are surfaces, and higher dimensional manifolds are simply called n-manifolds. All of physics takes place on manifolds. Differential equations correspond to vector fields on manifolds. The manifold hypothesis says that much of the high-dimensional data we see actually lives on much lower-dimensional manifolds (partially explaining the unreasonable effectiveness of deep learning on very high-dimensional datasets).

The most important object in algebra is the group. The collection of symmetries of any object (e.g. a Rubick's cube, a piece of paper, or three-dimensional space) forms a group under composition. A group that is also a manifold is called a Lie group. These are everywhere -- n-dimensional rotations form groups, fundamental particles correspond to representations of Lie groups, invertible matrices form a group. Spherical harmonics and Fourier series are both naturally viewed in terms of representations of Lie groups.

The most important object in analysis is the limit. Limits first appear in the construction of the real line by adjoining limits of Cauchy sequences to the rational numbers. Using the real line, one can measure volumes, probabilities, and distances in geometric spaces such as manifolds, but also in spaces of functions, sequences, and more abstract objects. The proof of the fundamental theorem of calculus (that derivatives and integrals are roughly inverse operations) requires rigorous analysis of the definitions of derivative and integral as limits.

To learn math, you should begin by understanding what a proof is. All of mathematics is based on proving theorems. A mathematical proof is a sequence of statements that explains the logical steps required to use the assumptions of the theorem to verify the result. Just as a computer program cannot "almost output" the correct answer, there is no such thing as an "almost correct" proof. A proof either describes a correct chain of logic to reach the conclusion, or it does not. The reason math is based on proofs is because more advanced math and science builds upon more basic math. An error in a mathematical theorem or an imprecise definition will lead to bigger problems down the line, so every step must be carefully validated. For an individual student as well, only through proving theorems can one deeply understand a mathematical subject, and a solid understanding of basic subjects is required to understand more advanced topics.

Fortunately, you can learn to prove theorems at the same time as learning the foundations of math. The first books you should work through are "Principles of Mathematical Analysis" by Walter Rudin, and "Linear Algebra" by Georgi Shilov. This will be hard, not for an arbitrary reason, but because assimilating new math into your brain is intrinsically difficult, especially at the beginning. If possible, try to find a teacher.


👤 bpmedley
I’m working through https://calcworkshop.com

👤 _ktnd
My unworthy opinion:

Herbert Gross' “Calculus Revisited” three-part series.

https://ocw.mit.edu/courses/res-18-006-calculus-revisited-si...

https://ocw.mit.edu/courses/res-18-007-calculus-revisited-mu...

https://mitocw.ups.edu.ec/resources/res-18-008-calculus-revi...

The above is more or less “engineering math”.

The below is “normal college” math:

Edward Frenkel's Multivariable Calculus lectures:

https://www.youtube.com/playlist?list=PLaLOVNqqD-2GcoO8CLvCb...

Dr. Valerie Hower's Linear Algebra lectures:

https://youtube.com/playlist?list=PLpcwHaLYiaEXW5fLNOlItPH4A...

Interactive Linear Algebra (online “college level” textbook):

https://textbooks.math.gatech.edu/ila/

Tutorial-like Linear Algebra (interactive online textbook):

https://immersivemath.com/ila/index.html

Sheldon Axler's Linear Algebra Done Right book:

https://linear.axler.net/

Sergei Treil's Linear Algebra Done Wrong book:

https://www.math.brown.edu/streil/papers/LADW/LADW-2014-09.p...

Linear algebra and vector calculus revamped:

— Linear and Geometric Algebra by Alan Macdonald: http://www.faculty.luther.edu/~macdonal/laga/index.html

— Vector and Geometric Calculus: http://www.faculty.luther.edu/~macdonal/vagc/index.html


👤 brudgers
A degree is the traditional way. Good luck.