This is a very good book on programming styles, a crucial aspect of programming that is not given enough importance. The author has taken her inspiration from the book by French writer Raymond Queneau. In his book, Queneau writes the same story in different literature styles. In her book, Lopes follows the same method; she codes and explains different coding styles in the same program.
The book has 33 chapters. Each chapter introduces a different style. The coding styles in the book are given very creative and explanatory names, such as kick forward, passive aggressive, pipeline, cookbook, and MapReduce.
Every chapter has six or seven sections: constraints, a program in the style being discussed, commentary, this style in systems design (only some chapters include this), historical notes, further reading, and a glossary. The chapter starts with the constraints of that programming style. In the second section, example code that is written in Perl with the corresponding programming style is presented. The third section provides commentary, which explains the style step by step, introducing the variables and the program glow. It also mentions which programming languages this style can be applied to and what kind of algorithms can be written with this style.
The fourth section informs the reader about the applicability of the style to systems. This section does not exist in the chapters that have programming styles that cannot be applied to systems design. The historical notes section gives information about the origins of the style. For example, the good old times style takes its origins from the Turing machine. The further reading section lists recommended papers and books about the style for readers who want more information. The glossary provides definitions of the words used in the chapter.
The language of the book is very clear and well written. Sentences are short and easy to understand. The examples in the book are from Pride and prejudice and the Gutenberg collection, which is valuable in making readers learn and remember great literature. In computer science (CS) books, naming conventions have always been kept very simple, such as “Hello World” programs or foo functions. This book goes beyond that tradition by naming the styles in a creative way (as mentioned above) and having literary examples.
I highly recommend this book to CS students and professionals. CS classes mostly focus on one programming language, such Java or C. With this approach, students put their energy into learning the syntax of the programming language and miss seeing the bigger picture that is generic to all programming languages, such as different coding styles. This book fills this gap by illustrating 33 programming styles.
More reviews about this item: Amazon