Effective Java Joshua Bloch  
* * * * *
More Details

You may think you're a hot Java programmer, but you aren't perfect—yet. Josh Bloch is one of the Java core architects and in Effective Java Programming Language Guide provides a Java master class.

Bloch provides 57 items (did he reject "varieties"?) grouped by subject. Each item highlights a "gotcha", expands on best practice or argues for deprecating a common practice. For example, among the gotchas, he points out problems with relying on finalisers, whose implementation varies from one JVM to another and may not run at all under some circumstances.

Best practice also gets a lot of airing. A neat example is not relying on Java's default object serialisation API, which—among other problems—can cause the object to break if you make any changes. This can result in a code maintenance nightmare. In the last category he discusses the string concatenation, "+". Using this can be a hundred times slower than appending to a StringBuffer. No problem for a one-off string but using it repeatedly can cripple performance.

Many of the items discussed are fairly trivial, such as returning zero rather than null for zero length arrays or avoiding the use of floats when you need precise answers—perhaps they were thrown in to make the magic "57"—but despite these Effective Java Programming Language Guide offers a fascinating insight into Java's architecture and solid, easily assimilated guidance on its effective usage.

Unlike most books for programmers, this is one you really will find difficult to put down. Every serious Java programmer should read it. —Steve Patient

0201310058
OpenGL Programming Guide (1.2) Mason Woo Jackie Neider Tom Davis Dave Shreiner OpenGL Architecture Review Board  
* * * * ~
More Details

OpenGL is a powerful software interface for graphics hardware that allows graphics programmers to produce high-quality color images of 3D objects. The functions in the OpenGL library enable programmers to build geometric models, view models interactively in 3D space, control color and lighting, manipulate images, and perform such tasks as alpha blending, antialiasing, depth cueing, and texture mapping.

The OpenGL Reference Manual, Second Edition, documents all OpenGL functions, including brand new features recently approved by the OpenGL Architecture Review Board (ARB) for inclusion in OpenGL, Version 1.1. The ARB is an industry consortium responsible for defining OpenGL, composed of such industry leaders as Digital Equipment Corporation, Evans & Sutherland, Hewlett-Packard, Intel, IBM, Intergraph, Microsoft, Sun Microsystems, and Silicon Graphics.

Each reference page fully describes: C specifications, relevant parameters, the effects of functions, possible errors generated by functions, associated effects, Reference pages for the OpenGL Utility Library (GLU) and the OpenGL extension to the X Window System (GLX) are included in this manual.

0201604582
Quantum Theory David Bohm  
* * * * ~
More Details

This advanced undergraduate-level text provides a formulation of the quantum theory in terms of qualitative and imaginative concepts outside classical theory. A broad range of specific applications follows, worked out in considerable mathematical detail. Also included: an examination of the relationship between quantum and classical concepts. Preface. Index.

0486659690
Understanding the Linux Kernel Daniel P. Bovet, Marco Cesati  
* * * - -
More Details

Understanding The Linux Kernel is intended to be read by those happy to check points off against the source code. The first thing you learn is how, released from commercial constraints, Linux is able to take advantage of the best ideas from other systems implemented in wonderfully flexible ways. A good example is the Virtual File System. VFS has made it easy to add support for file systems from almost every other operating system. It is fascinating to find out how such features are implemented. Then there are loadable modules, I/O, scheduling, multitasking, multiprocessing, interrupts, spin locks, semaphores and all the other goodies involved in making a kernel work.

The authors are primarily concerned with the Linux 2.2 kernel. They discuss how Linus Torvald's decisions on kernel issues translate into architecture, for example, how the Linux' memory management uses a Slab Allocator on top of a Buddy System for greater efficiency. Similarly, at the cost of a little complexity the decision to use three-level memory paging when two work fine on 32-bit systems makes it possible to port to 64-bit processors without changes. The trade-offs between complexity and efficiency are discussed for most kernel features and each chapter finishes with related new features in kernel 2.4.

Despite the lucid and knowledgeable writing, you will come up against some brain-stretching complexity. Nevertheless, this is an important addition to the Linux canon. —Steve Patient

0596000022
Forgotten Realms: Drizzt Do'Urden's Guide to the Underdark Eric L. Boyd  
* * * * -
More Details

The place has many names: the Underdark, Deepearth, the Realms Below, the Night Below, the Lightless Lands. The vast world beneath the surface is home to fabled races such as beholders, cloakers, drow, illithids, and ixzan. Menzoberranzan, the dreaded City of Spiders, is only one of the hidden cities of the Underdark.

This 128-page book, compiled by the Underdark's most famous son, Drizzt Do'Urden, lays bare the bizarre societies that lurk in the Realms Below. It includes an overview of the major races of the Underdark, an Underdark survival guide, and details and maps of more than a dozen cities. Discover a drow city constructed entirely of calcified spider silk, a nigh-immortal dwarven king trapped in stone form, and a storehouse of knowledge that rivals Candlekeep. Learn the particulars of the alliance of the true master of Firedrake Bay, and an explanation of the enduring strength of the beholder cults along the Lake of Steam.

With Drizzt Do'Urden as your guide, a whole new world opens up beneath your feet.

Suitable for all levels of play.

0786915099
Motif Programming Marshall Brain  
* * * * -
More Details

A quick and thorough introduction to Motif programming.

Here is a straightforward, easy-to-understand introduction to Motif application development, covering both basic and advanced features of graphical user interfaces as implemented under Motif. Even though you may have little or no experience with X or other window programming environments, this useful guide will ease you into Motif programming smoothly and quickly. Using simple examples and explanations, it shows you how to design and build graphical applications with Motif in a reasonable amount of time. By the end of the book, you'll be familiar with all of the Motif widgets as well as the process of application design in Motif, the basic capabilities of the X and Xt layers, and the X drawing model.

1555580890
Prolog Programming for Artificial Intelligence Ivan Bratko  
* * * * *
More Details

B> This best-selling guide to Prolog has been fully revised and extended to provide an even greater range of applications, enhancing its value as a stand-alone guide to Prolog, artificial intelligence, or AI programming. Ivan Bratko discusses natural language processing with grammar rules, planning, and machine learning. The coverage of meta-programming includes meta-interpreters and object-oriented programming in Prolog. The new edition includes coverage of: constraint logic programming; qualitative reasoning; inductive logic programming; recently developed algorithms; belief networks for handling uncertainty; and a major update on machine learning. This book is aimed at programmers who need to learn AI programming.

0201403757
Cradle to Cradle: Remaking the Way We Make Things William McDonough Michael Braungart  
* * * * ~
More Details

A manifesto for a radically different philosophy and practice of manufacture and environmentalism

"Reduce, reuse, recycle" urge environmentalists; in other words, do more with less in order to minimize damage. As William McDonough and Michael Braungart argue in their provocative, visionary book, however, this approach perpetuates a one-way, "cradle to grave" manufacturing model that dates to the Industrial Revolution and casts off as much as 90 percent of the materials it uses as waste, much of it toxic. Why not challenge the notion that human industry must inevitably damage the natural world, they ask.

In fact, why not take nature itself as our model? A tree produces thousands of blossoms in order to create another tree, yet we do not consider its abundance wasteful but safe, beautiful, and highly effective; hence, "waste equals food" is the first principle the book sets forth. Products might be designed so that, after their useful life, they provide nourishment for something new-either as "biological nutrients" that safely re-enter the environment or as "technical nutrients" that circulate within closed-loop industrial cycles, without being "downcycled" into low-grade uses (as most "recyclables" now are).

Elaborating their principles from experience (re)designing everything from carpeting to corporate campuses, the authors make an exciting and viable case for change.

0865475873
The Elements of Typographic Style Robert Bringhurst  
* * * * ~
More Details

Renowned typographer and poet Robert Bringhurst brings clarity to the art of typography with this masterful style guide. Combining the practical, theoretical, and historical, this edition is completely updated, with a thorough exploration of the newest innovations in intelligent font technology, and is a must-have for graphic artists, editors, or anyone working with the printed page using digital or traditional methods.

0881792063
The Mythical Man-Month: Essays on Software Engineering, Anniversary Edition Frederick P. Brooks  
* * * * ~
More Details

The classic book on the human elements of software engineering. Software tools and development environments may have changed in the 21 years since the first edition of this book, but the peculiarly nonlinear economies of scale in collaborative work and the nature of individuals and groups has not changed an epsilon. If you write code or depend upon those who do, get this book as soon as possible — from Amazon.com Books, your library, or anyone else. You (and/or your colleagues) will be forever grateful. Very Highest Recommendation.

0201835959