Sponsored links

Valid XHTML 1.0!
Valid CSS!
Product: Book - Paperback
Title: MCAD/MCSD Training Guide (70-316): Developing and Implementing Windows-Based Applications with Visual C# and Visual Studio.NET
Publisher: Que
Authors: Amit Kalani
Rating: 3/5
Customer opinion - 3 stars out of 5
Good book, but only as a booster

I read this book inside and out and barely passed the test. Only about half of the questions on the test were covered on the book. Thank goodness I did some other studying, do not rely solely on this book or you will fail!

Product: Book - Hardcover
Title: Design Patterns
Publisher: Addison-Wesley Professional
Authors: Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides
Rating: 5/5
Customer opinion - 5 stars out of 5
You've written a million lines of code, Now... do it better!

After years of writing code of all kinds,
Fun Video games as a kid, Compilers for the heck of it, Graphics programs for the love of art,Interesting AI programs because I am a CS guy,Boring Database Applications because I have to pay bills,Nifty n-tiered web apps because the World went crazy..,
I found a programming book that could still teach me something.
After books from Knuth, Djikstra, The Aho Gang and the like, here is a book which goes straight to the point.
The book summarizes a basic set of Software Design Patterns, which have been found over and over in all the software we create.Design Patterns is the perfect answer to all you OOP questions, Its an approach to sofware design as well as reuse.
If you are an artist, you would appreciate Design patterns better. The masters of the Renaissance began to see the world in terms of basic geometric forms..Spheres, Cubes, Cones and cylinders..this helped them in analysing an object..(any object, from the Human body to the Mountains and rivers.). Once they analysed any thing into its basic forms it was just a matter of detail. So, if you practice how to draw these basic shapes from different angles, and lighting,etc., and you learn how to analyse any thing into basic shapes, you have become a master.
The authors categorize all different software pieces into Creational, Structural and Behavioural patterns. Providing several possible patterns in each of these categories. A software designer, when confronted with a design problem, based on the needs, can pick a pattern from this catalogue and then fill in the details.
Well written, with UML diagrams too.
Caution: If you are new to programming, come back to this book a bit later.

Product: Book - Hardcover
Title: 3D Game Engine Design : A Practical Approach to Real-Time Computer Graphics
Publisher: Morgan Kaufmann
Authors: David H. Eberly
Rating: 5/5
Customer opinion - 5 stars out of 5
Shuold be called 3D Math for Game Engines

The title is probably misleadng, since it is not so much game engine design as a compendium of the math used in game engines. But I found it quite rigorous and useful since most game engine books cover either the programming or applied concepts but do not give the necessary math background. Cetrainly not for those who are afraid of math or are put off by formulas.

Product: Book - Hardcover
Title: High-Speed Digital Design: A Handbook of Black Magic
Publisher: Prentice Hall PTR
Authors: Howard Johnson
Rating: 2/5
Customer opinion - 2 stars out of 5
Useful book if you need a cook book, however ........

This book is useful if you want to have a long series of equations available in one place to jog your memory. But if you want to learn something useful and practical- and real-world - then perhaps you would be better off doing a web search for application notes, tutorial papers, and articles, particularly from semiconductor manufacturers, and vendors of high-performance test equipment such as Agilent, Tektronix, and others.
To take one example (page 134,) Johnson purports to describe problems associated with a wire-wrapped prototype processor board containing TTL devices operating at high edge rates ( 2 ns.) According to Johnson, the design engineers failed to realize that the circuits would ring excessively, making the board unusable. To "prove" this he posits a model consisting of a 30 ohm TTL driver, with a 2 ns rise time, a 4" length of wire with 89 nH of self inductance, and a 15pf load - a series LRC circuit. Yes, this circuit will ring wildly, but the model is totally incorrect. The TTL input is not considered, which has a relatively low input impedance in the low state since it is current operated. This circuit -effectively a parallel LRC - does not ring nearly as much, as any experienced engineer knows. As a reality check, remember that wire wrap was successfully used for years by thousand of engineers. To listen to Johnson, though, this technology is almost unusable. Wire wrap circuits do ring, but under his example, the real amount of overshoot/undershoot is well within the limits of TTL. Further, no real circuit produces textbook looking traces, so the role of experience is to learn what worst-case design means, and what is acceptable for good manufacturing yield. Lesson: real experience teaches you how to produce correct, functional models. An incorrect model will cause you grief.
Much could have been done here, to be useful, by way of analysis and of recommendation. The wire should have been modeled as part of a transmission line, not as a lumped element, which any high speed digital design engineer would know, and the idea of terminating a transmission line should have been introduced. This is standard fare. Even with the series LRC, instead of deriving the formula for critical damping, he instead says: "This approximation (reduce Q to .5) is derived from the solution to a second order linear differential equation describing an RLC low pass filter. First find the point at which the derivative of the solution passes through zero (a maximum point) and then evaluate the solution at that point."
Got that? Take the derivative of a solution you want to find? Any book on circuits will reduce this to the solution of a quadratic equation. Obfuscating something that's really elementary does not help produce genuine insight. But this is what Johnson does throughout the book.
Isn't it simpler to say that if you have fast rise time signals, treat most connections as transmission lines, and add termination resistors? As for a series RLC, use the formula for critical damping: R = 1/2 (sqrt(L/C))