Hacker News new | past | comments | ask | show | jobs | submit login
Ask HN: How to self-learn math?
618 points by sidyapa on March 11, 2018 | hide | past | favorite | 208 comments
I have a new found appreciation and fascination for maths and would love to study maths from the bottoms ups. I'd love to know the paths I should take and books I should read.

EDIT1: If the question is very broad, it'd be much helpful to know how did you learn math? What courses you took, books you read.

EDIT2: My current proficiency level is pre-high school mathematics as I didn't pay much attention in high school, learning effectively nothing.

Ok, I'll take a crack at this:

Up to high-school level:

1. Precalculus: Precalculus: A Prelude to Calculus - Axler

2. Calculus: The Calculus Tutoring Book - Ash.


3. Preparation for Collegel-level maths:

3a. General prep for high level maths: How to Study as a Mathematics Major - Alcock

3b. Proof writing: How to Prove It - A Structured Approach - Velleman OR Book of Proof (2nd ed) - Hammack (it's free!)

4. Mathematical Analysis:

4a. Good prep for Analysis: How to Think About Analysis - Alcock

4b. Understanding Analysis (2nd ed) - Abbott OR Yet Another Introduction to Analysis - Bryant (has full solutions) OR The How and Why of One Variable Calculus - Sasane OR Mathematical Analysis - A Straightforward Approach (2nd ed) - Binmore (has full solutions)

5. Discrete Mathematics (a combination of set theory, combinatorics, a bit of discrete probability and graph theory): Discrete Mathematics - Chetwynd, Diggle

6. Linear Algebra: Linear Algebra - A Modern Introduction (4th ed) - Poole

7. Probability: Introduction to Probability - Blitzstein, Hwang + online course https://projects.iq.harvard.edu/stat110

8. Statistics: (for Bayesian) Statistical Rethinking - A Bayesian Course with Examples in R and Stan - McElreath + online course https://www.youtube.com/playlist?list=PLDcUM9US4XdM9_N6XUUFr...

Usually you'll be doing courses on #4, #5, and #6 simultaneously.

Two quick things I can recommend without hesitation, which focus on an intuitive understanding of concepts:

1. Essence of Linear Algebra mini-series - https://m.youtube.com/watch?v=kjBOesZCoqc

2. Better Explained website - https://betterexplained.com

YouTube has a lot of high quality math content, it definitely helped through university. It's also worth mentioning the Stanford U courses.

The main takeaway I have for you is learn the concepts intuitively first, then spend the time to play around with them on paper until they sink in. Some things will be easy, some will be frustrating, much like programming you will walk away from a frustrating problem and have an epiphany while doing something completely different.

All the best and have fun!

My two cents are whenever something seems hard/impossible/infuriating/etc, take a break then seek dofferent sources on the material. A lot of times I have been hung up on something only to find that things make much more sense when approaching it from a different viewpoint. :)

No matter what I'm learning, I always refer to at least 3 different sources for any concept.

Absolutely! Not having to hit your head against a wall helps prevent burnout as well as just plain being more effective

That’s how I got to grips with trigonometry... I tried to understand why sine, cosine, tangent, cotangent, secant and close can’t we’re named like they were... then I found a bunch of stuff on the unit circle. Never looked back!

To the above I would add:

How to Think Like a Mathematician - Kevin Houston (an excellent book to read before starting)

How to Read and Do Proofs - Solow

The Keys to Advanced Mathematics: Recurrent Themes in Abstract Reasoning - Solow

Calculus - Spivak (Actually a Real Analysis book, not a Calculus book, see e.g. https://math.stackexchange.com/questions/1811325/spivaks-cal... )

Linear Algebra Done Right - Axler (Intended for a second course in Linear Algebra, but I found it helpful during my first course.)

And for something from left-field:

Visual Group Theory - Carter http://web.bentley.edu/empl/c/ncarter/vgt/

There are many many many books on every mathematics topic under the sun. Finding books that speak to you is important. I have had mixed success buying books upon other people's recommendation. You would be best to get access to a library.

There's also How To Solve It by Polya. Small, accessible, casually written.

That Polya book is very good. [1] [2]

I had read it many years ago. It may be influential beyond what people know. There is a version inspired by it, for programming, called How to Solve it by Computer [3], by R. G. Dromey, who, IIRC, was/is a professor at an Australian university (Wollongong?).

I had the Dromey book. It is not exactly parallel to the Polya book, because it shows the details of how to come up with a solution, either in pseudocode or in a Pascal-like language, while the Polya book, IIRC, is more about principles and techniques for general problem-solving.

[1] https://press.princeton.edu/titles/669.html

[2] https://en.wikipedia.org/wiki/How_to_Solve_It

[3] https://en.wikipedia.org/wiki/How_to_Solve_it_by_Computer

I'm pasting below the first few paragraphs from the URL [1] above:

[ A perennial bestseller by eminent mathematician G. Polya, How to Solve It will show anyone in any field how to think straight. In lucid and appealing prose, Polya reveals how the mathematical method of demonstrating a proof or finding an unknown can be of help in attacking any problem that can be "reasoned" out—from building a bridge to winning a game of anagrams. Generations of readers have relished Polya's deft—indeed, brilliant—instructions on stripping away irrelevancies and going straight to the heart of the problem.

First published in 1945.

George Polya (1887–1985) was one of the most influential mathematicians of the twentieth century. His basic research contributions span complex analysis, mathematical physics, probability theory, geometry, and combinatorics. He was a teacher par excellence who maintained a strong interest in pedagogical matters throughout his long career. Even after his retirement from Stanford University in 1953, he continued to lead an active mathematical life. He taught his final course, on combinatorics, at the age of ninety. John H. Conway is professor emeritus of mathematics at Princeton University. He was awarded the London Mathematical Society's Polya Prize in 1987. Like Polya, he is interested in many branches of mathematics, and in particular, has invented a successor to Polya's notation for crystallographic groups. ]

The John Conway mentioned is the one who invented the Game of Life.



> Statistics: (for Bayesian) Statistical Rethinking - A Bayesian Course with Examples in R and Stan - McElreath + online course

Because it's a relative newcomer to the statistics scene, McElreath's book isn't as well known as the classic textbooks that many of us used back in the day. But it's steadily becoming one of the mainstays of graduate level statistics programs. A must-read.

for linear algebra, may i add http://immersivemath.com/ila/index.html

Hi, OP here, thank you so much for the list and effort.

6,7,8 can be done alongside 2 there's no reason to leave those 4 foundation topics to late IMHO.

I find there are things I’m missing. Does the precalculus stuff cover geometry and polynomials?

Precalc basically covers algebra and trigonometry. From my experience as a CompSci major, euclidean geometry is not really necessary.

True, but CompSci isn’t the motivation of this poster.

This is a great list. Thank you.

>My current proficiency level is pre-high school mathematics as I didn't pay much attention in high school, learning effectively nothing.

Advice from someone who was in the same position: Take a class. Multiple classes. Go sign up for a Mathematics AS at your nearest community college right now. You will never know enough of what you don't know to learn this stuff on your own. A lot of it is just doing the painful repetition work of practicing problems over and over again, which is hard to force yourself into without a "coach" pushing you. Having a cohort of students to work through problems with is also priceless. And the drive of having accountable grading will keep you at it regularly.

It can be a bit awkward at first feeling stupid not knowing what a logarithm is in a room full of 18 year olds. But it's the only way to really get there. I went from high school dropout who didn't know how to add fractions to passing calculus in 18 months.

Depends what your goal is. I cant imagine anything worse than High School style teaching of mathematics. Its awful. That repetitive calculation, entirely unnecessary for almost any real world situation. Almost every time you are doing repetitive calculation what you should have been taught was a second or third conceptualisation of whatever maths you are looking at. So linear algebra I was only ever taught numerically in computer science. WHICH IS CRIMINAL. It has such an obvious and more easily understood geometric interpretation. The same is true of calculus, learn it in physics. Seriously. Do high school physics /and/ maths if you wish to understand calculus. Otherwise you've got someone who probably did a pure maths degree teaching you something that was created by physicists for a reason, that reason has a physical and real world interpretation not to mention a geometric one. Another good example is in chemistry you might learn statistical mechanics, in computer science or electronic engineering you might learn information theory. If those two classes were taught back to back for both groups of people they would actually deeply understand the mathematics behind it. Personally I've always found learning maths in a pure way incredibly challenging. As an adult I think its a lot easier to learn maths through something that has physical or meaningful interpretation. You can then draw on your actual life experience to understand the maths.

I disagree about the repetitive calculation being "entirely unnecessary".

Background: I (probably like many here) excelled at high school and undergraduate mathematics. I have a graduate degree in a heavily mathematics-focused branch of engineering (digital signal processing) and much of my work involves applying that math at a conceptual level.

I'm currently tutoring an adult I'm close to who is approximately at GP's starting level and has a strong anxiety reaction to math. I'm finding that the repetitive calculation aspect is important to being able to developing an intuition for the concepts.

The process that's working well for us so far involves alternating between practical word problems (to establish a motivation for learning the material), theoretical/background explanations (to hit the understanding at a high level) and repeated simple problems (to practice the mechanics).

I'm finding that, in terms of process, the repeated problem-solving is critical for two reasons. 1) It helps to build a sort of mental "muscle memory", and 2) it helps with developing intuition, since your mind eventually gets bored with the mechanics and starts to notice patterns.

Remember that mathematics at that level is all about building blocks. Every concept/problem-solving practice you learn is part of a tower of strategies; if earlier mechanisms aren't almost mindless, it's MUCH harder to build on top of that knowledge.

One of the earliest memories I have of really enjoying math was a unit on modular arithmatic from my 6th grade math class. The teacher introduced the concept with a hands of a clock metaphor, gave us a whole bunch of drill problems, and told us to watch for patterns. We had an easel in the class room where he collected the insights students had gained. Discovering the relationship with remainders by ourselves was incredibly cool.

I had a similar experience when I learned about factoring (not sure what age). I got a little obsessed with finding prime numbers by hand, and eventually figured out that I only had to search for factors up to the square root. I distinctly remember that as the first time I realized how powerful a simple mathematical insight can be to speeding up a process.

Now, of course, I use mathematical insight to speed up processes occupationally; I guess that experience stuck with me.

> 1) It helps to build a sort of mental "muscle memory", and 2) it helps with developing intuition, since your mind eventually gets bored with the mechanics and starts to notice patterns.

muscle memory is super important in math.

the last thing you want is to be struggling with foundation when you're trying to progress through concepts. everything needs to be available to you at the snap of your fingers.

trying to progress math knowledge without the basics is doable, but it's a ton of mental overhead and frustration that you can cut down if you just get the practice out of the way.

plus it's super cool if you're one of those guys who have the ability to quickly apply 10-20 different models on a real world problem. that's what we think of when we think "good at math".

My high school calculus and physics teachers synchronized their classes, so shortly after we learned something in calculus, we would use it in physics. Since then I’ve learned this is not as common as it should be!

Perhaps it works especially well in that case because calculus was literally invented to do the kind of physics you learn in high school, so it’s a very natural combination. Linear algebra (e.g.) is so general-purpose that the overlap with another course might not be so continuous.

My high school only taught physics without calculus. In 12th grade when I took calculus separately I was sort of annoyed to realize how much easier physics would have been using calculus.

This was my experience too.

I remember doing integrals in high school, but didn't take calculus-based physics until my second year of college.

Jesus christ, it explained a lot of things.

Thank you for saying this. I've been learning math from Khan Academy for the last 200 days. I've reached calculus and I feel more and more the need for examples of how to apply the math that I'm learning to truly understand what it's useful for.

I was actually thinking of learning how to build video games (or at least parts of it) to properly understand linear algebra. Someone else also suggested physics for calculus.

Fwiw, I found electromag (typically undergrad physics 2) the best application of calculus.

Classical physics of motion (physics 1) used some superficial calculus, but none of the use cases that would let you spread your mathematical wings cropped up in the material we studied.

> I've been learning math from Khan Academy for the last 200 days. I've reached calculus and I feel more and more the need for examples of how to apply the math that I'm learning to truly understand what it's useful for.

Just so that you know this was my impression at a university as well. In fact, calculus courses are translated into "basic mathematics." I think this underlines how much these courses are about learning the tooling for practical applications taught in later classes.

Hmm. Which kinds of math? Might be useful to begin a compendium of examples, a problem-to-solution (and vice-versa) phrasebook

Having another interest to tie it to (especially if it's something you're more comfortable with) is huge. I have a CS degree, and for me, what bridged the gap into being comfy with "pure" mathematics (and appreciating it outside of any specific application), was my theory of computation class.

It's always a good idea to anchor new knowledge to pre-existing knowledge. (Perhaps this could be called coral reef learning?)

Adult brains, with less plasticity, are able to synthesise new concepts that build on what they already know.

I second this. Having studied to the postgrad level, I've come to appreciate just how broad the subject is. Looking back, I feel it would have been near impossible for me (personally) to get here without the help of lecturers and tutors - often prerequisite knowledge creeps in unexpectedly, and you come to rely on them to guide you through this.

I agree also that regular grading and a lesson schedule help to both push you to learn, and for you to assess your progress in an unbiassed fashion.

Personally, though, I am biassed - and am thrilled when people say they want to learn more maths. I love maths, and find it very rewarding. The best of luck with your journey!

As someone that has loosely tried to learn Mathematics over the past decade, I second this.

Self-learning mathematics is really difficult, especially when you don't really know where you stand any more in terms of pre-requisite education.

It's easy to say you're going to dedicate x of hours of time to study Mathematics, but it's easy to drop off, ditch it in favour of the next thing to learn, and essentially forget what you tried to learn. Taking a class will at least physically allocate that time to maths.

Do you also think that one can only learn Computer Science effectively by taking classes?

Yes, for many people they will not become as strong without classes even in CS.

By starting code so young, I had years of experience before college, serious enough to work part time developing on commercial products.

I was cocky, thought CS 101 was a joke, and it mostly was. But it didn’t take long before vast areas of theory and practice I wasn’t even aware of became part of the classes.

At the end of an undergrad degree you don’t master all these new concepts, but you do become aware of them, you practice them enough to know where to dig later in your career.

I just see it as very unlikely that most jobs will make it easy to establish this same broad foundation, and it’s a powerful thing.

Surely for a few people it may not make a difference, but even for geniuses who turn out to have wildly successful careers, who’s to say it wouldn’t have enabled more insights or productivity?

Can I ask where you are now in life? Im a high school drop out as well and have found it very tough to get back into things, crippling anxiety only driven further by lack of participation :/

Recommend Guesstimation by Weinstein and Adams as the first topic to master. Getting comfortable with numbers and their sizes will make everything else easier. Also, getting in the habit of doing rough explorations is an essential skill in exploring all later material.

Technical Mathematics with Calculus by Calter is a single volume that covers stuff up through calculus in a, well, technical manner.

For a more understanding way, try Elements of Mathematics by Stillwell.

If you get past Calculus, I recommend Vector Calculus, Linear Algebra, and Differential Forms by Hubbard. It gives an amazingly clear viewpoint on the higher level analysis and algebra topics, both numerically and abstractly.

For statistics, you might try something like Think Stats by Downey which emphasizes explorations with Python, real data, and Bayesian statistics.

As a faithful companion in your journey, use something like GeoGebra or Desmos to really explore the visual side of all the topics. Computers can do the tedious computations. Your task is to learn why we are doing this and how it is being done. When you get to calculus, learn what Newton's method is doing and appreciate how amazing it is.

I have just the book for you: the essentials of high school math for adults: http://www.lulu.com/shop/ivan-savov/no-bullshit-guide-to-mat...

If you like this one, you can followup with the MATH&PHYS book which covers mechanics (PHYS101) and calculus. And if you like that one, you can follow up with the liner algebra book.

All along the way, I recommend you try solving exercises and problems using pen and paper. Ideally you can also create custom "test questions" for yourself using SymPy https://minireference.com/static/tutorials/sympy_tutorial.pd... 1. start with a simple math question or equation related to what you're studying right now, 2. solve it by hand, 3. compare your answer with the answer obtained by SymPy.

Good luck on your journey. Math is very deep so don't be in a rush. Enjoy the views along the way!

Came here to recommend this one as well. I bought it several years ago as an adult trying to revisit math. I'm always surprised at how few people know of this gem.

Thank you for your work. Your books look great!

This looks great.

Do you have a pdf/ebook I can purchase?

I'm still working on generating the MATH eBook, but the 3-in-1 book (MATH+MECH+CALC) is available here: https://gumroad.com/l/noBSmath Chapter 1 of the 3-in-1 book is essentially the same as the No Bullshit guide to Mathematics.

You can see a preview here: https://minireference.com/static/excerpts/noBSguide_v5_previ...

what is the difference between no bs guide to mathematics and the 3-in-1 book?

The 3-in-1 book contains a high school math review, a mechanics course, and a calculus course (450pp). The No bs guide to math is just the high school math review and is much thinner 170pp. (I'm essentially cutting up the 3-in-1 book and releasing it as split books because I realize 450pp can be intimidating for some readers).

Nothing beats having a (good) teacher. Self-learning, no matter how smart you are, is pitifully slow without a teacher. Half an hour with a good teacher can save you weeks of table head-butting. (But obviously you can't rely only on the teacher.)

As for books, it's not a spectator sport: you gotta do it yourself. Read a sentence, then work it out yourself with pen & paper. You can't get it just from reading alone.

Finally: in mathematics there's many many roads to Rome! If something isn't working for you, try another way.

I disagree with the general statement that leaning maths is "pitifully slow without a teacher". So long as one has structure (e.g. some kind of syllabus) and has access to google, then learning can proceed very efficiently indeed. In addition, by being able to work through difficulties independently you can "be your own master" so to speak, earning the confidence to solve new and difficult problems without assistance.

Having said that, I have come across people who have absolutely no apitutude for maths and definitely need a teacher. In a matsh class, there's usually one one set of people who kind of just "get it" straight away, and another set who struggle despite studying hard.

As you said, there are many roads to Rome, and the best road may or may not involve a teacher depending on the individual.

> I disagree with the general statement that leaning maths is "pitifully slow without a teacher".

How do you check your work then? I remember specific experiences in college math classes where I thought I understood something, took a test, and then got something wrong. And it was because of a misunderstanding of something I thought I understood. I have those misunderstandings occasionally in math. And that can make self-teaching really difficult. At least with cs/software development you can check your understanding by writing code.

By downloading question papers that have worked solutions. If you get something wrong, check your solution against the worked solution and then error in your understanding should become apparent. This works well up to about college level, after which it's harder to find resources.

That's a good solution, but college-level mathematics was specifically where I had issues learning the material myself. I remember taking an upper-level college class for my cs degree that focused heavily on proof-based mathematics. I decided I wanted a tutor. Online tutoring for the highschool/lower level college classes was easy to find. But not for upper-level proof based math classes that were TA'd by grad students. I finally found one company that was willing to tutor me. They advertised tutors from ivy-league grad schools and started billing at over 100/hr. Fortunately I found a grad student to to tutor me at my university for a much more reasonable price. But I definitely noticed a difference in the type of tutoring offered. I'm much less confident self-teaching myself mathematics if it involves proofs, or material that would show up in grad school or an upper-level undergrad class.

I think for most people though, not having a teacher doesn't mean "pitifully slow", it means they will eventually forfeit the endeavor. The option to self-study has always been there, and now Khan Academy is here too, but I think there's a reason why we haven't seen an education revolution just yet, and I think it's because an interactive teacher who monitors your state and thinks about the road ahead is key.

There are even a lot of math teachers who feel anxiety about basic math. Why don't they simply self-study?

They feel anxiety about basic math because they've lost touch with the basics, and this is a massive problem. They could and should go back and review the basics; otherwise they will not make great teachers.

An author of a book is still a teacher... we’re just debating the personalization of the teaching at this point.

But then this recommendation becomes vacuous. No one is recommending learning math by deriving everything yourself.

Exactly. What’s really being referred to? Lower cost and more scheduling flexibility perhaps?

Maybe, but I think people do mean a literal human, and I do think books were always available, and if that alone were the key... then I hesitatingly make the simple argument that it would've already been done. One might make a similar argument about why Khan Academy isn't a blowout success in the US.

> Half an hour with a good teacher can save you weeks of table head-butting.

I spent a year and change trying to teach myself calculus from a textbook. Eventually I signed up for a class at a community college and learned more in a month than I had all year. I think this says more about my learning style than anything else, though, but my experience was shared (on other topics) with lots of other people.

I think you benefit a lot from having other people working on the same thing, and you benefit a lot from having a teacher/mentor who can interactively explain to you where you are going wrong. You can definitely find some hard-ass who taught themselves measure theory in a cave, but...

>Half an hour with a good teacher can save you weeks of table head-butting.

That says more about the poor quality (or bad fit) of the book/video/material than it says about the skill of the teacher.

I guess online courses where students can post comments and talk to each other partially address this. These comments may help point out the parts that the material failed to convey properly (and in an ideal world, such feedback would then be incorporated into the next revision of the material).

Yes, the quality of the material you use is important.

A good teacher can quickly direct you to appropriate materials for your personal needs.

A novice learner is generally unable to identify what is or isn't poor quality (hence the OP's question).

[Edited to add: This forum has recommended certain materials, but we have no idea whether they suit the OP's needs. There has not been enough two-way communication with the OP, even if the OP has made a good effort to clarify their question.]

Using a teacher to bypass this step of identifying materials is way more efficient and... saves you weeks of table head-butting.

For very specialized subjects, I would completely agree.

But when it comes to lower-level math - a group of topics that surely have been done to death countless times over, there really should be well-known books (or online courses) by now that learners don't get stuck on. If there aren't, that begs the question why.

Though now I'm getting into pointless theorizing territory - as far as practical advice goes, it's true that having regular in-person lessons can also help a lot with discipline - so that's definitely a plus compared to self-learning.

On the other hand, just like with identifying quality materials, you need to be able to identify a quality teacher.

There aren't universally well-known books or courses that suit everyone studying math at this level, and the why is because everybody has their own needs.

What you are calling "lower-level math" includes everything that you might expect people could learn in primary and secondary education, from age 2 to age 16 - that's 15 years in which everyone takes their own path and ends up at a different place. It is specialized.

If OP lives in a city, it shouldn't be hard to find a sharp college kid who will tutor.

I'm curious about the need for a teacher. Because I'm learning math by myself and I don't have a teacher. Except for math.stackexchange.com, essentially. How many hours of tutoring/hour of self-study do you recommend? What can tutors help you with that is hard or impossible to learn on your own?

An experienced teacher, in a one-on-one situation, can identify the areas you're struggling with much more quickly than you can, and can guide you on a path out that you might not be able to see.

I've found that sole self-study can make it easy to convince yourself you're more comfortable with some set of material than you are, which can make it hard to see why you're struggling with the next conceptual layer up.

> Nothing beats having a (good) teacher.

True. But good teachers can be hard to find, and a lot of things (for example, a good textbook / notes) beat a bad teacher...

I’m going to go with a few assumptions here:

a) You don’t do this full time.

b) By “bottoms up” you just mean “with firm grasp on fundamentals”, not logic/set/category/type theory approach.

c) You are skilled with programming/software in general.

In a way, you’re ahead of math peers in that you don’t need to do a lot of problems by hand, and can develop intuition much faster through many software tools available. Even charting simple tables goes a long way.

Another thing you have going for yourself is - you can basically skip high school math and jump right in for the good stuff.

I’d recommend getting great and cheap russian recap of mathematics up to 60s [1] and a modern coverage of the field in relatively light essay form [2].

Just skimming these will broaden your mathematical horizons to the point where you’re going to start recognizing more and more real-life math problems in your daily life which will, in return, incite you to dig further into aspects and resources of what is absolutely huge and beautiful landscape of mathematics.

[1] https://www.amazon.com/Mathematics-Content-Methods-Meaning-V...

[2] https://www.amazon.com/Princeton-Companion-Mathematics-Timot...

The Princeton Companion to Mathematics is a good resource consisting of a huge collection of detailed articles on many mathematical subjects by knowledgeable contributors. It requires no specialized background and is curated by Fields Medalist Tim Gowers. Whoever reads it from cover to cover is my hero, but failing that there's always an interesting article to jump to.

Don't just be a consumer but write something as soon as you're inspired. I wish there were more emphasis on writing mathematics in school prior to the graduate level. Leslie Lamport says if you're thinking but not writing you're not really thinking; you only think you're thinking. For Feynman the act of discovery wasn't complete until he had explained it to someone. There's also the rule of thumb that if you can't explain a mathematical concept to a ten year old, you don't understand it yourself.

Edit: typo

> The Princeton Companion to Mathematics is a good resource...

I think Princeton Companion to Physics curated by Frank Wilczek, a Nobelist, is due to be published this year.

> Whoever reads it from cover to cover is my hero...

Yeah, I'd die an accomplished man if I would grok just a few books I treasure, amongst which are TPCTM and MICMAM.

> Don't just be a consumer but write something as soon as you're inspired.

Absolutely. That's why I recommend just a small amount of comprehensive resources. It's hard to get motivated by a pile of books complemented with synthetic problems related to a particular chapter. The idea is to just go about your daily life and start to slowly see more and more math problems everywhere around you; it does wonders to motivation.

What is MICMAM?

Whitepapers, lectures, and speech transcriptions are also good motivation, and useful resources. Sometimes overwhelming, especially if reading mathematical text is as a foreign language. And sometimes it takes you down a rabbit hole.

My biggest block for learning math has really been all the unlearning. After a while ideas like negative numbers and zeros and processes like addition and subtraction stop making as much sense as I thought.

Here is my favorite rabbit hole:


leads to:


leads to:


Where to go from there - philosophy or computation? Lambda calculus is only a couple clicks away. Lisp papers, perhaps?

> What is MICMAM?

Check my [1] at root.

> Where to go from there - philosophy or computation?

For me, there's plenty of fun in mathematics without venturing even near the edges of it. Maybe one day I'll grow bored of it, who knows - it's a lifelong process.

I didn't mean to insinuate that the process I describe is one to be taken out of boredom. Let me try to explain what I am thinking:

I have been studying lisp and wanted to understand more about the origins. So I went back to the beginning of the language and read the various McCarthy papers. But what he was thinking is not entirely clear to me. So I wonder, what papers was he studying himself when he wrote this? That is easy to answer as he put the references right there in the back of the paper for me to track down. So I start reading papers written by Church and Godel. I repeat this process recursively while looking for shared references. That network of interconnected papers is a treasure trove of useful information. Reading the same papers an author was reading during their writing process is a valuable way to expand your understanding of their work.

Can you please elaborate more how to be a producer rather than just a consumer in maths? Advice like to do more maths rather than read it is clear and a regular undergrad can follow it. Producing in maths sounds like writing papers to me that I can hardly imaging as an undergrad student. It is actually a problem for me as for a software engineer: in programming I can produce rather early and it creates a motivational feedback plus helps learing things better. With maths I cannot get the feeling of creating anything, the only pleasure is in solving problems from books.

>Don't just be a consumer but write something as soon as you're inspired. I wish there were more emphasis on writing mathematics in school prior to the graduate level. Leslie Lamport says if you're thinking but not writing you're not really thinking; you only think you're thinking. For Feynman the act of discovery wasn't complete until he had explained it to someone. There's also the rule of thumb that if you can't explain a mathematical concept to a ten year old, you don't understand it yourself.

Fantastic quotes and points, thanks for sharing.

>Another thing you have going for yourself is - you can basically skip high school math and jump right in for the good stuff.

I'd strongly disagree with this. To the mathematically literate, concepts like "imaginary numbers", "prime numbers" and "logarithms" are just simply understood things which are familiar and have always been a part of your lexicon. These are actually wildly complex, abstract ideas which take years to fully grasp as an adult being first exposed to the material. Developing a mathematical intuition to the level of an advanced high schooler is no small feat for an adult with zero mathematical training. I'd strongly suggest anyone actually starting from zero mathematical knowledge to go back and spend time doing basic remedial math courses from the point of simple algebra and arithmetic with a good teacher to truly understand numbers first.

I actually think I agree with everything you've said, but here's why I think it's moot - majority of visitors here have finished high school and I wouldn't be surprised that majority have at least started on tertiary education. Numbers are pretty high worldwide too. [1]

So, terms like "mathematically [i]literate", "adult with zero mathematical training", taken at face value, don't apply to most of us in the world, and almost certainly not to the OP either.

[1] https://ourworldindata.org/primary-and-secondary-education#c...

What's your opinion of Mathematics for computer science?

Have no opinion - haven't read it and Amazon has no preview for it.

If we're talking about the same book, it is available for free: https://courses.csail.mit.edu/6.042/spring17/mcs.pdf

I bought the book for sale on Amazon. The printed version seems like a print-on-demand copy of the free PDF. The paper size is 8.5x11 and the layout is the same. I'm a little suspicious of the publisher.

I have only used the book as a reference for a few sections. The style is very approachable.

The simplest approach I think would be to start with Khan Academy. Well spoken clear and concise. You can go from a Highschool level towards subjects from first year university. Once there, it should be easier to self teach from books.

I can recommend this path, studied almost all my pre-engineering math this way 2011 and were better equipped for initial engineering courses then most of my peers. However it kinda capped out at high-school level (or atleast Swedish equivalents).

Interesting. Truth be told, I remember when it was simply him on YouTube. I guess to carry on, one would have to go for 3Blue1Brown to get the fundamentals of university math.

OpenStax textbooks(free and open source) are also good supplemental material.

I agree, because I'm on this path myself and have been for 200 days. I started by brushing up on my algebra and now I've reached integrals in AP Calculus AB.

Book of Proof is hands down the best book to start with. https://www.people.vcu.edu/~rhammack/BookOfProof/

I’ve worked through the whole book twice because I loved it so much.

I was in your position as well and my recommendation is to buy a good book.

I personally chose Precalculus by James Stewart and it works for me. It's a thick 1000 pages book with excercises and tests.

It quite well explains all topics, which you would have in high school (from basic arithmetics to everything you need to start calculus).

I do maths in my spare time (a few hours a week) and I completed 700 pages over past 3 years.

This year I should complete the book and be ready to do more advanced mathematics.

95% is self explanatory (if you focus and re-read) and explains well proofs. When I didn't understand something I found answer on google or asked a few questions on math stack exchange.

My point. You can absolutely do maths on your own. You don't need classes with a teacher, but it only depends what kind person you are and what works for you.

EDIT: Do all exercices and never skip to the next bit if you don't understand something from the previous part.

You are very persistent! But the efficiency is too low, not to put you down but precalculus is not something you should spend so much time on, there are so much more to learn and so much more fun after precalc. At this rate, it's probably going to take you 10 years to complete calculus and differential equations, which typically college students take a year to finish and start applying. Plus there are abstract algebra, discrete mathematics, etc. I know you are probably having fun with the precalc topics, but trust me it's more fun afterwards. Imagine what you are learning now is from times before 17th Century, and you wanna catch up to all the fun today at that rate, it doesn't sound fun.

Thanks for your input :)

Firstly, maths is just my hobby. I didn't pay much attention in my school years, but later in life I wanted to know more about maths.

I'm a typical code monkey, which does business software and hardly needs any maths, so agian maths is just my interests and I don't foresee using it in my career. I might do more maths when I retire as maths is such a broad subject, it will keep me as a hobby to the rest of my life :).

I'm taking it slow as a) I'm not in hurry, b) I want to have solid foundations in maths. I want to ensure I understand well basics and proofs and where they come from. I also do lots of exercices based on acquired knowledge. "Productivity" is not my main concern :)

Interesting thing I found maths helps me with my work indirectly. In maths we encounter problems such as "a plane flew north at 300km/h and side wind east was 30km/h. After 2h, the plane changed direction 30deg...". You need to find all data and best formulas for the problem. It's like translating customer/project owner issues to technical ones. It's fun!

I wish to progress my maths faster, but I can do only x hours a week and want to do it properly. I'm looking forward to more challenging 21st century maths!

I agree with other comments that "learn maths" is too broad. You can take a university degree in maths and still be just at the beginning of "learning maths." I recommend refining your goal somehow: perhaps to learn math related to certain applications that you're interested in, or learn math in a certain area (e.g. high-school algebra, geometry, probability, discrete math, graph theory, calculus, pure math, abstract algebra, topology, etc).

If you have not mastered high-school algebra and other pre-calculus subjects, you should start there; most other maths subjects will assume that you know these things. Calculus takes up a lot of space in upper high-school and early university courses -- but if you're a developer there may be other subjects that are more immediately useful to you (e.g. discrete math, linear algebra).

I set out to "learn maths" (that's verbatim what it says on my personal Kanban board). In the end I took some university classes. For me they provided the structure and teachers to help me learn. Also, there is a difference between having an idea about what some math-thing is, and being able to pass an 3 hour closed-book exam in that topic.

I agree that Khan Academy is a good learning resource that will provide structure to your learning:


Purplemath is another good resource:


YouTube is full of videos of people running through problems on any conceivable topic. Definitely search there for help.

Once you've worked your way through the high school prerequisites, I'd recommend Linear Algebra as a good next course. It has many practical applications, and is also an entry point towards pure math subjects like Abstract Algebra. Also, you don't need to know any calculus to study linear algebra. I like Gilbert Strang's OCW course:


Finally, mathematics is HUGE. The following will give you a bit of an idea:

The Map of Mathematics https://www.youtube.com/watch?v=OmJ-4B-mS-Y

I'll make an unconventional suggestion that, in addition to just brushing up on high-school mathematics, you should read Gödel, Escher, Bach by Hofstadter. It's a very meandering book, but it contains a lot of interesting ideas related to math and probably one of the best ways of teaching you about formal systems, which is really crucial to the axiomatic approach of "real" math.

A lot of books listed here can be used to scare anyone away from maths. Too dry for starters.

I would say you must start with Rozsa Peter's Playing with Infinity http://a.co/6MMCE5g to quote an Amazon review

> This book is a gem. I read it as a highschool student, and it played an important role in enticing me to become a mathematician. Its emphasis is not on practical applications or on solving funny problems: instead, it is an inspiring introduction to some of the great intellectual challenges in the history of mathematics.

Another in a similar vein https://en.wikipedia.org/wiki/One_Two_Three..._Infinity

You can go and study the textbooks after.

The simplest thing I can offer is that you cannot learn mathematics by reading, watching, or hearing about it - you have to do it yourself.

The way most people run into trouble is by skipping over new concepts quickly thinking “I get that”, and then ending up in a real muddle with a later concept that builds on it.

There are better books and lectures and weaker ones, but none are a replacement for working problems.

You want to acquire and shoot for the so-called mathematical maturity. More precisely: to become an autonomous problem-solver and have the know-how to solve (non-)trivial proofs. Typically this means bridging the gap between computationally based maths which one is exposed to in pre-school to high-school years and sometimes in the first year of college/uni, and proof-based maths which involves and demands a good command of sets and operations on sets, quantifiers (universal, existential), logical operators (not, and, or, material conditional, biconditional), and proof methods (direct, indirect a.k.a reductio ad absurdum, induction, pigeonhole principle, etc.)

A good series of books aimed for pre-school and high-school students to accomplish just that is The Art of Problem Solving. Google it.

Method-wise it could be helpful to get a (lightweight) computer algebra software and learn how to use it and how to explore knowledge using it. One thing you won't have when you're out on your own is a method to just try out stuff and verify that it is correct, or to get better visualizations quickly. Often you will get stuck with something and need a different angle (which teachers or other students could normally provide). Then you can just open the software and play with it.

One place to do that for free on a basic level would be Wolfram Alpha: https://www.wolframalpha.com/examples/math/

Edit: (I mean this in addition to the learning resources like books and videos)

Personally, I wouldn't recommend Wolfram Alpha, or anything proprietary. If you have some programming knowledge (as OP is likely to), Sympy and Matplotlib are much more capable and controllable (and free!).

I think if you're building up skills and knowledge, it should be towards something you have control over and can use in any situation without worrying about licences, cost, etc. At my university, we teach undergrad engineers Matlab, and it just seems like an expensive clunky dead end to me (though their numerical methods knowledge should be transferable).

I think for starting from scratch these software library interfaces (that is what they are) create way more problems than they solve, if OP is not experienced enough to use them. That doesn't mean they can't get around to use them finally, but for exploring a space a tool like Alpha that is both evaluating as well as explaining seems much more useful. Interacting with Sympy and Matplotlib seems like something you would do when you have already a solid understanding of what you want to achieve.

I'm not so sure. I use Sympy, Matplotlib, Numpy, etc. even when I am just exploring, and have little idea what I want to achieve.

I do use and recommend http://desmos.com, which is proprietary (but pretty limited and easily translated to Python). It doesn't lock features behind a paywall like Wolfram Alpha.

I was just guessing from OPs post saying that they don't even have basic highschool math knowledge, from which I would assume that translating mathematical concepts into concepts in Python would probably create more difficulties than necessary, whereas in Alpha you can just dump an equation and then get an interpretation. Matplotlib in particular is kind of an expert interface for a library, at least when I last checked it out.

Desmos looks interesting.

I use Desmos all the time when teaching. It's accessible to students with no programming knowledge, and the killer feature is that I can just give students a link so they can interact with a demo I've made.

For example:

Quadratic through 3 points (drag the points around): https://www.desmos.com/calculator/tf1f80zgug

Pythagoras's Theorem (drag the sliders): https://www.desmos.com/calculator/dbjxbeuzk7

Why shearing preserves area (drag the slider): https://www.desmos.com/calculator/1vykaqf7je

> Personally, I wouldn't recommend Wolfram Alpha, or anything proprietary. If you have some programming knowledge (as OP is likely to), Sympy and Matplotlib are much more capable and controllable (and free!).

If one doesn't mind proprietary, though, and wants even more capable and controllable, Mathematica on a Raspberry Pi is pretty cool, and is free (beer) and is included in the default install of Raspbian.

At my university we also use Matlab a lot. However, I've found that Octave is a very suitable replacement for all packages except Simulink, which is widely used for Control. The alternative here would be Scilab/Xcos.

I also use python/sympy/matplotlib/scipy/jupyter a lot and it's absolutely great -- highly recommend to the OP.

For an open source option: http://www.sagemath.org/

This is good advice, and Wolfram Alpha is magical!

I am not a maths major, however as I currently self-studying Mathematics, so I hope this would come as a good reference points for you.

I think we both should prepare for a long journey, cause it is the nature of maths.

I prefer formal and classic textbooks/notes as I think they are the best resources. Mathematics has been around for a long long time, keeping things up to date isn't really what should most concerns you.

[0] : https://www.quantstart.com/articles/How-to-Learn-Advanced-Ma... This article aims at kick-starting a career in quant, but the bullet points are really similar to any undergraduate program.

[1] : Schaum's series Really good textbooks on basic maths, helped me a lot on those maths modules during my study.

[2] : Any Massive Open Online Course of your choices. I am currently using MIT OCW. They are basically an Undergrad Course minus interaction with lecturer. You should ask some of your maths friends to help you out. Good, intuitively explanation in person helps a lot.

[3] : And last but not least, have fun while doing it. You can participate in maths competition, watch Youtube videos( 3Blue1brown / Numberphile) Read Magazines and Journals too, admires the Apollonian aesthetic of Mathematics.

Maths is one of the few subjects where nature > nurture, I think ( and observed). But take heart.

What do you know already? What kind of stuff do you want to learn about? What do you want to do with it? Maths is big, and cumulative.

Edit: Re your experience edit, I second the recommendation of Khan Academy. I'd also recommend the book Measurement by Paul Lockhart.

> Maths is big, and cumulative.

The cumulative part needs to be emphasised. Almost every topic in math, from grade-school on up, has pre-requisite knowledge. If you miss key knowledge you will easily get lost, so it's important to take things step by step.

I guess I'm similar in that I left high school with very little mathematical knowledge. I've struggled with many many maths books over the years which usually assume you have a certain background, or don't explain things very well, or only explain things using notation which they don't explain.

The books that helped me the most are "Mastering Mathematics", and "Mastering Advanced Pure Mathematics" both by Geoff Buckwell. They will take you through UK GCSE and A-Level maths, from nothing to calculus. They have plenty of examples and exercises to work through. Just start at the beginning and work through them.

They are based on a UK curriculum though, so that may or may not be what you want.

I suggest you take a look at Project Euler [0]. It's a bunch of math puzzles that usually require programming to solve. In order to solve most problems in a reasonable amount of time, you'll need to use results from number theory and other areas. Once you've used a result, you can try to prove it or to understand the proof.

Project Euler emphasizes number theory, which is the most approachable field of mathematics for total beginners because the background you need is just addition and multiplication. You should be able to make progress in number theory much faster than by taking the traditional route through calculus.

Another advantage of the Project Euler approach is that you'll learn how to put math into code, which is fun and tremendously valuable.

Another thing I recommend is learning geometry [1]. The way to do this is to use a ruler and compass to draw various shapes and then prove that those shapes have certain properties (e.g. prove that an angle really is a right angle). I think this approach also has more merit than the traditional approach, because you learn how to write proofs without driving yourself to exhaustion and frustration with calculus exercises. Geometry is really fun if you have a visual bent.

I also suggest learning linear algebra before calculus, because it's more useful to programmers and more accessible. The way to learn linear algebra is to study OpenGL and OpenCV with an emphasis on graphics and machine vision theory. Making things work in OpenGL is more rewarding than just doing exercises out of a textbook.

At a certain point, you'll find that you can't progress any further in number theory or geometry without calculus and complex analysis, at which point calculus should be a fun challenge for you instead of a tough slog. You'll need multi-variable differential calculus and linear algebra to understand neural networks.

In summary: Have fun! Math is fun! Learn to write proofs early on! Watch Numberphile [2]!

[0]: https://projecteuler.net/

[1]: https://en.m.wikipedia.org/wiki/Euclidean_geometry

[2]: http://www.numberphile.com/

Whenever I tried to self-learn anything, it was a very bad idea. Some parts of the subject I enjoyed and other parts I hated. I tend to make my own conclusions, which parts are useful and wich are a waste of time (so I tend to skip them). I tend to filter out the material this way, in order to make learning less painful and more fun.

My conclusions (what is useful and what isn't) were always wrong and I ended up not learning anything properly, not getting a proper understanding of anything.

Please, if there is still any such option for you in your country, always choose a proper school education instead of self-learning. It is really great, when there is some leader with a proper understanding of the subject (a teacher) and others, who are having "the pain" with you (classmates), so you can see you are not "suffering" alone, and you don't start making your own conclusions (since you would see, that others are taking seriously what you wanted to call a waste of time). Classmates also help each other during the learning process.

So personally, I think a person gives up self-learning as soon as it becomes too painful / boring. The best way to overcome it is to see other people around you going through the same process, or to see somebody who you admire, who has already gone through the same process (it could be your teacher, your parent, your role model etc.). You could call that "the motivation".

This answer is absurd, and only true for people with little motivation. Self-learning does require more motivation and "grit" to keep going, and some planning early on, and there is a higher dropout rate. But in many cases, it is the best option. I've found that this is especially true for many parts of STEM fields. It is a far more productive and effective use of time to work through problems than listen to lectures. Of course, it is also helpful to have people you can ask questions when you don't understand as comes with a class, but that can also be found online. I also find that I often understand things I learn on my own more deeply because I can go at my own pace and have more time (time not spent listening to lectures or preparing for exams on a fixed deadline) to draw from a variety of resources.

One of the most important skills someone can learn is how to learn, and especially how to solve problems and keep going when it is difficult.

For math through high school level/early university, I'd suggest Art of Problem Solving (if you can handle it). It teaches by having people solve problems rather than presenting mathematical techniques to memorize. Some of them are straightforward, but many are tricky problems and fun puzzles with elegant solutions. It helps you gain a good sense for numbers and problem solving, and an appreciation for the beauty of math. The teaching method helps you intuitively understand rules rather than memorize them. They also have a nice gamified online practice system (Alcumus) to go along with the first half of their books.

For some higher level, more applied areas like linear algebra there are some good coding-based courses like codingthematrix.com. Project Euler is also another good option for practicing math with programming.

That being said, there is something for the pressure cooker environment that forces you to consider and learn the hard topics. I have gone back to school twice as an adult, first for a pure math degree, and now for comp sci - machine learning. Both times, the amount of pain it takes is just not something a person with average or above average motivation would go through on their own.

True, though on the flip side sometimes it is easier to take the time needed for deeper understanding outside the pressure cooker environment of classes. Pressure cooker environments can be motivating to keep moving forward, but sometimes at cost of depth and intuitive understanding.

There are several amazing suggestions in this thread already.

I'll toss in vote N+1 for "How to Solve It" by Pólya: once you get past the hurdle of just understanding notation / language and some of the basic concepts, mathematics becomes much more about problem-solving.

Aside from that...

Oliver Byrne's Euclid: https://www.math.ubc.ca/~cass/euclid/byrne.html - a graphical treatment of Euclid's Elements. Much, much more accessible than earlier renditions, and a great introduction to methods of proof.

Vi Hart's videos: https://www.youtube.com/user/Vihart - she does a wonderful job of conveying the wonder of mathematics in a clear, informative manner.

A Mathematical Mosaic: https://www.amazon.ca/Mathematical-Mosaic-Patterns-Problem-S... - this was one of the books that got me excited about mathematics as a kid. The material is advanced by high school standards, but presented in a way that invites you to think / learn / generalize.

I almost lol'ed when I read this, but I think I have good suggestion for you. "Maths - A Student Survival Guide" by Jenny Olive: https://www.amazon.com/Maths-Students-Survival-Self-Help-Eng... She basically starts out with the simplest algebra (fractions) and gradually works up to topics in 1st semester Calculus. And she starts each chapter with a short quiz to test yourself and skip ahead if already know the material. This book is great for what you are describing, if I'm understanding you. I picked it up when I was preparing to return to college after being away for many years. I supplemented it with another book I highly recommend: "Mastering Technical Mathematics" by Stan Gibilisco and Norman Crowhurst: https://www.amazon.com/Mastering-Technical-Mathematics-Third...

I found that Jenny Olive's book was well designed and preferred it's style to any math textbook I have ever used. Even so occasionally I would get bored while working thru it. That is when I flip thru the Stan Gibilisco's book, which was full of interesting looking problems and examples. When I would try to solve one of them, it would become apparent that I still need to work on the fundamental concepts that were prerequisites for solving the problem. Thus I would return to Jenny Olive's book right where I left off, re-energized by the desire to master those fundamentals that she covers so well.

I studied my 'college level' maths with the Open University. The materials were excellent, being designed specifically for self learning and they offer access to a tutor too. OU courses also give you proper qualifications. I am not sure how it works for non UK students. open.ac.uk

However I did mine before the cuts to higher education in the UK and the courses are much more expensive now. This is very sad as it enabled me to change careers.

Second that! OU math courses were really good. This involves the materials and tutor support. Took them in 2003..2004, so things may have changed.

Sign up for pre-calc class on edx.org it is free and offered through ASU. First you take the test to see where your knowledge stands then you learn based on that test.

They use ALEKS learning which is a great tool to learn online. Make sure to take notes and do the problems.

My advise don’t pay for math at community colleges because they use the same tools but you have to pay somewhere between 300 to 500 for courses which is waste money.

I would select books based on your interest. I find the Dover publications good because they are both cheap and slightly older, this means they are less focused on undergraduate monetisation (version hopping, not supply answers to problems, glossy print), and more focused on proofs and algorithms. You can see them here http://store.doverpublications.com/by-subject-mathematics.ht.... I particularly liked Probability: A concise course, and Number Theory by George Andrews.

Amazon used to have a great number of graduate preparation book lists which always included books such as Rudin's Principles of Mathematics Analysis, and Halmos' Finite Dimensional Vector Spaces. These classic maths books are brilliant but usually easier to understand if you already have some experience with the material.

Final advice is to find a study partner as it can be hard to track how you are going and keep motivated, especially without the instant feedback loop you get with programming.

If you love math, read the books that interest you most, and read about math in the context of your interests. You will get much more out of that than reading books that others told you about. And you will also stick to it and turn it into something you enjoy rather than feeling guilty for not reading enough of a book you have less interest in.

I would suggest to browse through coursera and pick something free and easy (since you labeled yourself pre-highschool). If it turns out too difficult, dont worry, unsign and pick something else. I never tried Khan Academy, but people seem to praise that too. Moreover, maybe just taking high school math book and exercises book would be fine.

Most importantly, at stage you are at, learning math should consist of doing a lot of exercises - with increasing difficulty. Just like with sports, you cant learning it by reading theory only. Pick up book with a lot of exercises and do homework if you sign to some course.

The rule of thumb is, that if you can solve all exercises without having to think or being occasionally frustrated, then the exercises book is too easy for you. If you have difficulties, then it means that you are learning. (If you end up completely stuck then you need something easier.)

Videos and such are fine, but really really focus on exercises.

I found Khan Academy really helped with high-school algebra, single-variable calculus, and especially multi-variable calculus (the visualizations were great). Khan Academy's linear algebra course was awful and I dropped out there.

If you want learn Mathematics from bottoms ups I'm think this book[1] is for you. This list of Mathematics books[2] too is awesome.

[1] Mathematics: From the Birth of Numbers by Jan Gullberg [2] https://mathblog.com/mathematics-books/

Firstly, don't use those books that suggest to teach you more than one subject at a time, in a traditional way. In mathematics those kind of books do not work, at least in my honest opinion that is. What I mean by this is that, you will have some knowledge over the subjects taught by the book but you will have no understanding what so ever, or it won't be good enough in the long run.

As you said, the problem was that you didn't pay any attention while in high school. It was because you had no interest, and if you try to self-learn mathematics the same way you tried learn basic maths in school, then you will also fail.

The answer to all this is better books or a different kind of approach. I should mention that this is all from my own ongoing experience. There are traditional books that cover high school math[0]. And there are bad ones and good ones. The good ones still throw definitions and theorems at you, but it's more clear and concise, and most importantly understandable.

Now comes the new kind of books which try a different approach to the subject at hand. They try to give more understanding that anything else. I only read "Burn Math Class" by Jason Wilkes and "Math, Better Explained" by Kalid Azad. These books lack exercises, which are, in my opinion, as important as understanding. But one doesn't work without the other.

As for the future just follow this[1] so that you won't get information paralysis or other difficulties that come when there are a lot of choices.

[0] https://www.physicsforums.com/insights/self-study-basic-high... [1] https://www.physicsforums.com/threads/micromass-insights-on-...

Khan Academy is pretty good, though in my experience most of the videos focus on the way high-school courses are structured rather than teaching in a method that is the most intuitive (if you're planning to dedicate more time than an average high-school class timetable then it would make sense to learn in a more methodical way than the "scatter shot" that most high school curricula use).

Unfortunately a lot of the good "starting out" maths textbooks I know of are basically university level (though it should be noted that first-year of university mathematics is basically re-learning all of your previous mathematics knowledge but with new insights). While I wouldn't stop you from trying to read a university-level textbook, most of them are structured in a way that requires some familiarity with the topic before reading.

I'd like to learn vector calculus (to better understand Maxwell's Equations). Does anyone have any learning resources they could recommend? I've got this video in my Watch Later queue on YouTube, but if there are any other resources that give a clear introduction to the material I'd be interested in them. To give a bit of background, I learnt the basics of calculus back in school but I haven't used it in over 15 years, so I'm likely to need to get the basics down first.


Wow, Herbert Gross is an amazing lecturer. Everything is planned out, and he's careful to avoid jargon. I wish all eLearning material was of this quality.

A good way to start is learn set theory (start of with naive set theory Dover books are cheap: http://store.doverpublications.com/0486814874.html)

And some introductory mathematical logic.

From this you can immediately move to Analysis on the real line (up to Reimann integrals)

Linear Algebra is also something you can start (Kenneth Hoffman and Ray Kunze https://www.amazon.com/Linear-Algebra-Kunze-Hoffman/dp/93325...)

Once you are comfortable with Riemann Integrals, you can start attacking Complex Variables (John Conway has excellent springer texts: Functions of One Complex Variable Vol 1 and 2)

Some texts you should look at after you understand basic set theory:


1. [Michael_Spivak]_Calculus - good book for introduction to real analysis

2. [johnsonbaugh,pfaffenberger]_Foundations_of_Mathematical_Analysis - Dover publications

3. [Vladimir_A._Zorich]_Mathematical_Analysis_I - well written but less known. Recommend checking it out.

4. [Gerald_B._Folland]_Real_Analysis_Modern_techniques_and_their_applications - My top pick, but a tough read.

5. [Rudin_Walter]_Principles_of_Mathematical_Analysis - classic book

Linear Algebra:

1. [David_Lay]_Linear_Algebra_and_Its_Applications -

2. [Friedberg,Insel,Spence]_Linear_algebra - Undergraduate level text

3. [Hoffman,Kunze]_Linear_Algebra_2nd_edition - Graduate level text. My top pick.

4. [Gilbert_Strang]_Introduction_to_Linear_Algebra - Undergraduate level linear algebra. Same guy has MIT OCW lectures.

5. [Peter_D._Lax]_Linear_Algebra_and_Its_Applications

Complex Variables/Complex Analysis:

1. [John_Conway]_Functions_of_One_Complex_Variable_I - My top pick

2. [Lars_Ahlfors]_Complex_Analysis_(Third_Edition) - Classic. Not a big fan though.

There is no such thing as "bottoms up" in mathematics, I think a relatively broad examination of mathematics might be useful so that you can discover what is relevant to the subjects you are actually interested in. I learned this the hard way. Here you have Feynman talking on this: https://www.youtube.com/watch?v=YaUlqXRPMmY Finding a real world use case for the math you learn will be crucial if you self-study to keep yourself motivated to keep going.

I'd start with this video to get an overview of all the topics and areas that mathematics entails (some might be unknown to you) https://www.youtube.com/watch?v=OmJ-4B-mS-Y . Then you go ahead and research a bit what sounds interesting to you and then you might google that topic and add "foundations" to that google search. It's just that most school/university math is heavily focused on analysis and algebra but there is so much more!

I was in a similar situation a few years back but my weakness was calculus. I really had no grasp of what it was used for until I had to learn as part of my work. I was on the brink of losing my job if I hadn't. I had a very patient boss as mentor who spent hours teaching me the practical applications of it - remotely over phone. Now I love calculus.

So I believe the best way to learn math is by finding areas where you are forced to apply it. And it is never too late. I learnt most of it after turning 30.

Probably not a perfect book for someone at the HS level, but just a bit past that I would HIGHLY recommend MacLane’s Mathematics Form and Function.

It’s a revisionist history of mathematics aimed to demonstrate how ideas flow from one to another. He eliminates a lot of dead-ends and takes a perspective as to one “ought” to move from one subject or discovery to another. OTOH, the historical perspective is both readable and often a missing piece which makes other math tougher.

By your early 20s you should know if you need a teacher, or just a guide, or no one but yourself(plus textbooks&internet), for medium level difficulty and down. If you have to ask, I'm pretty sure you need a teacher.

For example, by the time I was in my last year of college, I regularly skipped 90% of class time, and showed up to take tests. I handed in assignments at instructor's office.

I don't process auditory information all that great, but I'm extremely efficient and robust in my processing of visual information including the written word, graphics, pictures, and video.

On some topics I have sought a mentor, with whom can provide a little guidance, and bounce ideas off of. But his is extremely far from the traditional instructor role.

So in conclusion, most people do far better in class. But for me it's slow, tedious, distracting, and out of sync with my normal learning processes. The few other people that I know who are like me, also skip the classes and have done well. You'll know because from birth, you'll be an excellent test taker, get bored silly in classroom environments, and have likely read 1000 books or more in just two or three years. We never asked "do I need a class", we just stopped going.

I've been using YouTube videos. One recommendation -- watch the videos at 2x speed. The information is actually easier to absorb when it's presented quickly.

+1 for this. The chrome extension [1] is even better since it allows for 0.1 playback speed increments, e.g. 1.8x speed, or 2.3x speed.

I've watched some lectures with really slow speakers at 3x and was still able to understand, and really wondered what the people watching the lecture live at 1x must have felt...

[1] https://chrome.google.com/webstore/detail/video-speed-contro...

In person and by video of the same material experience can be quite different. One of my current lecturers, is very engaging, with great natural flow in the lecture room, but watching via video somehow fails to capture this.

That is for lectures that I miss due to a clash, not re-watching.

I know people are recommending a lot of books here but I want to say this, I know a lot of you guys might going to shit on me but telling someone about 5-6 book in order to self-learn maths is never going to help. I see that when someone people ask for help instead of relating what he is really asking for that he wants to understand and learn math people start telling the names of these books that they knew about not thinking about the effect that straight up throwing 6 book titles will do no good to the person. So now I have defined the problem I will tell you only one resource I know its bit of understatement but I think Learning math from Khan Academy would be sufficient for you. And once you find something on Khan Academy and you are done with it. I will recommend you this site www.brilliant.org And if you still want to practice just search for test question papers and cheat sheet on the topic you want to practice. Print the cheat sheet beside you, and do as many questions you can with the help of cheat sheet.

To the person who is asking the question and people who are writing the answers I just want to say that knowing a lot of good resources to go through, is not the learning. Now I see this thing happening everywhere, people want to know about the process so much that instead of doing what needs to be done they kind of start storing this metadata of the process and this thing is happening a lot on the internet. People know a lot of resources, a lot of tutorials and video and a shit load of things. But when it comes to execution and practice I can hardly say only a very few might have gone to complete what they have started. I am saying all this because I have gone through this cycle myself I have wasted 2 years of my life. Collecting resources related to ML, web development, Math, Psychology, Philosophy you say whatever you find interesting I will tell you some famous book or MOOC course on that. So I will ask everyone this question take a look on 1 back of your life, if you guys were trying to learn anything do a retrospective whether you really have learned anything, write things that are going right, right things going wrong and start doing things, making project, solving problems really doing the things not just trying to perfect the process. I can go on but I think I have made the point if I keep writing more I think I will contradict myself that it's not about what and how info you get it's about you get something actionable out of something. If some 2-minute video gives you something actionable to do rather than going through a 2-hour chapter in textbook there is no point of going through 2-hour chapter. Knowledge is all about applying not learning the facts and saying it around to your friends I know it feels good but nothing comes out of it in real life.

I fully agree, and especially for mathematics the key is definitely practise, practise, practise. That's why it's so hard to learn mathematics without a teacher, it's all about exercise and you really need someone to explain to you how to solve a certain problem when you're not able to solve it for more than 3 days or even weeks.

If you know someone who can explain yet-unsolvable problems to you, then you can get far with self-learning, but my overall experience is similar to yours. I've got books on machine learning, physics, and all kinds of interesting topics, but as long as I don't have the time and energy to seriously work through all the exercises, they will at best only give me cursory overviews of what's going on in the field and what I could learn.

What you can do yourself is to get into new domains once you already have some solid background or to check papers and theorems that use math you already are familiar with. But that's not learning math, of course, that's just applying existing skills.

I agree with the basic thrust of your comment, which as I interpret it boils down to saying it's unhelpful to throw book titles at a person without any context or guidance. However, I disagree with this point:

> If some 2-minute video gives you something actionable to do rather than going through a 2-hour chapter in textbook there is no point of going through 2-hour chapter. Knowledge is all about applying not learning the facts and saying it around to your friends I know it feels good but nothing comes out of it in real life.

There are optimal and suboptimal ways to learn things, sure. But some things legitimately cannot be reduced from a complicated textbook chapter to a straightforward YouTube video. You can improve exposition, but that comes with its own time efficiency trade-offs, and you won't meaningfully simplify the material without compromising significantly in depth of coverage. In particular, even extremely good video series like 3Blue1Brown's Linear Algebra have neither the breadth nor the depth to replace the material in any given chapter of e.g. Axler's Linear Algebra Done Right. The exposition is certainly clear, and you can get a nice overview, but you're actually not learning enough to apply the mathematics if you watch a video on it. Ironically, such a video is much more likely to leave someone able to talk about the subject but woefully incapable of actually doing it. The videos that can be used for learning are mostly lectures.

More importantly I think your conception of working through a chapter is incorrect. If you're spending a significant amount of time working through a textbook chapter, you're either 1) actively learning the material and doing the mathematics, not just passively reading it, or 2) you're not prepared for the material, and you're not learning efficiently. Finding a video to simplify the material doesn't resolve #2, it just disguises it. When you learn mathematics from a textbook, you should be applying the material by working through the exercises. You can't immediately jump into e.g. data analysis after learning linear algebra, and you certainly can't do so by watching a video on the subject.

I'm fully with you that replying to these questions with textbook recommendations is unhelpful, but not because they're textbooks. Textbooks are great! The hard reality is that you can't simplify most mathematics into an easily, quickly digested format, especially if you want to apply it. There are simply too many prerequisites for most material and too many unknown unknowns that can leave glaring blind spots. "There is no royal road to geometry" is a saying for precisely this reason.

> it's unhelpful to throw book titles at a person without any context or guidance

Here's one reason it's unhelpful; After 4 or 5 people list a bunch of books, you now have a long list of books, and no way to know which to start with, unless there is a lot of overlap - you could just as well google/search amazon and look at ratings, which would give you far better results.

Furthermore, many people tend not to read multiple math books on the same subject, so they just recommend what they know w/o having any knowledge of how that book fares against other suggestions.

If they expand on either their own credentials, and reading on the matter, so you have the context of their knowledge; or give reasons why that book is good, this gives a better basis for comparison.

As an aside; I like the coursera structure of following video lectures with content summaries of what was covered in the video. The advantage is 1) quick reference of material without having to search through a video; 2) if you already understand the topic, you can often just read the summary, and skip the video if you think you already know the material.

Another aside; one problem with books versus videos is often books are long compendia of a field, where as videos are shorter. if you already know topic A and want to learn B, then there may already be a video on topic B, where as a book might cover B in some chapter. For these cases, it might be good to discuss individual chapters/sections of book, but that assumes you can ready them somewhat independently given prior knowledge.

Jeremy Kun (who is worth reading beyond this article) has a post with very useful insights:


It begins (and there is far more of value in the post):

Many people who are in this position, trying to learn mathematics on their own, have roughly two approaches. The first is to learn only the things that you need for the applications you’re interested in. There’s nothing wrong with it, but it’s akin to learning just enough vocabulary to fill out your tax forms. It’s often too specialized to give you a good understanding of how to apply the key ideas elsewhere. A common example is learning very specific linear algebra facts in order to understand a particular machine learning algorithm. It’s a commendable effort and undoubtedly useful, but in my experience this route makes you start from scratch in every new application.

The second approach is to try to understand everything so thoroughly as to become a part of it. In technical terms, they try to grok mathematics. For example, I often hear of people going through some foundational (and truly good) mathematics textbook forcing themselves to solve every exercise and prove every claim “left for the reader” before moving on.

This is again commendable, but it often results in insurmountable frustrations and quitting before the best part of the subject. And for all one’s desire to grok mathematics, mathematicians don’t work like this! The truth is that mathematicians are chronically lost and confused. It’s our natural state of being, and I mean that in a good way. ...

If you love math, read the books that interest you most, and read about math used within the context of your interests. You will get much more out of that than reading books that others told you about. And you will also stick to it and turn it into something you enjoy rather than feeling guilty for not reading enough about math in a context you cant strongly relate to or be attracted to. Take advantage of your interests.

So, I decided to go back to study Math from the very basics to try some more advanced Data Science stuff later and I'm really enjoying Krista King's courses on Udemy.

They are very clear and straight to the point. She currently has courses on Fundamentals of Math, Algebra (I and II on the same course), Calculus (I, II, III, in separate courses) and Geometry and Trigonometry. She is also preparing some Probability & Statistics course and later a Linear Algebra one.

That is the only way I could self-learn Math without quitting after more than 12 years without doing math at all in real life. I was originally a Lawyer so I didn't care much for Math in school and didn't have anything relate to Math for all those years until now.

I tried a bunch of other paths, like challenges, For Dummies books, more advanced University open courses... Nothing stuck until her courses.

They are not free, but you can find basically permanent Udemy coupons to buy each course for USD 10.

Here is her profile: https://www.udemy.com/user/kristaking/

Go in a store, look at math books and find out one that looks like it:

* teaches you things you don't know

* relies on things you know for the most part

* do it well

You're in luck, a few years ago pedagogy in math was not really a thing. Now we have khanacademy and plenty of other courses (Coursera, Udemy, ...) and youtube videos to help you.

There are different goals when you're learning math. Do you just want to get more exposure? Then focus on youtube videos (subscribe to some math channels) and novel-type of books.

You want to get a deep understanding of some area in math like algebra or number theory? Then you're going to have to buy these books I told you about and do the exercises in them. If you've chosen your book well, they will have good explanations on how to solve these if you get stuck. In any case, exercising is the way to go.

For those who recommend a good teacher, I think this is only a good advice if you're just starting and too many concepts are scary to you, but if you're already have a good basis then good videos, online courses and text books are enough and even better than a teacher.

The last time people asked, I collected the responses so I could do the same thing as you. Note that I'm wanting to learn it in a way where I can do proofs. So, I have general-purpose books and stuff for that. I just ordered the three books I've seen pop up the most. Although 2 are in the mail, Concepts of Modern Mathematics by Stewart just got here yesterday. It had an awesome opening that made me wish the math I was taught in school was done like this back when I went. Makes newer stuff make a lot more sense, too. I included a link to Dover that has a Google Preview button on it where you can read full, first chapter for free to see if it's what you like. Other two are more about exploring and proving things which may or may not interest you. I added them in case anyone is reading your question to learn that stuff.

Concepts of Modern Mathematics by Stewart


Dover Version with Google Preview Button


Introduction to Mathematical Reasoning: Numbers, Sets, and Functions


How to Prove It by Velleman


Where do you live? In most Europe public university is free and you can attend courses. I don’t know about US or other parts of the world.

If you just “show up one day”, you’ll be seen as pretty weird, but hey, it’s math, there will certainly be people more weird than you. My recommendation would be to introduce yourself to the teachers and be very careful/polite/diligent in attending the course. Some teachers can be very opinionated, just go with the flow.

Given your initial level, I’d recommend to focus on breadth instead of depth. It’s likely the case that you don’t know enough yet to make an informed decision.

For example, in my case I love algebraic geometry, number theory, and cryptography. And I hate calculus with a passion, including analytical number theory. None of this was clear to me until the 2nd-3rd year of university, foundamentally because what you learn in high school (liceo, in Italy) is kind ok fixed and biased towards calculus.

Work extremely slowly, possibly with a tutor through Principles of Mathematical Analysis by Rudin. The book lays down the real foundations of calculus and higher math. Learn the math as you come to it. Dont waste time going extensively through lower mathematics. You will get bored and life is too short for that.

Rather than simply give you a list of resources or textbooks, I’d like to give you a broad “map” of the various domains of mathematics, this way you understand what you’re working towards. I’d also like to recommend how you can maximally optimize your self-study, as someone who mostly self-learned enough mathematics to be active in research. I think this meta-direction is just as important as the resources you choose to learn from.

Mathematics, in my opinion, can be divided in two very major ways ways as concerns pedagogy. First, most mathematics computation-based or proof-based. Math research in general is about proving things, and most “serious” math books after a certain level are almost exclusively about proving properties instead of calculating results. On the other hand, most applied mathematics is computationally inclined, and uses methods derived from research. Here is a simple example: I can ask you to calculate the square root of 2 or I can ask you to prove that it’s irrational.

It’s important for you to know what you want. Do you, for example, want to achieve theoretical mastery of linear algebra that subsumes e.g. solving linear equations, or do you just want to be able to execute the computational methods proficiently? As you get into higher mathematics the line here blurs, but different resources may still emphasize one approach or the other.

Now let’s talk about the domains of mathematics. Broadly speaking, we can divide them into algebra and analysis. More accurately, we can divide their methods into algebraic or analytic. Algebra is concerned with mathematical structures and their properties, like fields, groups, rings, vector spaces, etc. Analysis is concerned with functions, surfaces and continuity. I like to say that in algebra, it’s difficult to identify what you’re studying and whether it’s worth studying it, but once you do there is a lot of machinery that’s relatively straightforward to prove. On the other hand, in analysis it’s easy to find things worth studying, but difficult to prove interesting things about them. For example, if you can prove that what you’re studying satisfies all the conditions of a field, you immediately can prove many other things about it. On the other hand, the toolbox of analysis is widely applicable to many things, but it often seems like you’re trying a hodge podge of techniques, and the proofs can look kind of magical at first. For a concrete example, try to prove that 1 + 2 + 3 + ... + n = n(n + 1)/2.

Now let’s take a tour of mathematics at the undergraduate level. In theoretical (but not necessarily pedagogical) order we have: set theory, calculus, analysis, topology and probability theory on the analytic side; and set theory, linear algebra and abstract algebra on the algebraic side. Analysis can be further subdivided into real analysis, complex analysis, functional analysis, harmonic analysis, Fourier analysis, as you move from foundational material to specialized material. Similarly abstract algebra divides into group theory, ring theory, finite fields, Galois theory, etc. Probability breaks down into discrete versus continuous random variables, measure theory, statistics (on the applied side), etc.

Here is my concrete advice regarding learning the material. First, internalize the idea that mathematics is “not a spectator sport.” You learn it by doing it, not just by reading it. Every time you’re sitting down with a textbook, attempt every exercise in good faith, and take an author’s lack of a proof as an invitation to prove it yourself. The first time you read a chapter, read it briskly, skipping over what you don’t know to get to the end of the chapter. Let that material percolate in your mind a bit, even though you won’t understand much of it. Then read the chapter again, but slowly. Write down every definition, theorem and proof. Try to prove each theorem yourself before reading the author’s proof. For anything unclear, search for different examples of that concept or for different proofs of that theorem. Then attempt at least half of the exercises at the end of the chapter. You will struggle a lot, and you will be demotivated a lot. It will feel frustrating and you will be humbled continually. But I can promise you that if you keep challenging yourself this way you will continue to improve. It’s not enough to find the right textbooks or the right resources, you need to study them the right way - in an active, focused way.

That brings me to my second piece of advice. There are many good books and resources for any given topic. Different people respond more favorably to different types of exposition. Sometimes you’ll receive a book suggestion and realize it’s not for you - that’s fine! It might still be a good book. For example, I rather like Rudin’s Principles of Mathematical Analysis, but please don’t try to learn from it without a teacher! For any given topic, find four or five strong suggestions, preferably all at your level of capability at the time. Then read the preface and the first 10 pages of the first chapter in each book. Look at the table of contents to understand not only the coverage of topics, but the pedagogical arrangement of topics. Proceed with the book you have the strongest affinity for, and use other books when the author is unclear.

Finally, now I will give you textbook suggestions:

1. Set Theory: Naive Set Theory, Halmos.

2. Calculus: Single Variable Calculus, Stewart; Multivariable Calculus, Stewart; Calculus, Spivak.

3. Linear Algebra: Linear Algebra and Its Applications, Strang; Linear Algebra Done Right, Axler; Linear Algebra, Hoffman & Kunz; Finite Dimensional Vector Spaces, Halmos.

4. Analysis: Analysis I, Tao; Analysis II, Tao; Understanding Analysis, Abbott; Principles of Mathematical Analysis, Rudin.

5. Abstract Algebra: A Book of Abstract Algebra, Pinter; Abstract Algebra, Dummit & Foote; Algebra, Artin; Algebra, Hungerford; Algebra, MacLane & Birkhoff; Algebra: Chapter 0, Aluffi.

Start with that, and once you've gained sufficient mathematical maturity look for more targeted and specialized resources. I also recommend that you read Concrete Mathematics by Graham, Knuth, Patashnik; and Mathematics: Its Content, Methods and Meaning by Kolmogorov, Aleksandrov and Lavrent'ev. These two, especially the latter, are good for covering a variety of mathematics at once. They are good for both learning and mathematical "culture."

I can't stress this enough: it's important that you really optimize the way you're studying and what your goals are, instead of trying to collect as many book recommendations as possible.

One thing I did not do while learning mathematics that I wish I had done:

When you learn something new, actively look for interesting problems that can be solved with it.

I mostly relied on the exercises (which are good to do), but since they were not problems I invented, I've forgotten most of the material. However, if you use mathematics to solve fun problems that you invent, you are more likely to remember it. And, to be honest, I suspect you also learn it better.

Most people take a problem and try to learn the math to solve it. I suggest inverting the process. Learn the math, and seek out problems solved by that math. Don't be afraid to make it an "overkill" solution. Even if the problem has a simple solution, use your fancy new tools to solve it.

A lot of great resources and suggestions here, and I see some discussion of books vs teachers.

Let me suggest a strategic approach: decide on a goal that is not math, but is something you're interested in and requires math to achieve. Learning math for math's sake is a bit abstract, and can go many different directions, so it might help to pick a specific application of math as your vehicle, to be both motivated and focused.

For example, I love computer graphics, and making pictures via programming forces me to learn programming and math, and sometimes a bit of art too. It's hard to play with ShaderToy, for example, without doing some math, and how much math depends on what kind of picture you want to make.

I really enjoyed reading "Discrete Mathematics with Applications" by Susanna S. Epp. It's very accessible. Having a good understanding of algebra should be enough.

For programmers, Discrete Mathematics is arguably the most relevant discipline of Math. Yegge wrote a long but interesting post on this subject [1].

[1] http://steve-yegge.blogspot.com/2006/03/math-for-programmers...

I found https://artofproblemsolving.com/ to be invaluable and I was at a state you were a few years ago when I found it. The online problems and the workbooks with the PDFs where awesome. I really like it tho it can be cheesy sometimes it really covers all the way through to calc very well there’s online quizzes/work problems as well as ones in the books/PDFs and it comes with a video series

I've just been watching Michael van Biezen, https://www.youtube.com/channel/UCiGxYawhEp4QyFcX0R60YdQ, and Braden Mann, https://www.youtube.com/channel/UCFS_EnwXR7m_c1IyePCPhYA, explain how to do Maths problems. These guys are good!

I'm horrible at math, really, really bad.

When I need to do something math like I usually find some code that does something similar, figure out what it's up to and adapt it to my needs. Pretty pictures help a lot too.

Learned enough linear algebra this way to be productive, made a pie menu addon for blender that got adopted by other people and eventually became builtin -- mostly to bughunt and find missing chunks of the python API though.

Actually, now that I think about it, I pretty much learn everything this way.

The OpenStax textbooks are exemplary: https://openstax.org/subjects/math

find a problem without an answer(o) and try to answer it

research as much as you can about the problem until you understand it well enough to explain it to someone else

when you come across new concepts, research them.. recurse ;p

if you like to program then try to write your own implementations of concepts as you learn them

if you are unfamiliar with programming i would recommend trying it, you get to build this math you are learning and when complete you can develop intuitions by manipulating: constants, methods, models,..; as well as being a great learning aide.. debuggers as standins for instructors

read original works: books,papers,..; where ideas are branched from

the engineered complexity of the state of the art can obfuscate underlying concepts, and seeing how they were first formed can illuminate their present state

these initial works can be very approachable because they often contain new concepts that need to be defined within them, whereas a paper referencing that initial work will often consider the concepts well known to anyone intending to read them and omit comprehensive description

i think what is most important is that you research whatever is interesting to you

(o) https://en.wikipedia.org/wiki/List_of_unsolved_problems_in_m...

I recommend the excellent (and free) book from Jean Gallier @ the Department of Computer and Information Science, University of Pennsylvania: Fundamentals of Linear Algebra and Optimization. Everything you need to know, all the way up to machine learning algs. Download here: http://www.seas.upenn.edu/~cis515/linalg.pdf Enjoy!

Bill Shillito's lecture series for Project Polymath is by a mile, the best introduction to higher level mathematics. It requires absolutely no prerequisite knowledge.

Introduction to Higher Mathematics: https://www.youtube.com/playlist?list=PLZzHxk_TPOStgPtqRZ6Kz....

If you find he talks a bit slow, change your playback speed to 1.5x. Enjoy! :-)

My own take on it:

Lang's books about the basics I find lovely

- Basic stuff: Basic Mathematics - Lang

- One variable Calculus: A First Course in Calculus - Lang

- Multi variable Calculus: Calculus of Several Variables - Lang

- Linear Algebra: Linear Algebra - Lang

- Number theory: An Introduction to the Theory of Numbers - Niven, Zuckerman, Montgomery

Some more advanced stuff

- Algebra: Algebra - Artin or Algebra, Chapter 0 - Aluffi

- Complex Analysis: Functions of One Complex Variable I - Conway

- Probability Basics: An Introduction to Probability Theory and its Applications I - Feller

- Real Analysis and functional analysis basics: Real Analysis - Folland

- Basic Differential Geometry: Elementary Differential Geometry - O'Neill

- Riemann Surfaces (algebraic take): Algebraic Curves - Fulton

- Differential Topology: Differential Topology - Guillemin, Pollack

- Riemann Surfaces (analytic take): Compact Riemann Surfaces, an Introduction to Contemporary Mathematics - Jost

- Modern Differential Geometry: Lectures on The Geometry of Manifolds - Nicolaescu

- Functional analysis: Fundamentals of the Theory of Operator Algebras I - Kadison, Ringrose

- Introduction to the Index Theory of which you actually have already seen some in the Riemann Surfaces books with the Riemann-Roch theorem: Index Theory with Applications to Mathematics and Physics - Bleecker, Doob Bavnbek

- Homological Algebra: An Introduction to Homological Algebra - Weibel

- Algebra for algebraic geometry: Commutative Ring Theory - Matsumura

- Soft introduction to schemes: The Geometry of Schemes - Eisenbud, Harris

- Algebraic geometry: Algebraic Geometry - Robin Hartshorne

This should get you up more or less to what was current in the '60s :)

Additional methodological note: I'm not suggesting going linearly through all these books. Well, perhaps going linearly thorough the basics would be a good idea, but after that I would follow my own interests.

The important thing is really to have pen and paper and work things out by yourself, not just reading the book. I'm not saying you should try to prove all the theorems yourself or do all the exercises, that would take an unrealistic amount of time, but you can try to think about a theorem before reading its proof to see if you have a sense of which road is more likely to lead to a proof, and then try to reproduce the proof with pen and paper after having read it to check if you actually understood it.

I've done this as an adult and what worked was Schaum's plus online videos. The idea that you will work through long textbooks is not realistic. Also an algebra cheat sheet esp the common algebra errors. Quick Calculus is also a good book.


Khan academy. I also blundered my way through high school math, getting near-failing grades and quitting as soon as possible. I got super interested in it and while I was regularly studying khan academy was the best way of actually learning the material. The exercises are a bit slow but ideally you'd learn from the lectures and then supplement them with a book of just exercises.

May I recommend the NCERT math textbooks used in India. They are simple to follow and nicely organized as different levels. They are available for free on the NCERT website (website maybe a bit tough to navigate). The books cover stuff from basic algebra, geometry and calculus. After this you should be good to go for collegiate mathematics like analysis, multivariable calculus etc.

I'm looking for recommendations for the same question, but for someone who did graduate Engineering and Econ, and does a lot of coding.

There's a lot of mathematical fundamentals they don't teach you while you're learning a whole variety of applied math.

Off the top the pieces we did:

- Linear Algebra

- Computation (big-O etc)

- Vector calculus

- Finite Element methods

- SDEs, PDEs

- Discrete math (graphs, cryptography, number theory, etc)

- Complex analysis (used a lot in EE)



And definitely follow through his "pause and ponder" sections. If you want to build up your maths skills, it is crucial to learn how to think in the maths way. Like becoming a good programmer involves writing lots of code yourself, or to become a good dancer you need to practice your steps. For maths it's abstract thinking. Appreciation of maths is one thing, having the discipline to self-study a whole other.

Edit. Regarding your 2nd Edit: His videos are made for the broadest audience possible. I'd recommend picking any video whose topic interests you the most at the moment. You will see what knowledge you lack (take notes of these!) and can expand from there. Be it to watch his maths fundamental ((1)) series [0],[1] or just rewatch.

((1)): As in any other things, knowing your fundamentals is significant to the understanding of a topic. It won't help you at all if you can apply (copy paste) some machine learning techniques if you don't know about linear algebra at all.

[0]: https://www.youtube.com/watch?v=kjBOesZCoqc&list=PLZHQObOWTQ...

[1]: https://www.youtube.com/watch?v=WUvTyaaNkzM&list=PLZHQObOWTQ...

Youtube link to make it easier: https://www.youtube.com/channel/UCYO_jab_esuFRV4b17AJtAw

The calculus and linear algebra playlists are particularly excellent.


Related thread in reddit, which I found useful.

What math are you interested in learning? Math is just too broad to be a single subject if you want to dig.

Do the homework if you want to really understand it. Reading math isn't like reading fiction. You need to go slow, and you need to do the problems and the proofs to get it. Yes, ask for help when you get stuck. But there's really no way around grinding through the problems.

Check out my study plan here:


It's still evolving especially towards the latter parts - but the earlier math progression is pretty solid.

A general comment: a teacher or tutor who will answer your questions is best. You can learn math on your own, but someone to keep you on the right path will save you so much time. Also, for textbooks, work through every example, step by step, and then do all exercises. Essential.

Depends on what kind of math you enjoy doing. If you're interested in practical applications, start by becoming an algebra ninja ... so good that just looking at a problem makes it fall apart.

If you find something that's 'beautiful' (I never did :-( ), then scratch that itch.

- Hook yourself into online communities - Take a college course, PRIMARILY if you need to be pressured to finish your work (i.e. pass/fail). Otherwise, it might feel like a waste if you can understand the concepts through your own learning + communities.

I posted this thread on https://www.reddit.com/r/learnmath/ .. and now I realize that there are probably useful answers for sidyapa and others.

I think you need to first decide your application before starting such a thing.

There's no way to remember the entirety of mathematics, even if you do rote memorize and practice your way through it.

You need to figure out which sub-discipline you can apply and follow through with it,

This one is great for start. It has many exercises too.


I am studying from this MOOC, really good!


Next month will go for Calculus.

I started by working through some elementary math books meant for middle schoolers and high schoolers. Then took classes at community college and now learn on my own. At the initial stages, I needed a teacher and structure, especially with Calculus

For me "learning math" is a language translation process. The math text uses terms and symbols that are hard to remember.

I just rewrite the math text to get it into a form I can read without stopping to figure out an unfamiliar term or symbol.

Herb Gross and Pavel Grinfeld are my favorite:



I asked a related question in another thread: https://news.ycombinator.com/item?id=16582762

take pre-calculus and do every assignment immediately as it is assigned. then review before the next class. pre-calculus is designed to give people like you the tools to move onto the maths you want to learn.

after that, echoing another top-level comment: take calculus and physics. take 2 semesters of each.

after those 3 classes, you'll know more math than 90% of the world's population. more importantly you'll be prepared to move on to differential equations, linear algebra, and vector calculus.

A lot of good resources here but does anyone have a place where I can find exercises for algebra and calculus? Even better if it were an android application.

https://brilliant.org/ has practise modules. Other than that I think https://www.khanacademy.org/ has practise sessions too.

you can simply find a book with solution manual.

To cover pre-high school through undergrad: https://brilliant.org

> My current proficiency level is pre-high school mathematics as I didn't pay much attention in high school, learning effectively nothing.

I took a look at your other comments and submissions, to try to get an idea of whether or not you are a programmer. The fact that you are on HN makes the odds pretty good that you are or were, but there are enough people here who are not that I didn't want to assume. It's relevant because programming requires thinking in ways that overlap a fair bit with the kind of thinking required in mathematics, so whether or not you are/were a programmer would affect my recommendations.

What I found puzzles me, particularly concerning your current "pre-high school" proficiency level. In a post a few days ago, you said that you are "graduating a university with a civil engineering degree in a few months" [1].

Most sources say that civil engineering requires calculus, differential equations, linear algebra, complex analysis, and probability and statistics.

I'm having trouble understanding how you could have gotten into a university civil engineering program in the first place if you math proficiency level is really just pre-high school, let alone got to within a few months of graduation.

Also in that post, you are asking a quite similar question to this one, except it is about CS fundamentals instead of about math from the ground up:

> Hi, I am a front-end developer since 2 years freelancing for local clients. A week back I fell in love with computer internals and now want to learn CS fundamentals and become a full time software engineer.


> Could you give me a roadmap for how I should go about learning CS fundamentals? What books and papers should I read? How did you learn, what step and approaches did you take?

I'm not normally suspicious of these types of questions...but something seems off here.

If the question is on the up and up, and you really do only have pre-high school math, take a look at ck12.org [2]. Go to one of their subjects on that page, such as algebra, and click it. On that page, click where it says "FlexBook Textbooks". That will take you to some freely available textbooks meant for K-12. Click where appropriate to get the high school ones. These should give you the high school math you are missing. I think you can also find on that site material for teachers, which could help for self-study.

Get this material down cold...it's not all that college level stuff is going to assume you know it well, so push through even if it sometimes is not a lot of fun. If you need something fun while going through the high school stuff, take a look at the books that collect Martin Gardner's old "Mathematical Games" columns from Scientific American.

[1] https://news.ycombinator.com/item?id=16506771

[2] https://www.ck12.org/student/

> I'm not normally suspicious of these types of questions...but something seems off here.

Really doesn't need to be off. Some shitty decisions on where to put attention in past and now probably in position where one can play catch-up with ambitions or just doesn't play well with authority and wants to conquer things with a more individualistic touch...

..or really any number of scenarios that can explain this not being "off" at all.

You can self learn math to a certain point but eventually you will reach a subject where its introductory text requires a context not written plainly. This is easily observable in research. Researchers do not write papers with the goal that everyone understand their work but rather that those in their field understand so the work can be verified. You are then stuck either having to derive the mathematical principles you need or you will have to ask others for help.

Khan academy. I decided to relearn all math from scratch and now I'm almost done with Algebra 1. It's pretty good.

most comments here recommend books, but what's probably more important is how you learn math from these books.

what is your current level?

We've got just the right course for you at passyourmath.com

What is people's view on Mathematics for Computer science?

depends on the level or the depth

Khan Academy

MIT Open Courseware is great

haskell(common knowledge) -> category theory(compare it with set theory here you will read about math foundation crisis) -> type theory(curry howard correspondence or logic == program)

personal perspective

I highly recommend Bartosz Milewski series in category theory https://www.youtube.com/watch?v=I8LbkfSSR58

Independently of whether this is a helpful answer for the original question, thanks for that link, was looking for some good lecture introduction on category theory and this looks really nice.

That looks great, thanks!

It's better to do it the other way around; begin at the low level and work your way up to the abstractions:

* Foundations of proofwriting and mathematical thinking: Velleman

* Going further into logic: Hindley and Seldin, Lambda-Calculus and Combinators

* Apply what you learned just learned: Sussman and Abelson, SICP

* Getting serious: Awodey, Category theory

* You're there: Haskell

That seems way too abstract and advanced for a beginner. I can't imagine anyone starting that way.

i agree but i think you can see the whole image and select what you want. for example maybe you like CS you will comfortable with graph theory or compatibility theory, or philosophy you love paradoxes you counter in logic, even the history you can read about Hilbert program.

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