Top Computing Theory Book Choices 
Written by Kay Ewbank  
Monday, 23 March 2020  
Page 1 of 3 It's one thing to learn to program in a particular language, but quite a different skill to learn the theory that underpins programming and computer science more generally. The books in this collection in their own way all provide a grounding on the theory of computation  the ideas that you need to be able to reason about a programming problem, concepts of what can be computed, and the theory of what a computer language the way it is. If you make a book purchase accessing Amazon via a link to it on IProgrammer we are credited with a few cents  so thanks to all of you who support us in this way. The Art of Computer Programming, Volume 4, Fascicle 1Author: Donald E. Knuth If you are waiting for the later volumes in Donald Knuth's The Art of Computer Programming then the slim "fascicles" are all you can get at the moment. These are essentially preprints of bits of the work that Knuth has finished. Think of them as proof that the project is still on going, is Mike James' advice, who gave this one a maximum five star rating. The topic covered is bitwise techniques and binary decision diagrams, which Mike says might tempt you to believe that you knew everything there was to know about both subjects. However, he says don't be fooled, you will find much that you had no idea existed in the first part of this book. It is worth noting that there isn't very much to this already thin book when you take away the exercises and the solutions to the exercises  about 70 pages. All worth tackling, however, and if you like puzzles of any sort the book is also great fun to read. Understanding ComputationAuthor: Tom Stuart This is a book for Ruby enthusiasts who want to know more about computer science, according to Mike James, who gave the book 4 stars. He says the clue to the subject matter of the book is the subtitle: From Simple Machines to Impossible Programs, and that the book is about the hierarchy of theoretical computational machines and things like the halting problem. Mike says this isn't the most logically organized approach to the subject and it certainly doesn't follow a textbook approach. While the chapters hang together to tell a story, it's not complete and you won't find out about complexity classes, for example, so no P and NP. However, overall this is a book Mike enjoyed reading and, as long as you can accept the book's omissions and defects, you might do the same. Computer Science IlluminatedAuthor: Nell Dale & John Lewis This book is a gentle introduction to computer science, says Mike James, and worth a four star rating. Since we reviewed the book there's a newer edition with new material on cloud computing and big data among other topics. Both editions start off with a slowpaced look at computing in a social context and then work their way though number systems, data representation, gates and logic and the overall design of a computer. The pace is slow, but it's about right if you are new to the material. Mike's conclusion was that if you read this book from cover to cover then you will have a good grounding in computing. You will even have a brief look at academic computer science  Turing machines and computability  but only in the final chapter. You also don't really get to learn to program as part of the course but this is supposed to be about computer science. As the basis for a course on the topic of computing it would make an excellent choice. It's also suitable for self study apart from its high price. It is, however, well written, well produced and well supported. The Programmerâ€™s Guide To TheoryAuthor: Dr Mike James As its subtitle "Great ideas explained" suggests, this book sets out to present the fundamental ideas of computer science in an informal and yet informative way. IProgrammer's own Mike James, whose PhD is in Computer Science, explores the concepts that underpin modern computer use, and shows how they provide ways to reason about information and randomness that are understandable without the need to resort to abstract math. Topics covered in the book range from Turing Machines, the Halting Problem and Finite State machines, through lowerlevel concerns such as Boolean logic, information theory and error correction, to deeper dives into computational complexity. All are covered in a very approachable, and even entertaining way. <ASIN: 0321580508> <ASIN:1449329276> <ASIN:1284155617> <ASIN:1871962439>


Last Updated ( Tuesday, 24 March 2020 ) 