About This Book
This book teaches the reader about the fundamentals of computer programming without bogging them down with how a single language works at the same time. It uses pseudocode examples throughout that are very clear to read and understand. It starts with a high level view before giving the nuts and bolts and then backing up again for a clearer view.
Who is This For?
This book is for the brand new programmer who wants a deeper understanding of the concepts behind the code. The author mentions in the preface, and I fully agree, that this book is useful for students entering university to study computer science. Other use cases are brought up, but I think this is the most important one. The very first section of the preface mentions that students are learning two major aspects of programming at the same time in their introductory courses: the fundamentals of programming and the programming language. This book takes care of the first so that the student can better focus on the later.
Why Was This Written?
Most programming books are about how a single programming language, or maybe a single programming paradigm, works. This book takes the language out of the equation and looks at the fundamentals of programming using very clear pseudocode. There are language discussions as well as a primer for turning the pseudocode into working code, which brings readers back full circle to something that they actively can use.
This book is organized with a preface, three sections, and two appendices. The main body of the book starts with an introduction to how programs work and how projects are typically organized, moves on to the constructs that make up any modern programming language, and finishes with programming best practices. The book ends with two very important sections on how to translate the pseudocode into one of six modern and popular languages and a dictionary/glossary.
Did This Book Succeed?
This book easily succeeds at its goals. The reader will have a solid understanding of how a program works and a much easier time picking up a specific programming language. Universities with computer science departments would do well to recommend this text to any of its incoming freshmen. Anyone learning how to program on their own needs this book, also, if they want an easier time with learning a language.