If there is one thing I do a lot, it’s reading. We Chinese have a saying, “读万卷书不如行万里路”。 The literal translation being, “It is better to have travelled ten thousand miles than have read ten thousand scrolls. (It’s actually not ten thousand miles but ten thousand 里, ‘miles’ just sounds better) In short, it means that practical experience is more important than theoretical knowledge.
Not that I disagree with that, but one can still learn a lot from reading. To quote Isaac Newton,
“If I have seen further it is by standing on the shoulders of giants.”
There are a lot of giants we can learn from, along with wisdom from others’ life experience:
Authors: Steven Halim, Felix Halim
Genre: Algorithms, Competitive Programming
NOTE: There is a 3rd edition of the book available. I strongly recommend you to purchase the 3rd edition instead of the 2nd edition, as it contains more content than the 2nd edition, along with updates from the feedback of several batches of students in the CS3233 module at NUS.
This is one of the few technical books that I have read cover to cover, and certainly one of the most valuable books I own. It contains working C++ code of many computer algorithms commonly seen in programming contest problems, and covers some rather unconventional algorithms, data structures and problem solving methods that you probably will not encounter unless you have dabbled in competitive programming. And you must dabble quite seriously in it to attain the knowledge contained in this book, as both of the authors did.
This book is a very solid introduction to competitive programming, and will really stretch your mind especially if your daily programming work is not too algorithmic. To give a rough idea of what I mean by stretching your mind, here is a list of 10 of the algorithms / data structures covered, among the many:
The above is just a short list of what you will be learning. Of course, you will have to do some of the recommended UVa Online Judge problems to get the most out of this book. Felix Halim, one of the authors of this book, has a site here (http://uhunt.felix-halim.net/) which will help you greatly should you choose to take up this quest.
Oh, and did I mention, I got this book for 20SGD (20 Singapore Dollars). Knowing how good it is, I will gladly purchase it even if it costs 70USD, which is the standard price of a Computer Science book.
As an update, the authors have kindly made the first edition of the book freely available. Go to the book site, and find the link under the “Selling Price (eBook)” row for the first edition, or click here to download it. If you like it, go purchase the 3rd edition and support the authors’ work!!!
Authors: Koh Khee Meng, Tan Eng Guan
A very gentle introduction to the field of combinatorics, with emphasis placed on intuition, understanding and application over formal proofs. There is not much prerequisite knowledge required, except for basic high school mathematics. This book was probably written for upper secondary / junior college students in mind (15 to 18 years of age).
Table of Contents:
Author: Alex Reinhart
Seeing how I understand the big ideas in this book but some parts still leave me in a daze after my second reading, I think I am currently quite ill-equipped to write a review that will do justice to this book, but I shall do it anyway - I’ll just do up a better one when I gain more knowledge in Statistics.
Have you ever found yourself in the following scenario?: Say you’ve read a news article about a research finding which claims that food \( A \) provides a health benefit \( B \). Some time later, a different team of researchers claim that this same food \( A \) does not provide health benefit \( B \). On top of your surprise, you wonder why the two scientific studies show contradictory results. Is one team of researchers correct and the other wrong? Could it be possible that one of them is lying?
If your answer to the above question is yes, then Statistics Done Wrong is the perfect book for you - it illustrates some of the most common mistakes in Statistics that occur in scientific research. If you’re like myself and do not come from a hard science background at the undergraduate level and beyond - you might be pleasantly surprised to find out that that Statistics is used very heavily in scientific research. If you have some Statistics background, you will realize that some of the mistakes made by scientists are extremely fundamental and obvious to even a beginner in Statistics - ok, I have to admit, it has to be a very thoughtful beginner who has made the effort to learn the subject rigorously. And apparently, the mistakes highlighted in this book are the more fundamental ones - scientists do make more complex mistakes in Statistics. This paints a rather dismal picture - if Science could be wrong, what about everything else?
But don’t worry too much, for there are scientists who do realize that and are pushing for more rigorous Statistical methods in scientific research - this book is one such effort. Are you a scientist yourself? Read this book. Do you have a friend who’s a scientist? Give him/her a copy of this book.
To spoil things a little bit for you, these are probably the top 3 recurring themes in this book:
There are a few more recurring themes but I shall not spoil the fun for you =)
If you are someone who has to deal with data in your day to day work, unless you already have substantial expertise in Statistics, at least at the graduate level, I believe that this book will make you question a lot of the assumptions and decisions you’ve made and will be making when it comes to data - quite likely it will shake your “belief system” to its foundations. I may be talking trash here but I’ll still say this: I think this book has never been more important, given how much hype the whole data movement has built up, because more and more people are going to get into a data related field not knowing what they’re doing and they will make a lot of mistakes that are highlighted in this book. Are you someone who works in a data intensive field? Read this book. Have a friend who works in a data intensive field? Give him/her a copy of this book. I sincerely thank you for it.
If there’s one thing you’ll get from reading this book, you will probably walk away doubting the validity of new scientific breakthroughs, especially for spectacular breakthroughs - at the very least, in cases where it applies, you will wonder if the stated effect size is exaggerated.
Do note that even though there’s a free copy of the book on the accompanying website http://www.statisticsdonewrong.com/, I’ve briefly browsed through it and some of it differs from the hardcopy that I own - if I’m right, the hardcopy is more up to date and has slightly more content. So do buy a copy of it and support the author’s work!!!
To understand what I mean, try answering the following questions: