How do I re-learn math up to a level just before say a US undergrad in Math?
I hated math when I was in secondary-school, but loved computers so did a computer science course which was heavy-ish math in its final year.
Passed that course and now am in a pretty decent programming role, but I feel like my maths is just built on such a shaky foundation that I maybe could improve my programming and problem solving if I solidified the base.
Is there any one text book I could get which would teach me up to that level of Math?
I suspect no, because Math is so broad, but generally if I could get an entire pre-university schooling in Math I would be very happy.
In a previous life, I used to tutor students who had to cover high-school mathematics for their university courses.
What I found was that going through a proper high-school textbook was the best way to cover all the topics systematically and in a focused manner. If you can get your hands on some such books (such as a text for the International Baccalaureate Higher Mathematics or the UK Advanced Levels), that would be the ideal solution.
You can also look at Schaum's series at this level (search them on Amazon). Some useful books are Schaum's Basic Mathematics, Intermediate Algebra, Precalculus, and Calculus. These have the advantage that many problems are solved and the text is completely waffle-free. I myself enjoyed working through Schaum's Calculus whenever I had to brush-up my calculus skills in the university.
Yet another option is to go through the texts by "Art of Problem Solving" (https://artofproblemsolving.com/). From what I have seen so far, these are beautiful texts that stress on improving your problem solving skills along with acquiring technical knowledge. However, I haven't taught from these, so I can't vouch for how the learning experience with them will be like.
I was once in your shoes. Here are the books that helped me out of that spot. I recommend them in this order.
1/ Geometry and the Imagination. Yes, it's geometry. Yes, it's written in a somewhat older style. No, it doesn't do a lot of hand-holding. But if you can spend the time to really understand the dazzling intellectual fireworks going on there it will reward you with a very strong intuitive understanding of a lot of practical mathematics. The key goal of this book was to teach insight and it totally hits the mark.
2/ Contemporary Abstract Algebra by Gallian. This helped me learn more of the language of modern mathematics, so I could be more comfortable approaching recent developments in my field. It is an approachable, not-excessively-rigorous text and again, emphasizes intuition over deep rigor. Even if you don't really need abstract algebra, I'd recommend this book.
3/ Proofs From The Book. This is a brief survey of a selection of especially elegant and beautiful proofs. This is partly valuable for the immediate facts you'll learn-- I have surprised coworkers with a solution to a seemingly difficult problem that closely mirrors something in here more than once-- but is mostly about understanding mathematical standards of beauty and why proofs might be structured the way they are.
4/ TEA's problem solvers for whatever you actually need (calculus, etc). These books are just piles of worked out problems. Personally I found it useful to study several of the hard problems, understand the mechanics of solving them, and then go back to the easy ones and make sure I could work all the way through them without error. In my opinion, combining this practical and detail-oriented legwork with the above theoretical material helps avoid fooling yourself into thinking you can solve problems you really can't.
I'll caution that in math there is no substitute for hard work. Where in programming being lazy is often a virtue, learning math was something that I really had to grind through even when I was enjoying it. It's just a guess, but I suspect the same might be true for you; best to expect it.
As a counterpoint, I have decent math chops and even do a lot of computational geometry professionally, and I really wanted to like "Geometry and the Imagination"—but for me I was till missing way too much information to figure out what he was saying half the time (much of because of the antiquated style), and after putting lots of work into some section I'd get to the end and be like, "this is kinda neat, but it's not rockin' my world or anything..." (to be fair, I did only make it halfway into the second chapter, on lattices iirc, and the later chapters did look more interesting).
I would definitely not recommend it for someone working on high school level math. If I had made an attempt at that in high school, being told it was something I should be capable of then, I probably would have totally given up on any ideas I had about being able to do math well.
If you look at a lot of reviews for math books, you'll find there is a major split between folks who, on one side, believe a math book should should be a sort of pure, elegant, perfect thing with barely anything in it but statements of definitions, theorems and proofs. It should be difficult above all. There should be no trace of how the contents within it came to be, just a pure presentation of some set of mathematical truths. The other side values pedagogy. The mathematical results in themselves are not considered sufficient on their own to be good teachers; instead, attention must be paid to the psychology of one's readers, and in consideration of it, the best route for making contact from the reader's knowledge to the author's must be taken. A typical trend is that the presentation includes context on why and how the results were developed.
I've seen a similar split in CS, and I can say at least here, that I haven't seen any correlation between those insisting on doing everything the hard/austere way and doing interesting/technically impressive work. That said, I haven't personally done anything particularly impressive in mathematics, so I'll refrain from making too strong a comment about the necessity of any particular pedagogical style in that realm.
But I would bet two things: 1) We lose many folks who could have become good mathematicians because they were freaked out by the sort of attitude and presentation making up the first half of the 'split' I describe above 2) It is probably significant that not all excellent mathematicians choose the trial by fire pedagogical approach in their own works.
Hmm. The books I put up here are frequently criticised for focusing on pedagogy at the expense of rigor. So I'm not sure what to say to that.
Overall I agree that too much of mathematics is obfuscated. Whether that's because it makes the author sound smart or because excellent prose isn't a big timesaver for a reader who has to grapple with a complex proof anyway I don't know. Could be both.
But I will reiterate is what I said above: deeply understanding an unfamiliar result or method often is irreducibly hard work that simply must be ground through. That's no reason to make simple things needlessly hard but when it's time to work through something tricky, well, people should expect to spend some time on it. Importantly, they should not feel stupid or bad at math when they have to do so, which I think is probably the thing that loses us the most mathematics besides obfuscated intro calculus.
While I love calculus made easy, I do think that someone interested in programming has more from a discrete math book then a calculus book. Or even a statistics book or linear algebra before calculus. We’re Lang is always great though, and his Basic Mathematics book is excellent as a first book to relearn math.
I think pre-university math should focus on algebra and univariate calculus. Also sophisticated freshman programs focus on linear algebra and multivariate calculus and analysis. See e.g. Math 55a/b at Harvard.
You do need calculus for non-trivial statistics and even for some topics of discrete mathematics where continuous approximations are useful. For example Stirling's approximation [1] which if I recall well is on the first page of McKay's Information Theory, Inference, and Learning Algorithms.
I think that if we talk about more modern approaches for mathematics, logic, type theory and interactive theorem proving could be great. I've been toying with this idea for teaching a course, but I haven't found suitable materials.
I wrote a book which would be a good fit for you (math review for adult learners): No Bullshit Guide to Math & Physics. It covers high school math, calculus, and mechanics. Preview here: https://minireference.com/static/excerpts/noBSguide_v5_previ... (I wrote it for students, but adults, and techies seem to really like it too) Available on lulu.com/shop/ and the Amazons.
Also, +1 to other comments that recommend solving exercises/problems. It's very easy to fall into the trap of "I already know this" when reading math, so always good to try things out on your own and, literally, exercise those new knowledge pathways.
I'm glad you asked this question, and you worded it so well. I'm in the exact same position and I was having trouble articulating my frustration. I've done some Khan Academy but it's not congruent with my learning style I guess, I'd like to find the right textbook for me.
The comment you replied to received loads of responses, and many of the answers ignored the actual request, and plugged their favorite math books instead. In case you missed it, there was at least one suggestion that gave a real answer to the question: 'Basic Mathematics' by Serge Lang[1]. It's a streamlined but somewhat dry textbook that starts with the properties of arithmetic and ends with precalculus. You might try reading through the table of contents to get a better idea of whether or not it will solve your problem!
Khan Academy has a lot of nice things going for it, but it seems like there's a lot more presentation than there is practice. I don't care about the gamification of learning. The practice problems, of which there are only a few, are wrapped up into an interactive UX. I just want a bunch of problems and solutions that I can work through.
Thanks for the recommendations, obviously the title of your book appeals to me. I will check them out.
As someone who wanted to redo my mathematical foundations and go onto higher maths, I tried (and failed) many different approaches. Eventually I found that New Math books worked for me. I'm about 70% through the www.elementsofmathematics.com course, which is derived from New Math, and loving it. Warning: it's about 3 years worth of work at a normal pace, and covers 6th-12th grade (through precalc, though you get some abstract algebra and number theory too).
I have not used it personally (and am not affiliated) but I've heard good things about ALEKS. It provides an adaptive learning path that supposedly adjusts to you as you master topics. Now that I think about it I think Kahn academy might have a similar feature. For personal use ALEKS has a subscription plan that provides access to their whole catalogue.
I can highly suggest "What Is Mathematics?" by Courant, Robbins and Stewart.
You don't have to read it cover to cover, but this is the book that will be very helpful in shaping the right perspective.
As a side note, a friend of mine gave it to me in high school. It was probably the book that influenced me the most mathematically. I ended up getting a PhD in math last year.
I like this book too, but I'd say for a typical reader it's more like something you'd want after getting to the point where you're caught up and ready for university mathematics. It's a fairly demanding book. I'd recommend checking reviews on Amazon or something to get more perspectives before diving in.
It is a demanding book -- I never got to really finish reading it cover-to-cover -- but it's very helpful nonetheless even if one reads the parts they find easy.
For example, the first dozen pages on Calculus have imparted a better understanding of the subject than all the indecipherable (if only due to sheer volume) tomes of Stewart. It was an invaluable boost.
I can recommend Gilbert Strang's "introduction to applied mathematics".
It is a great overview of calculus and linear algebra, leading up to PDE and chaos theory. It starts with the discrete models (kirchoff's law on graphs) and then moves on to continuous models as an approximation of the discrete case, which is quite neat.
Take it at your local community college. I’m about to finish a summer session of algebra 2 and I have learned much quicker and more thoroughly than when I attempted with online resources, or books. I highly recommend it!
Are you finding yourself having difficulty in programming due to weakness in math?
I never liked math that much, but as a professional programmer I don't typically find that the programming I do requires any advanced math.
If your job needs math, learn that math. If your job doesn't need math, there's not a lot of point in learning it because you will forget it again due to non-use.
I don't remember any calculus for example, because I've never needed it since I've been out of school.
If what you want is math for computer science, then I recommend Knuth's TAOCP, and its cousin Concrete Mathematics. This is not traditional math, but math applied to CS problems.
I hated math when I was in secondary-school, but loved computers so did a computer science course which was heavy-ish math in its final year.
Passed that course and now am in a pretty decent programming role, but I feel like my maths is just built on such a shaky foundation that I maybe could improve my programming and problem solving if I solidified the base.
Is there any one text book I could get which would teach me up to that level of Math?
I suspect no, because Math is so broad, but generally if I could get an entire pre-university schooling in Math I would be very happy.