Software Engineering discussion
Beautiful Code
>
The Most Beautiful Code I Never Wrote
date
newest »
newest »
The analysis presented by Jon Bentley would be a great way to structure an algorithms class for undergraduates. I recall in the mid 1980s the prof just jumping right into the theoretical mathematical proof and promptly lost me. A hands-on "Mountain Dew" approach would have led me to "see the code, do the code, be the code" like he presents in this chapter. All of the fundamental sorts and searches should be taught in this way.
After three chapters in this book I believe Beautiful Code should be the textbook for advanced students - upper class or graduates. Two chapters per week for the semester. The point is to show that coding up to this point has been "enough to get by" but each of us could do better. By studying and practicing these code examples would lead to better thinking and more likely to reach the level of mastery rather than just experienced journeyman.
Contrast observations versus: "Masterminds of Programming"1) Read speed: I find my self trying to read through this book at the same speed as the previous book, but then I end up going back. This book reads much more like a math class book where a few pages takes a long time to digest.
2) This book's topics appear to cover solved problems, but the previous book discussed open problems.
The idea of this being a class text book is great. It certainly gives a different type of approach than I received. I was relearning quicksort with this chapter. I liked part about the B-tree being a point in time of quicksort.


I also enjoyed reading the applied approach to assessing the computational complexity of Quicksort. This is an interesting way to introduce the topic to students, who otherwise might shy away from more theoretical/mathematical approaches.