TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

A Programmer's Introduction to Mathematics

937 pointsby chocolateboyover 6 years ago

43 comments

threwythrwover 6 years ago
Do the exercises have solutions? The most annoying things about math books is the lack of solutions. A beginner absolutely needs to know whether or not their solutions are correct.<p>The “the reader should know if they are correct” logic doesn’t apply here. A beginner could easily have faulty logic and fool themselves into thinking their solutions are correct.<p>I usually don’t buy math books without solutions if I’m self-studying. Would like to know if solutions are provided in this book. If not, I won’t consider buying it.<p>If this book doesn’t make the cut with a solution manual, does anyone have recommendations on an intro to proofs book with one?
评论 #18579890 未加载
评论 #18579831 未加载
评论 #18580763 未加载
评论 #18579988 未加载
评论 #18579994 未加载
评论 #18581252 未加载
评论 #18583621 未加载
mlejvaover 6 years ago
I have a genuine question which might sound dumb but I really do wonder.<p>How do you actually read math, physics and programming books?<p>Reading them the same way as you&#x27;d read a novel doesn&#x27;t seem right. I try to go chapter after chapter and make notes but I often get bored because I don&#x27;t see the usage in my real life coding. Maybe I&#x27;m not working on problems that are challenging enough? Also after few chapters it often turns into a &quot;job&quot; of finishing the book. I don&#x27;t have the pleasure of learning new stuff anymore.<p>Do you really finish such books? What am I doing wrong?
评论 #18582013 未加载
评论 #18581800 未加载
评论 #18581871 未加载
评论 #18584915 未加载
评论 #18581905 未加载
评论 #18582439 未加载
评论 #18583912 未加载
评论 #18581953 未加载
评论 #18581662 未加载
评论 #18581925 未加载
评论 #18581744 未加载
评论 #18581809 未加载
评论 #18582209 未加载
评论 #18581731 未加载
评论 #18591777 未加载
评论 #18581803 未加载
评论 #18582529 未加载
评论 #18586242 未加载
评论 #18581990 未加载
评论 #18581969 未加载
评论 #18582119 未加载
sjrootover 6 years ago
As someone who works as a programmer but wasn’t super interested in mathematics, I’ve found this blog to be a fantastic read time and time again. I’d highly recommend going through Jeremy’s previous posts if this is your first time seeing his site on here.<p>If this topic piques your interest I would also recommend Mathematics for Computer Science: <a href="https:&#x2F;&#x2F;courses.csail.mit.edu&#x2F;6.042&#x2F;spring17&#x2F;mcs.pdf" rel="nofollow">https:&#x2F;&#x2F;courses.csail.mit.edu&#x2F;6.042&#x2F;spring17&#x2F;mcs.pdf</a>
_Nat_over 6 years ago
To the author:<p>You might want to extend the preview PDF to include a few pages from later chapters. The issue&#x27;s that the [current preview](<a href="https:&#x2F;&#x2F;pimbook.org&#x2F;pdf&#x2F;pim_first_pages.pdf" rel="nofollow">https:&#x2F;&#x2F;pimbook.org&#x2F;pdf&#x2F;pim_first_pages.pdf</a>) only gets into polynomials over its 45 pages. But since polynomials are typically taught to students during early childhood, it seems like most readers are liable to just skim that content, being more interested in the topics discussed later. For example, the start of Chapter 14 (on optimization) would be neat to see.<p>That said, I like the parts that translate between analytical expressions and programming code. Such mappings seem like high-value content to readers; the language barrier can keep people from understanding mathematical writing, while a few helpful translations can help to tear down those language barriers.
评论 #18580752 未加载
评论 #18580733 未加载
评论 #18582212 未加载
alan_wadeover 6 years ago
I really wish this book would include probability and statistic sections. My guess is that a lot of people, like me, will want to read it because they&#x27;re getting started with ML and need help getting used to the math, and probability&#x2F;stats is an important part of it that&#x27;s missing.<p>Any chance you could add it in the future?
评论 #18580614 未加载
评论 #18581406 未加载
评论 #18580740 未加载
评论 #18584008 未加载
Koshkinover 6 years ago
It&#x27;s good to have something that lowers the bar for programmers so they could learn themselves some math without much fear. Knowing math is very important if you are a coder - and not just linear algebra: knowing a formula, for example, might let you do certain things in constant rather than linear time or, perhaps, reduce the cost of the iteration. Unfortunately, too many of those who can call themselves programmers by trade know very little math (you&#x27;d be lucky if they remember what they learned in high school).
评论 #18579783 未加载
评论 #18579733 未加载
评论 #18581781 未加载
评论 #18579759 未加载
EGregover 6 years ago
I was teaching a college class for high schoolers last year and thought it would be great to record my lectures for them. Then I put it up as an entire youtube channel for everyone:<p><a href="https:&#x2F;&#x2F;m.youtube.com&#x2F;channel&#x2F;UCuge8p-oYsKSU0rDMy7jJlA" rel="nofollow">https:&#x2F;&#x2F;m.youtube.com&#x2F;channel&#x2F;UCuge8p-oYsKSU0rDMy7jJlA</a><p>It basically builds up mathematics rigorously from basic definitions, while trying to stay very accessible.<p>If anyone has the time, or desire to learn math this way, let me know what you think, and if I should make more in this series!
yantramsover 6 years ago
I am a huge fan of Jeremy&#x27;s blog. Found his primers on a multitude of topics very useful - <a href="https:&#x2F;&#x2F;jeremykun.com&#x2F;primers&#x2F;" rel="nofollow">https:&#x2F;&#x2F;jeremykun.com&#x2F;primers&#x2F;</a><p>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&#x27;m gonna order this nonetheless to support him.
评论 #18585642 未加载
aargh_aarghover 6 years ago
Hmm, the &quot;first few pages&quot; end just before the &quot;meat&quot; begins.<p>From the table of contents, there seem to be short prose sections inteleaved with the teaching sections. I hoped to see an example of the teaching section, not the prose.
评论 #18579705 未加载
评论 #18579669 未加载
bootszover 6 years ago
&gt; <i>The problem is that the culture of mathematics and the culture of mathematics education--elementary through lower-level college courses--are completely different ... I&#x27;ve had many conversations with such students [...] who by their third year decided they didn&#x27;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 of a math major at which they must read and write proofs in earnest. It requires an earnest, open-ended exploration they don&#x27;t enjoy.</i><p>I found this interesting because I too discovered this difference in approach but had the complete opposite reaction. I absolutely <i>hated</i> math in middle and high school. It wasn&#x27;t until I took a discrete math course for my CS program that I got exposed to dealing with real proofs, which I found required a level of creative thinking, and I totally loved it. This admittedly wasn&#x27;t an &quot;advanced&quot; university math class, but the difference from high school math was still quite stark.
评论 #18585652 未加载
mkageniusover 6 years ago
Nice.<p>I tried to start something similar which tried to explain all weird maths symbol via code. It went nowhere.<p>But feel free to check <a href="https:&#x2F;&#x2F;github.com&#x2F;mkagenius&#x2F;mathsymbol2code" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;mkagenius&#x2F;mathsymbol2code</a>
newnewpdroover 6 years ago
What&#x27;s provided currently at [1] doesn&#x27;t provide the reader with any impression of the teaching style or quality&#x2F;quantity of visual aids.<p>I&#x27;m very likely to buy a hard copy of such a book, but not unless I can do the equivalent of flipping through it like I would in a book store.<p>Consider changing the preview instead to a scattered sampling of some of your proudest pages.<p>[1] <a href="https:&#x2F;&#x2F;pimbook.org&#x2F;pdf&#x2F;pim_first_pages.pdf" rel="nofollow">https:&#x2F;&#x2F;pimbook.org&#x2F;pdf&#x2F;pim_first_pages.pdf</a>
jamestimminsover 6 years ago
On a related note, I&#x27;m curious if anyone has taken the Mathematics for Machine Learning (<a href="https:&#x2F;&#x2F;www.coursera.org&#x2F;specializations&#x2F;mathematics-machine-learning" rel="nofollow">https:&#x2F;&#x2F;www.coursera.org&#x2F;specializations&#x2F;mathematics-machine...</a>) courses on Coursera, and whether it really covers enough to be comfortable with ML. The course bills itself as enough math knowledge for folks who barely remember high school math.
评论 #18579832 未加载
评论 #18582022 未加载
评论 #18579925 未加载
armatavover 6 years ago
Can we get that GitHub solutions repo going? I feel like that&#x27;s super important for this book. Bought it anyway.
评论 #18585717 未加载
评论 #18581987 未加载
baron816over 6 years ago
I’ve found myself unable to do even elementary maths recently just because I’m sorely out of practice. Hasn’t really affected my performance as a programmer. Wondering, what kind of math I could learn that would benefit me in my job?
评论 #18579892 未加载
评论 #18581541 未加载
beefsackover 6 years ago
It appears the ebook is in PDF format[1], does anyone know if an EPUB will become available?<p>[1]: <a href="https:&#x2F;&#x2F;gumroad.com&#x2F;l&#x2F;pim-book" rel="nofollow">https:&#x2F;&#x2F;gumroad.com&#x2F;l&#x2F;pim-book</a>
评论 #18581704 未加载
mrcartmenesover 6 years ago
It’s a shame you don’t get to read any of the actual maths in the sample pages. Otherwise I might have been able to evaluate whether I want to buy this book. Intros don’t really tell us much
febinover 6 years ago
I have been searching for something like this for a while. Just bought the book, I will get back to you. I hope the book will give me exactly what it promises.
评论 #18579618 未加载
oblibover 6 years ago
I&#x27;ve been wanting to peek into mathematics and an &quot;introduction&quot; is exactly what I need.<p>Thank you for sharing this.
评论 #18579708 未加载
madhadronover 6 years ago
I would be interested to see someone post their experiences after working through at least half of the book. I am completely outside the target audience, and it would be really useful to know what works to teach mathematics to programmers and what doesn&#x27;t.
dhodgesover 6 years ago
Long-time programmer without a CS degree here. I&#x27;ve studied polynomial factoring, adding, subtracting, graphing them, etc. Sites like Khan Academy break things down in little bits but the underlying theory seldom emerges. But after working through the preview pages of this book I feel like I finally have a feel for some of the underlying theory ideas behind polynomials. This really emerged during the proofs section. The bits of code and analogies to programming really help. It was like a lightbulb going off in my brain. As a result I have ordered the book from Amazon and can&#x27;t wait for it to arrive. Thank you for this book.
bwobstover 6 years ago
I recently started reviewing mathematics on Khan Academy to brush up on my math skills and learn more Calculus so I can better understand ML. Really looking forward to reading this!
paultopiaover 6 years ago
This looks really nice, from the preview content---I really like the approach of explaining the background assumptions of reading mathematical definitions and such. Ordered!
Sniffnoyover 6 years ago
Some comments&#x2F;corrections on the first chapter, if you don&#x27;t mind:<p>1. Theorem 2.4 is stated incorrectly. Given the context, I feel like this is worth correcting. Specifically, it says &quot;degree n&quot; rather than &quot;degree at most n&quot;. Part of the proof purports to prove that the degree is indeed n but of course it doesn&#x27;t because that needn&#x27;t be true.<p>There are other cases where you say &quot;degree n&quot; for &quot;degree at most n&quot;. Again usually this would be a minor error not worth pointing out, but in this context it seems worth getting right.<p>2. At one point you introduce a convention that deg(0)=-1. Later, in the exercises, you ask, is this really such a good convention? (The answer being, of course, no.) IMO you should anticipate this. Indeed I don&#x27;t think you should state, as you do, &quot;By convention the zero polynomial is defined to have degree -1&quot;, because that suggests it&#x27;s some standard universal convention, which is definitely correct, and it&#x27;s neither of those. Rather you should say something like &quot;We&#x27;ll use the convention that the zero polynomial is defined to have degree -1&quot;. But anyway, the point I made is that, if you&#x27;re going to question its correctness later, you should anticipate that here, maybe saying something like &quot;(Think about whether this convention makes sense.)&quot; Or maybe not, and just getting rid of the absolutism of your current wording is sufficient. Either way, getting rid of that absolutism and certainty is good; you want to encourage to people about this sort of thing immediately, not encourage them not to think about it until later.<p>3. You say that when you see a definition you should write down examples. I would add, &quot;and non-examples&quot;. Ideally non-examples that come as close as possible but don&#x27;t quite make it. You touch on this a little with your polynomial examples, but it&#x27;s worth stating explicitly.<p>(In some cases non-examples are unnecessary, but in the generic case one should look for them.)<p>4. Regarding your polynomial examples, you don&#x27;t justify that they are, in fact, not polynomials. Now of course you don&#x27;t, that would be too hard to do here and take up lots of space you want to use for other things. That&#x27;s fine. But if you&#x27;re not going to do it, you should call out that you&#x27;re skipping over it, like you do with other things. After all, all sorts of nonobvious things can be polynomials -- such as (x-1)(x+6)^2, as you pointed out earlier, but included no similar examples here. (Yes that&#x27;s obvious to anyone who knows anything about polynomials, but my point is that it&#x27;s not in the correct syntactic form.) Like, x^e - x^e is a polynomial, you know? Because it&#x27;s 0. So without some more knowledge, you can&#x27;t <i>immediately</i> conclude that your example x + x^2 - x^pi + x^e is in fact not a polynomial! You should make a note of that, as I said.<p>5. I feel like it&#x27;s likely worth noting somewhere in this chapter that actually in general in math it&#x27;s the &quot;syntactic&quot; definition of polynomial that turns out to be the right one (you don&#x27;t want to define polynomials to be functions if you&#x27;re working over a finite field, say!). Maybe not and that would just be confusing, I dunno.<p>6. This is just nitpicking, but I&#x27;d suggest rewriting Theorem 2.3 in a clearer, more standard way. &quot;A nonzero polynomial of degree n has at most n distinct roots.&quot; What you wrote down is equivalent, of course, but (IMO) harder to read.<p>Otherwise, this is pretty nice. I remember being distinctly confused by stuff like &quot;the product over j not equal to i&quot; when I was a kid. I imagine it&#x27;ll be quite helpful to a number of people that you&#x27;re laying things out like that explicitly.<p>Actually, sorry, on that note, one further comment:<p>7. You comment on how sigma and pi notation are special cases of fold, but you might want to make a further note about how (unlike general folds) these are folds where the order doesn&#x27;t matter, and that the fact that the order doesn&#x27;t matter is one of the things that allows notation like &quot;product over j not equal to i&quot;.
评论 #18585749 未加载
40acresover 6 years ago
Thanks for the effort. I purchased the e-book and will start working through it immediately. I&#x27;ll let you know what I think.
codesukiover 6 years ago
Just ordered from Amazon! I used to read his blog a few years ago and I loved the articles and the breadth of topics. Thank you!
hdt91over 6 years ago
From the ToC, is the any reason there is no chapter covering probability&#x2F;statistics? It has chapters for single&#x2F;multivariable calculus and linear algebra, and all CS programs I know have all three, especially when there are some nice connections between them, not to mention how useful they are in other CS&#x2F;engineering subjects.
holmberdover 6 years ago
Ebook a tad too expensive for me.
alan_wadeover 6 years ago
Can you create an EPUB version? I&#x27;d like to buy it but I need EPUB for my reader.
wainsteadover 6 years ago
Please tell me you wrote it in LaTeX. It would be another reason to buy it.
评论 #18580866 未加载
antoinevgover 6 years ago
I tried to buy it but for some reason Paypal refuses to use my existing balance and instead asks for my card.<p>Is this something you can control on your end?
bltover 6 years ago
minor suggestion: make it easier to see the table of contents. A survey book leaves uncertain exactly what is included.
billfruitover 6 years ago
Does it compare to Don Knuth, et al, &quot;Concrete Mathematics: A foundation for Computer Science&quot;?
评论 #18581579 未加载
master_yoda_1over 6 years ago
I think the author is confused. His book is not for programmers his book is for &quot;programmers lacking computer science education&quot; as computer science is a branch of applied match. If somebody says they have a computer science degree and they don&#x27;t know math, I would doubt their degree.
hariasover 6 years ago
I see a lot of users are learning maths for machine learning. I did the same and here is what I found:<p>I started with 3blue1brown&#x27;s Youtube course[0] on Linear Algebra and loved it. I had already done a college course on LA, but this made me truly understand what I was doing.<p>MIT OCW Scholar(independent study) course on Linear Algebra by Prof. Strang[1] is really good and is designed for self-study. If you have the time, you could look up Coding the matrix[2] too. I read probability from Mathematics for Computer Science-MIT[3] and also referred Khan Academy[4] and PennState STAT 414&#x2F;415 [5] for statistics and probability. StatQuest channel[6] on Youtube has handwavy but easy to understand videos on statistics for ML too. The Deep learning book[7] by Ian Goodfellow et al. has a couple of chapters at the beginning that gives you a fairly good idea of the mathematics required to get into Deep learning. Communities like r&#x2F;AskStatistics and r&#x2F;statistics on Reddit were really helpful when I got stuck.<p>I also chanced upon Mathematics for Machine Learning[8] book recently and it seems to be good. It has a chapter on optimization that is left out in most books but it skips statistics.<p>[0] - <a href="https:&#x2F;&#x2F;www.youtube.com&#x2F;playlist?list=PLZHQObOWTQDPD3MizzM2x.." rel="nofollow">https:&#x2F;&#x2F;www.youtube.com&#x2F;playlist?list=PLZHQObOWTQDPD3MizzM2x...</a>.<p>[1] - <a href="https:&#x2F;&#x2F;ocw.mit.edu&#x2F;courses&#x2F;mathematics&#x2F;18-06sc-linear-algeb.." rel="nofollow">https:&#x2F;&#x2F;ocw.mit.edu&#x2F;courses&#x2F;mathematics&#x2F;18-06sc-linear-algeb...</a>.<p>[2] - <a href="http:&#x2F;&#x2F;codingthematrix.com&#x2F;" rel="nofollow">http:&#x2F;&#x2F;codingthematrix.com&#x2F;</a><p>[3] - <a href="https:&#x2F;&#x2F;courses.csail.mit.edu&#x2F;6.042&#x2F;spring18&#x2F;mcs.pdf" rel="nofollow">https:&#x2F;&#x2F;courses.csail.mit.edu&#x2F;6.042&#x2F;spring18&#x2F;mcs.pdf</a><p>[4] - <a href="https:&#x2F;&#x2F;www.khanacademy.org&#x2F;math&#x2F;statistics-probability" rel="nofollow">https:&#x2F;&#x2F;www.khanacademy.org&#x2F;math&#x2F;statistics-probability</a><p>[5] - <a href="https:&#x2F;&#x2F;onlinecourses.science.psu.edu&#x2F;stat414&#x2F;" rel="nofollow">https:&#x2F;&#x2F;onlinecourses.science.psu.edu&#x2F;stat414&#x2F;</a><p>[6] - <a href="https:&#x2F;&#x2F;www.youtube.com&#x2F;user&#x2F;joshstarmer&#x2F;videos" rel="nofollow">https:&#x2F;&#x2F;www.youtube.com&#x2F;user&#x2F;joshstarmer&#x2F;videos</a><p>[7] - <a href="https:&#x2F;&#x2F;www.deeplearningbook.org" rel="nofollow">https:&#x2F;&#x2F;www.deeplearningbook.org</a><p>[8] - <a href="https:&#x2F;&#x2F;mml-book.com" rel="nofollow">https:&#x2F;&#x2F;mml-book.com</a><p>Copied from my comment here: <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=18582022" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=18582022</a>
nootropicatover 6 years ago
The description got me excited, but looking at the table of contents, the level is ultra basic - appears to roughly correspond to first year of a cs degree.
评论 #18579743 未加载
评论 #18579838 未加载
评论 #18579727 未加载
评论 #18579717 未加载
Nasunoover 6 years ago
A section on quaternions would be nice.
herostratus101over 6 years ago
I&#x27;m a little skeptical of CreateSpace.<p>Why did you decide to self-publish?
评论 #18585762 未加载
00067349over 6 years ago
why is it not working
ziontover 6 years ago
I am basically trying to understand the formulas in machine learning papers, will this book help achieve improvements in speed?<p>I just realize I fear math because the educational system I grew up in was violent (like beating kids for getting a quiz wrong wtf).<p>It was only through psilocybin mushrooms did I discover math and calculus again.
评论 #18579984 未加载
mleventalover 6 years ago
Jeremy, been reading your blog for years. Just wanted to say thanks for the wealth of readable intros to interesting mathematics.
评论 #18579936 未加载
liftbigweightsover 6 years ago
I guess this is for the nontraditional programmers since computer science is a mathematical field and programming is simply applied mathematics in some sense. I don&#x27;t see how you could get a CS degree without being competent in mathematics to some degree since CS is a mathematical field.
评论 #18579791 未加载
andrepdover 6 years ago
From the bit I&#x27;ve read from <a href="https:&#x2F;&#x2F;pimbook.org&#x2F;pdf&#x2F;pim_first_pages.pdf" rel="nofollow">https:&#x2F;&#x2F;pimbook.org&#x2F;pdf&#x2F;pim_first_pages.pdf</a> it seems to be very very poor.<p>* 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&#x27;t put into words how much it frustrates me when I&#x27;m expecting to read something interesting and the author takes 3 paragraphs talking about nothing (usually with lots of overexcited exclamation marks).<p>[sorry if I am being blunt, but it&#x27;s how I feel]<p>* Imprecise definitions. This defeats the purpose of learning mathematics. Like Leslie Lamport says, rigour in mathematics is not a hurdle or a chore one must endure, it&#x27;s the whole point of learning the damn thing. You give imprecise definitions, and then <i>obscure it even further with neverending paragraphs of confusing explanations</i>. This to me kills the whole pedagogical value the book might have. Here is a rule of thumb that in my experience applies well to almost everything in mathematics: the simpler your explanation is, the better. Your goal is to explain a concept as succintly and beautifully as possible. This exposes the <i>idea</i> behind it. A long and meandering explanation only serves to obscure the idea behind. Less is more.<p>* Attempting to shoe-horn programming &quot;lingo&quot; into mathematics. Sometimes, the best way to explain something, even to programmers themselves, is not to force an awkward analogy with Java programming. EDIT: 5 pages later: &quot;The best way to think about this is like testing software.&quot; oh boy...<p>* The graph in e.g. page 8 (20 of the pdf) is terribly typeset. The axes text is way too small to read and in a font that doesn&#x27;t match the rest of the content.
评论 #18580369 未加载
评论 #18580456 未加载
评论 #18580401 未加载
评论 #18580406 未加载
评论 #18580278 未加载
评论 #18581093 未加载
评论 #18580243 未加载
评论 #18580227 未加载