> Everything I see from Peter Norvig is just always so incredibly well written and coded. ....
I feel his skill of dividing a problem into small pieces and expressing them in code in a natural way is unparalleled. Most books/blogs/articles I see often focus on one of two patterns.
The most frequent one is pulling in some dependencies and using a high level API, essentially skipping any real problem solving. Great when you just need a problem solved and are familiar with some framework/library but not that great for learning to program or problem solving
The other one is a deep dive into a data structure, algorithm or performance tuning. This is great when studying theory or optimizing. These articles are more interesting but I haven't encountered many people who are in a position where this is relevant to day to day work.
The missing pattern is one where Peters' work shines. The parts in between. All the libraries that are used in the first example I described are the result of someone taking the building blocks that result from the second example and applying them to a real world problem. Peter Norvig is my go to recommendation when someone is interested in becoming better at solving day to day problems because of this.
The following data science book also does a great job of balancing problem solving with underlying theory. https://www.manning.com/books/data-science-bookcamp And it starts with sample-space probability problems in Python, much like Peter’s tutorial.
I feel his skill of dividing a problem into small pieces and expressing them in code in a natural way is unparalleled. Most books/blogs/articles I see often focus on one of two patterns.
The most frequent one is pulling in some dependencies and using a high level API, essentially skipping any real problem solving. Great when you just need a problem solved and are familiar with some framework/library but not that great for learning to program or problem solving
The other one is a deep dive into a data structure, algorithm or performance tuning. This is great when studying theory or optimizing. These articles are more interesting but I haven't encountered many people who are in a position where this is relevant to day to day work.
The missing pattern is one where Peters' work shines. The parts in between. All the libraries that are used in the first example I described are the result of someone taking the building blocks that result from the second example and applying them to a real world problem. Peter Norvig is my go to recommendation when someone is interested in becoming better at solving day to day problems because of this.