Category Archives: book review

Book Read : The Practice of Programming

Phew!
I read a book. Complete. End to End.
It is in my morning travel time, thanks to the 17 kilometers I need to travel everyday one side, increasing my carbon footprint(or is it natural gas?), that I have started to devote time to reading.

Motivation:
I have access to a library that boasts of some timeless titles.

I can quote just one part from the book that I really liked.It refers to the ways of Debugging-Explain your code to someone else.
It states:
“One university computer center kept a teddy bear near the help desk. Students with mysterious bugs were required to explain them to the bear before they could speak to a human counselor.”

These precious gems are already jotted down by someone who likes this book here.

What I would want to put across here is the quote which the authors have chosen to convey the essence of each chapters:

Chapter 1 : Style

It is an old observation that the best writers sometimes disregard the rules of the rhetoric. When they do so, however, the reader will usually find in the sentence some compensating merit, attained at the cof violation. Unless he is certain of doing as well, he will probably do best to follow the rules.

-William Strunk and E. B. White, The Elements of Style.

Chapter 2: Algorithms and Data Structures

In the end, only familiarity with the tools and techniques of the field will provide the right solution for a particular problem, and only a certain amount of experience will provide consistently professional results.

-Raymond Fielding, The Technique of Special Effects Cinematography.

Chapter 3: Design and Implementation


Show me your flowcharts and conceal your tables, and I shall continue to be mystified.
Show me your tables, and I won’t usually need your flowcharts; they’ll be obvious

-Frederick P. Brooks, Jr., The Mythical Man Month.

Chapter 4: Interface

Before I built a wall I’d ask to know
What I was walling in or walling out,
And to whom I was like to give offense.
Something there is that doesn’t love a wall,
That wants it down.

-Robert Frost, Mending Wall.

Chapter 5: Debugging

bug.
b. A defect or fault in a machine, plan, or the like. orig. U.S.
1889 Pall Mall Gaz. 11 Mar. 1/1 Mr. Edison, I was informed, had been up for the two previous nights discovering ‘a bug’ i his photograph–an expression for solving a difficulty, and implying that some imaginary insect has secreted itself inside and is causing all the trouble.

Oxford English Dictionary, 2nd Edition.

Chapter 6: Testing

In ordinary computational practice by hand or by desk machines, it is the custom to check every step of the computation and, when as error s found, to localize it by backward process starting from the first point where the error is noted.

-Norbert Wiener, Cybernetics.

Chapter 7: Performance

His promises were, as he then as, mighty;
But his performance, as he is now, nothing.

Shakespeare, King Henry VIII.

Chapter 8: Portability

Finally standardization, like convention, can be another manifestation of the strong order. But unlike convention it has been accepted in Modern architecture as an enriching product of our technology, yet dreaded for its potential domination and brutality.

-Robert Venturi, Complexity and Contradiction in Architecture.

Chapter 9: Notation.

Perhaps of all the creations of man language is the most astonishing.

-Giles Lytton Strachey, Words and Poetry.

No doubt, the book needs to be read again atleast twice to imbibe by its sayings.
A similar java specific list can be found from Effective Java.

This is something to get used to and keep with oneself always.
~rohit.