Hacker Newsnew | past | comments | ask | show | jobs | submit | iwansyahp's commentslogin

Location: Jakarta, Indonesia

Remote: Yes

Willing to relocate: No

Technologies:Git, NestJS, Python, Typescript, Java, AWS, Google Cloud Platform, Docker, Kubernetes, Postgresql, MySQL, AWS Amplify, Firebase, NodeJS, Flask, Jira, Clickup, and more

Résumé/CV: available upon request

Email: iwansyahp@gmail.com

I am a software engineer with 6+ years of expertise in designing and developing distributed backend software systems. Proven track record of delivering innovative solutions across diverse domains, including chat systems, social networks, healthcare, loyalty programs, and data ingestion. Proficient in leveraging technologies to drive business growth, enhance user experiences, and optimize operational efficiency.


Location: Jakarta, Indonesia

Remote: Yes

Willing to relocate: Negotiable

Technologies: Java, Python, Clojure, Full Stack Web Development, Android Mobile Development, Product Management, MySQL, NoSQL, Google Cloud Platform, Azure, Firebase, Microservices, and happy to learn new tools and tech as works/projects requirement.

Résumé/CV: http://bit.ly/2OEt3fd

Email: iwansyahp@gmail.com


So for experienced programmers, what is best (at least better books and resources to learn math that 'works'?


Is this book suitable for math self-learning?


There's a set of 2015 lectures to go with it https://ocw.mit.edu/courses/electrical-engineering-and-compu...

There's also the CMU intro to proofs/reasoning lecture notes here https://infinitedescent.xyz/ though you would learn much of this material from the introduction of Apostol's Calculus. The advantage of the CMU lecture notes is the author based it on his findings in evidence based learning IIRC.


Yes.

Out of most math texts, this is very accessible and mind-expanding. Even if you don't get everything on the first pass, you'll come out with a lot of interesting insight into the field.

I don't know your level, but I don't recall anything too insurmountable for someone with a decent base in math.


I took a look at the first four or so chapters and I'm not really a fan of the organization. But I think you could self-study the material and be fine. The introduction of the book explains that it's very focused on proofs, and it feels to me like it's more of an applied mathematics book than it is discrete mathematics (i.e. computer science) book. That's a subtle distinction, but I'd summarize it by saying this book feels as if it was written more for math majors than computer science majors. That doesn't mean you shouldn't read it; rigor and formalization are important! It just means that (as I interpret it), the authors are focusing more heavily on mathematical formalization and foundations than most "discrete mathematics" treatments.

For the context of my opinion: my favorite math textbook for computer science is Chapter 1, Section 1.2 of The Art of Computer Programming ("Mathematical Preliminaries"). That's pretty dense though, so I usually recommend Concrete Mathematics, which was also (co)authored by Knuth. The benefit of Concrete Mathematics is that it spreads the information out with more examples and better exposition. It also includes an expanded section on probability. But in my opinion, the failing (if you could call it that) of both is that there isn't a dedicated section on set theory. I really think that should be covered alongside the introduction to various types of proof.

Which brings me back to this textbook...I personally think it spends too much time building logic and proof machinery in the first chapter. Sets and functions have sections that are only pages long, but there is a large focus on logic. I understand it's a mathematics for computer science treatment and not a pure mathematics treatment, but that's actually pretty dry in my opinion - I think a treatment that focuses more on sets is more intuitive. One of the things I like about Knuth is that he covers these topics in a slightly irreverent and humorous way. He also engages the reader by jumping more directly into arithmetic operations, functions, basic number theory, the binomial theorem and combinatorics, etc.

Some of this is admittedly my own bias. I've never enjoyed staring at things like e.g. truth tables. It's important to know, but this actually seems excessively formal for a discrete mathematics course. Reading through the algebra of propositions isn't exactly riveting. I think that, for self-study at least, exposition and organization of topics is just as important (probably more so) than complete coverage of topics. All of the material you'd want to know is there, it's just that the treatment might be a bit suboptimal for self-study. It probably depends on what you find interesting and how quickly you'd like to do interesting things with what you're learning. It would probably also be beneficial if some people who have actually learned from this textbook for their first encounter with the material could chime in, because that might be more relevant to your question.


One discrete math book I liked was this one https://cs.wheaton.edu/~tvandrun/dmfp/

It's heavy on sets and functions, turning sets into types to manipulate in Standard ML so the reader can understand what's going on intuitively. I also liked Knuth's crash course in The Art of Programming and it is hard to read other books when you're used to Knuth's clear and precise explanations mixed with dry humor keeping you engaged.


I'm guessing you have a very strong math background if you are suggesting Concrete Math to a random person asking about self-teaching.

Concrete math requires MUCH more background than this book. Besides the real gems and clever tricks Mathematics for Computer Science appear after the fourth chapter.


Really? What background do you think Concrete Mathematics needs?


Hi guys, thanks for the response. I think I will use this book for self-study and learn part that looks interesting for me.


I've read the probability part a couple of years ago to make up for missing formal knowledge, and it was easy to grok and helped me.


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

Search: