Live data from Hacker News

A Programmer's Introduction to Mathematics

jeremykun.com

191–200 of 223 posts

Re: A Programmer's Introduction to Mathematics

#191
post #139

I have a genuine question which might sound dumb but I really do wonder. How do you actually read math, physics and programming books? Reading them the same way as you'd read a novel doesn't seem right. I try to go chapter after chapter and make notes but I often get bored because I don't see the usage in my real life coding. Maybe I'm not working on problems that are challenging enough? Also after few chapters it of…

I try and write a tutorial about a subject-chunk - the kind of tutorial that i think would have made sense to me if I'd read it before writing it. you have to suspend the obvious fact that by writing the tutorial you've learnt more and probably wouldn't have understood it at the beginning anyway but let that go for a while.

part of writing the tutorial is exercises - i like a stripped down flash card system. i try and do random-10 as regularly as possible. at the beginning, there's lots of jargon with scripted answers (ie, what is a blah?) but after a while you can move those to the back and you're left with some multi-step questions - over time (because i'm not trying to memorise the answer pattern) i find that i internalise a kind of narrative that uses the concepts/jargon to grope my way to the answer ie, hmmm looks like an aqueous equilibria question, probably need the equilibrium expression (jot that down) and HCl is a strong acid, so i can ignore those two terms and oh look... there's the answer if I just do this and that. Over time, it's the 'groping for an answer' that sticks as a habit of thought and seems to be quite robust. having said all that, i'm craphouse at maths but i'm hoping to get into one day.

Re: A Programmer's Introduction to Mathematics

#192

I am a huge fan of Jeremy's blog. Found his primers on a multitude of topics very useful - https://jeremykun.com/primers/ As a Math guy who got into the world of programming relatively recently, I am on the opposite side of the spectrum I suppose but I'm gonna order this nonetheless to support him.

Would you read "A Mathematician's Introduction to Programming"?

Re: A Programmer's Introduction to Mathematics

#193
post #168

> The problem is that the culture of mathematics and the culture of mathematics education--elementary through lower-level college courses--are completely different ... I've had many conversations with such students [...] who by their third year decided they didn't really enjoy math. The story often goes like this: a student who was good at math in high school (perhaps because of its rigid structure) reaches the point…

That's exactly how I felt. I didn't really discover math until college.

Re: A Programmer's Introduction to Mathematics

#194
post #92

Can we get that GitHub solutions repo going? I feel like that's super important for this book. Bought it anyway.

Let's get it started, and initial thoughts, questions, or suggestions can be in Github issues for now.

https://github.com/pim-book/exercises

Re: A Programmer's Introduction to Mathematics

#195

Some comments/corrections on the first chapter, if you don't mind: 1. Theorem 2.4 is stated incorrectly. Given the context, I feel like this is worth correcting. Specifically, it says "degree n" rather than "degree at most n". Part of the proof purports to prove that the degree is indeed n but of course it doesn't because that needn't be true. There are other cases where you say "degree n" for "degree at most n". Aga…

Of course you're right about degree n vs. at most n, with many easy counterexamples (the list (1,1), (2,1), (3,1) being a simple one). If you'd like, please submit an erratum using the link at pimbook.org, and other readers can see it, and I will include the fix in the next version of the book and credit you.

Thanks for reading! ^_^

Re: A Programmer's Introduction to Mathematics

#196

I'm a little skeptical of CreateSpace. Why did you decide to self-publish?

I actually used to work for CreateSpace! I think they do a splendid job on the printing, and the royalties are much better than a publisher. I think I will write a longer blog post with more details.

Re: A Programmer's Introduction to Mathematics

#197
post #47

From the bit I've read from https://pimbook.org/pdf/pim_first_pages.pdf it seems to be very very poor. * 19 pages of droning before you start with something concrete. Much talk talk talk about your experiences before you get to the point. I can't put into words how much it frustrates me when I'm expecting to read something interesting and the author takes 3 paragraphs talking about nothing (usually with lots of overe…

I am curious how many people the author has taught mathematics to. It doesn't seem a good idea to jump into writing a textbook teaching mathematics unless one has experience of teaching mathematics. But the author makes the very point about early failures of programming, due to lack of experience, so perhaps he can supply information about what his pedagogical experience consists of. Teaching other people is a craft,…

It's a good question, and sort of hard to balance. I don't have any formal training as a teacher, or really a _pedagogy_ per se. I did teach five years of discussion sections among calculus, python programming, and differential equations. I do guest lectures for high school math classes, volunteered with groups like Black Girls Code and Hour of Code. I also did years of tutoring-center style tutoring, which meant I worked with students from the entire math curriculum. One time I even did an impromptu linear algebra course for a group of co-interns when I worked at MIT Lincoln Lab.

So in terms of number of people face to face, somewhere in the low thousands seems right. In terms of writing, my blog has on the order of millions of all-time page views.

I think it's a stretch to call the book a textbook. I think of it as an O'Reilly-type general technical book, but for math. If someone uses it to teach a course, that would be pretty wild, and I'd feel honored.

Hope you enjoy it :)

Re: A Programmer's Introduction to Mathematics

#198
post #78

Earlier quoted context omitted.

Well, two chapters have singular value decomposition and neural networks as the applications. So it does have a lot of ML :) But yes, I unfortunately had to cut a probability chapter. I think someone who reads this book would have a much easier time learning probability after, and a better foundation.

Thank you for this book. There is a huge need for this. It saddens me that schools may be handing out CS degrees without having first required students to at least have taken linear algebra, multivariable calculus, and discrete math that covers basic counting, sets, graphs and groups. How can this be? Probability and statistics should also be a required part of every CS program.

/shrug misaligned incentives probably. Schools are also handing out CS degrees without students being all that good at writing programs either.

Re: A Programmer's Introduction to Mathematics

#199
post #182

Earlier quoted context omitted.

Seconded for this. Going back and taking an actual structured math course at community college after working professionally as a programmer for years was a real eye opening experience for me. So many things that seemed so abstract and meaningless as a 12 year old were instantly apparently useful in an unimaginable number of ways.

What courses did you take?

>What courses did you take?

Nothing advanced, just Trig, Geometry (proofs based), Algebra and Precalculus. Basically what a sharp high school senior in college prep classes would be familiar with. Geometry was probably the best. If you've never encountered formal proofs before, it's probably the best training for pure logic I can imagine. They start out incredibly frustrating but become addictive once you figure out how to crack them. Precalc was insanely useful too. Learning how to build up a function and shape it with various operators, and work with polynomials is absolutely essential for things like graphics shaders and timing functions and all kinds of other stuff that comes up in UI development (my work). All I can say is that it will give you a much greater appreciation for studying the purely abstract rather than always focusing on practical matters that come up in engineering, as well as making apparent more elegant solutions you may have brute forced in the past.

Re: A Programmer's Introduction to Mathematics

#200
post #100
post #91

Earlier quoted context omitted.

> The most annoying things about math books is the lack of solutions. To me the most annoying thing about math books is hand-waving, lack of rigor, and unexplained notation. At least in programming, everything is formal and I can figure out the entire problem by looking at the source.

I think you aren't buying very good math books then. I find the exact opposite: the thing about math books I have read is that they overemphasize rigor at the expense of intuition. Everything is painstakingly illustrated in such great detail that I sometimes see the trees and lose sight of the forest. I feel as if reading proofs and doing problem sets in math books is just manipulating symbols in well-known ways with…

> I feel as if reading proofs and doing problem sets in math books is just manipulating symbols in well-known ways without really understanding intuitively why something must be true.

I have a few thoughts about this. The first is that it is largely up to the learner. Sure, you can just symbolically manipulate things with no real understanding, but no one says you have to stop there (and arguably that's what you should be working on when you read the proof).

The second is that a lot of times the intuition comes later. There was a joke in my school (and I presume others) that you learn algebra in calculus, calculus in DEs, etc. It takes a while to develop that intuition and sometimes just doing it frequently is part of what it takes. I think of it like learning music theory but not really getting it until you've gotten proficient at an instrument.

The third is that some math is just like that. There might be someone somewhere who has some type of intuitive understanding of it, but they are an outlier.

That said, the best learning I've done in mathematics is to take a book without answers in the back and work through it with other people. It's difficult, but very rewarding to really grok the topic and be confident in your answer; and having people you have to explain your solution to helps tremendously.

Post reply on HN