Software Engineering discussion

14 views
Beautiful Code > The Most Beautiful Code I Never Wrote

Comments Showing 1-3 of 3 (3 new)    post a comment »
dateUp arrow    newest »

message 1: by [deleted user] (new)

I enjoyed this chapter. I love the quote "A designer knows he has achieved perfection not when there is nothing left to add, but when there is nothing left to take away." I am currently refactoring some Mathematica code, and I am taking a lot away as I refactor! I think, though, that there are two cautions. Taking too much away can lead to overly terse and unreadable, code. And, there is a cost to polishing code, so the result has to yield a greater economic value than the polishing cost.

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.


message 2: by Steph (new)

Steph (spthomp) | 20 comments 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.


message 3: by Erik (new)

Erik | 165 comments 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.


back to top