Saturday, August 31, 2013
Introduction to Algorithms (Hardcover)
Introduction to Algorithms (Hardcover) |
- Introduction to Algorithms (Hardcover)
- Compilers: Principles, Techniques, and Tools (2nd Edition) (Hardcover)
- Operating System Concepts, Seventh Edition (Hardcover)
- Introduction to the Theory of Computation (Hardcover)
- Art of Computer Programming, Volume 1: Fundamental Algorithms (3rd Edition) (Hardcover)
You are subscribed to email updates from Shield Amz Rec To stop receiving these emails, you may unsubscribe now. | Email delivery powered by Google |
Google Inc., 20 West Kinzie, Chicago IL USA 60610 |
The Art of Computer Programming, Volumes 1-4A Boxed Set
The Art of Computer Programming, Volumes 1-4A Boxed Set |
The Art of Computer Programming, Volumes 1-4A Boxed Set Posted: Since reviews of the book content can be found elsewhere, I thought I'd review the actual collection that I bought - these four books and the box that they came in. They are beautiful, the off-white coloured dust jackets make a pleasing change to the other pure white books that I have on my desk, and the box sets the set apart from everything else. Also, since purchasing this set, the following things have happened. 1) My IQ increased by 1 point as soon as I placed the box on my bookshelf 2) The Women in my IT department increased their rating of me by 1.5. Apparently I'm now an 8 (9 if I take my glasses off) my colleagues report that this is a 0.5 increase in rating over a non-boxed collection of these books. 3) I have found that taking one book out, opening to a random page and inhaling deeply, when combined with a double-shot coffee, will ensure good spirits and coding karma for at least the next 4 hours. My only complaint about this set is the fact that they are fairly snugly fit in the box. this requires actually tipping the box forward to select a book, you cannot fit your finger over the top of any one book to pull it out. The exaggerated action of doing this, however invokes jealous looks and dreamy eyes from my male and female/gay colleagues respectively so is worth it. in short: buy this set! |
You are subscribed to email updates from Shield To stop receiving these emails, you may unsubscribe now. | Email delivery powered by Google |
Google Inc., 20 West Kinzie, Chicago IL USA 60610 |
Friday, August 30, 2013
The Little Schemer - 4th Edition (Paperback)
The Little Schemer - 4th Edition (Paperback) |
The Little Schemer - 4th Edition (Paperback) Posted: |
The Elements of Computing Systems: Building a Modern Computer from First Principles (Paperback) Posted: |
You are subscribed to email updates from Shield Amz Rec To stop receiving these emails, you may unsubscribe now. | Email delivery powered by Google |
Google Inc., 20 West Kinzie, Chicago IL USA 60610 |
Thursday, August 29, 2013
Compilers: Principles, Techniques, and Tools (2nd Edition) (Hardcover)
Compilers: Principles, Techniques, and Tools (2nd Edition) (Hardcover) |
- Compilers: Principles, Techniques, and Tools (2nd Edition) (Hardcover)
- Operating System Concepts, Seventh Edition (Hardcover)
- Introduction to the Theory of Computation (Hardcover)
- Art of Computer Programming, Volume 1: Fundamental Algorithms (3rd Edition) (Hardcover)
- Types and Programming Languages (Hardcover)
You are subscribed to email updates from Shield Amz Rec To stop receiving these emails, you may unsubscribe now. | Email delivery powered by Google |
Google Inc., 20 West Kinzie, Chicago IL USA 60610 |
Wednesday, August 28, 2013
The Elements of Computing Systems: Building a Modern Computer from First Principles (Paperback)
The Elements of Computing Systems: Building a Modern Computer from First Principles (Paperback) |
The Elements of Computing Systems: Building a Modern Computer from First Principles (Paperback) Posted: |
You are subscribed to email updates from Shield Amz Rec To stop receiving these emails, you may unsubscribe now. | Email delivery powered by Google |
Google Inc., 20 West Kinzie, Chicago IL USA 60610 |
Design Patterns: Elements of Reusable Object-Oriented Software
Design Patterns: Elements of Reusable Object-Oriented Software |
Design Patterns: Elements of Reusable Object-Oriented Software Posted: This book really changed my way of thinking about object-oriented design. The idea is that when designing a new class hierarchy, though implementation details may differ, you often find yourself using the same kinds of solutions over and over again. Rather than approaching each design task out of context as an individual, isolated problem, the strategy is to study the task and identify the underlying design pattern most likely to be applicable, and follow the class structure outlined by that pattern. It's a "cookbook" school of design that works amazingly well. There are other advantages to this book. It isolates 23 of the most common patterns and presents them in detail. You wouldn't think that 23 patterns would be enough, but once you become adept at recognizing patterns, you'll find that a large fraction of the patterns you use in practice are among these 23. For each pattern, the book carefully presents the intent of the pattern, a motivating example, consequences of using that pattern, implementation considerations and pitfalls, sample code (C++ or Smalltalk), known uses of that pattern in real-world applications, and a list of related patterns. Upon first reading, you will start to recognize these patterns in the frameworks you see. Upon second reading, you'll begin to see how these patterns can help you in your own designs, and may also start to see new patterns not listed in the book. Once you become familiar with the pattern concept, you will be able to originate your own patterns, which will serve you well in the future. One of the most valuable contributions of this book is that it is designed not merely to help you identify patterns, but to give you a sense of which patterns are appropriate in which contexts. I think this book is particularly valuable to many C++ and Java programmers, because of the dynamic and flexible design philosophy it follows. (Its two fundamental principles of reusable OO design are: "Program to an interface, not an implementation" and "Favor object composition over class inheritance".) I've found that many C++ books unfortunately tend to emphasize a rather static and inflexible design philosophy. Many C++ programmers do not realize how the language and the books they've studied from have been limiting their thinking until they have been exposed to ideas from other lanugages. The authors of this book have obviously been influenced by other languages as well, especially Smalltalk, and have brought many of its best lessons to C++ design. Most Java books seem to take after the C++ books, even though Java is a more dynamic language. This book may help Java programmers take full advantage of the extra power offered by their language, if they look deeply enough into some of the lesser-known features its runtime system affords. Last, but not least, this book is valuable because it names the patterns it uses, and so gives programmers a common vocabulary to describe design concepts, rather than particular implementations. You'll find yourself saying things like, "That would be a good use for a Decorator", or "Should we use a Facade or a Mediator in this case?" I encourage readers of this book to use this vocabulary with other programmers. In summary, this is one of the few books that I think belongs on every programmer's "must-have" list. Not to overuse a cliche, but like object-oriented design itself, the pattern concept is one of those rare paradigm-shifts in computer programming. It is equally valuable to expert professional and novice student alike. The book has a home page at [...] |
You are subscribed to email updates from Shield To stop receiving these emails, you may unsubscribe now. | Email delivery powered by Google |
Google Inc., 20 West Kinzie, Chicago IL USA 60610 |
Tuesday, August 27, 2013
Art of Computer Programming, Volume 3: Sorting and Searching (2nd Edition) (Hardcover)
Art of Computer Programming, Volume 3: Sorting and Searching (2nd Edition) (Hardcover) |
- Art of Computer Programming, Volume 3: Sorting and Searching (2nd Edition) (Hardcover)
- The Little Schemer - 4th Edition (Paperback)
- The Elements of Computing Systems: Building a Modern Computer from First Principles (Paperback)
You are subscribed to email updates from Shield Amz Rec To stop receiving these emails, you may unsubscribe now. | Email delivery powered by Google |
Google Inc., 20 West Kinzie, Chicago IL USA 60610 |
Monday, August 26, 2013
Introduction to the Theory of Computation (Hardcover)
Introduction to the Theory of Computation (Hardcover) |
- Introduction to the Theory of Computation (Hardcover)
- Art of Computer Programming, Volume 1: Fundamental Algorithms (3rd Edition) (Hardcover)
- Types and Programming Languages (Hardcover)
- Taking Stock (Kindle Edition)
- Art of Computer Programming, Volume 3: Sorting and Searching (2nd Edition) (Hardcover)
You are subscribed to email updates from Shield Amz Rec To stop receiving these emails, you may unsubscribe now. | Email delivery powered by Google |
Google Inc., 20 West Kinzie, Chicago IL USA 60610 |
The Annotated Turing: A Guided Tour Through Alan Turing's Historic Paper on Computability and the Turing Machine
The Annotated Turing: A Guided Tour Through Alan Turing's Historic Paper on Computability and the Turing Machine |
Posted: The Annotated Turing: A Guided Tour Through Alan Turing's Historic Paper on Computability and the Turing Machine (Paperback) By Charles Petzold Some books entertain, some inform; some confirm what you already knew, some make you change your mind about something. But then there are some books that just make you think "wow! I wish I'd written that". For me, Charles Petzold's The Annotated Turing falls into that last category (as well, of course, as the informational category). It's a book worth reading not only for the topic itself but the way it's presented. Petzold provides the necessary background before working through Turing's famous 1936 paper "On computable numbers, with an application to the Entscheidungsproblem" with rich annotations at every stage, including biographical details. If you are interested in the foundation of mathematics, computability, Turing's work, or even just ways of explaining mathematics in a historical context, I highly recommend this book. |
You are subscribed to email updates from Shield To stop receiving these emails, you may unsubscribe now. | Email delivery powered by Google |
Google Inc., 20 West Kinzie, Chicago IL USA 60610 |
Sunday, August 25, 2013
Types and Programming Languages (Hardcover)
Types and Programming Languages (Hardcover) |
- Types and Programming Languages (Hardcover)
- Taking Stock (Kindle Edition)
- Art of Computer Programming, Volume 3: Sorting and Searching (2nd Edition) (Hardcover)
- The Little Schemer - 4th Edition (Paperback)
- The Elements of Computing Systems: Building a Modern Computer from First Principles (Paperback)
You are subscribed to email updates from Shield Amz Rec To stop receiving these emails, you may unsubscribe now. | Email delivery powered by Google |
Google Inc., 20 West Kinzie, Chicago IL USA 60610 |
Computer Organization and Design: The Hardware/Software Interface. Third Edition, Revised
Computer Organization and Design: The Hardware/Software Interface. Third Edition, Revised |
Computer Organization and Design: The Hardware/Software Interface. Third Edition, Revised Posted: Computer Organization and Design: The Hardware/Software Interface. Third Edition, Revised (Paperback) By David A. Patterson This is a tough book to review. On one hand, it's got an amazing amount of information in it. On the other, it's got a lot of editing problems. It also suffers from a lack of focus on who its audience is. So, splitting the difference, I'm rating this book at 4 stars out of 5. Regarding the book's audience, it's vital that you pay attention to the chart on page xiii of the Preface. It maps your path through the book based on whether you're a software-type or a hardware-type. Assuming I was so brilliant that I could ignore such trivia, I attempted to plow my way through the whole book. Software-type that I am, I had some tough times in a couple of sections and then utterly failed to understand anything when I hit the core of Chapter 5. If I had paid attention to that chart, I would have known to skip that part of the book. However, even for the material that's within the path laid out for you by that chart, a lot of the work seems to assume knowledge on the part of the reader. For instance: - Chapter 2 is about the MIPS assembly language. In the exercises, you're supposed to write various code snippets. Many of these snippets assume far more familiarity with writing entire assembly programs than is presented. - The exercises at the end of each chapter are broken into three types: regular, "For More Practice," and "In More Depth." Those last two types require far more knowledge than is presented. It looks like the authors culled them from previous editions and, instead of trashing them, just stuck them on the CD and referenced them. - Exercise 3.9 is annotated as requiring Section 3.2. But, unless you're very familiar with the implementation of MIPS assembly language, there's no way that someone using the material in that section alone could do the problem. - Exercise 3.13 is annotated as requiring Section 3.3. Yet, the question is completely undoable unless you've at least read Appendix B. Of course, Appendix B, itself, is practically indecipherable unless you've had previous experience/knowledge with Logic Design. - Exercises 7.21, 7.22 and 7.38 talk about "the first 1 million references in a trace of gcc." The book contains no definition of what that means. Those questions also mention the cache simulator "dinero" and say, "see the Preface of this book for information on how to obtain them." There's no such information in the Preface or on the CD. The CD does have MipsIt software which includes a cache simulator, but it doesn't seem to work reliably on my XP SP2 system (it also doesn't seem to accept those "traces" as input). That could be operator error, though. Doing a Google search pointed me to max.stanford.edu as a source of the software and traces. But, it seems you have to have a Linux system (or be smarter than me) to use them. - Exercise 7.35 gives a C code snippet and asks you to calculate the expected cache miss rate. There's nothing in the book about calculating expected miss rates from algorithms. Also, the exercise is assigned partially against section 7.4. Section 7.4 covers virtual memory, not caches. - Most of the Chapter 8 exercises are mis-referenced (i.e., they're labeled as being associated with certain sections of the chapter which have nothing to do with the question). Along with the standard problem of assuming knowledge that's not covered in the book, many of them teach new information instead of testing/re-enforcing comprehension of the provided material. There are many incorrect page number and section number references in the book. This is especially bad in the exercises where it becomes impossible to do certain ones since the code and data they're referencing isn't findable (at least easily). This problem does seem to get better as you get to the later chapters. There are also problems with basic typography. Some examples: - Exercise 3.29 wants the reader to come up with a non-restoring division algorithm based on the restoring division algorithm in Figure 3.11 on page 185. The figure and page numbers are right, but the text of the question refers to "step 3b" and "restoring the Remainder" that aren't present there. So, there's no way to figure out what the authors are doing or what they want the reader to do in the exercise. - Many of the tables and diagrams in the book use "color" to help indicate something important. Unfortunately, the color used is dark blue. Unless you look very carefully, there's no difference between the regular text/line color (black) and the "emphasized" version. - The text description of Figure 7.31 on page 544 mentions labeled sections that show differences in performance based on cache associativity. The labels are missing. - Exercise 7.45 gives you a C snippet that you're supposed to document. It contains "!!" as an operator. C has no such operator. My guess is it's either a logical AND, "&&", or a logical OR, "||". Also, the chapters are WAY too long and there are no exercises following the sections. For instance, Chapter 2 is 100 pages long over 20 sections. All the exercises (59 of them) are clumped together in the back of the chapter. The authors note the necessary section numbers with these exercises, but each section needs its own set of exercises immediately following it. This would also alleviate the problem where the authors have the wrong section numbers assigned to exercises. If these exercises were at the end of a section instead of clumped with 60 other exercises at the back of the chapter, they'd stand out more if they didn't belong. And, finally, the book needs answers to the questions. As an aside, this book is used in Florida State University's (FSU) CDA 3101: Computer Organization course. |
You are subscribed to email updates from Shield To stop receiving these emails, you may unsubscribe now. | Email delivery powered by Google |
Google Inc., 20 West Kinzie, Chicago IL USA 60610 |
Saturday, August 24, 2013
The Elements of Computing Systems: Building a Modern Computer from First Principles (Paperback)
The Elements of Computing Systems: Building a Modern Computer from First Principles (Paperback) |
The Elements of Computing Systems: Building a Modern Computer from First Principles (Paperback) Posted: |
You are subscribed to email updates from Shield Amz Rec To stop receiving these emails, you may unsubscribe now. | Email delivery powered by Google |
Google Inc., 20 West Kinzie, Chicago IL USA 60610 |
Introduction to Algorithms
Introduction to Algorithms |
You are subscribed to email updates from Shield To stop receiving these emails, you may unsubscribe now. | Email delivery powered by Google |
Google Inc., 20 West Kinzie, Chicago IL USA 60610 |
Friday, August 23, 2013
Operating System Concepts, Seventh Edition (Hardcover)
Operating System Concepts, Seventh Edition (Hardcover) |
- Operating System Concepts, Seventh Edition (Hardcover)
- Introduction to the Theory of Computation (Hardcover)
- Art of Computer Programming, Volume 1: Fundamental Algorithms (3rd Edition) (Hardcover)
- Types and Programming Languages (Hardcover)
- Taking Stock (Kindle Edition)
You are subscribed to email updates from Shield Amz Rec To stop receiving these emails, you may unsubscribe now. | Email delivery powered by Google |
Google Inc., 20 West Kinzie, Chicago IL USA 60610 |