Showing posts with label computer science. Show all posts
Showing posts with label computer science. Show all posts

7/27/2012

Information Theory, Inference and Learning Algorithms Review

Information Theory, Inference and Learning Algorithms
Average Reviews:

(More customer reviews)
Uniting information theory and inference in an interactive and entertaining way, this book has been a constant source of inspiration, intuition and insight for me. It is packed full of stuff - its contents appear to grow the more I look - but the layering of the material means the abundance of topics does not confuse.
This is _not_ just a book for the experts. However, you will need to think and interact when reading it. That is, after all, how you learn, and the book helps and guides you in this with many puzzles and problems.

Click Here to see more reviews about: Information Theory, Inference and Learning Algorithms

Information theory and inference, often taught separately, are here united in one entertaining textbook. These topics lie at the heart of many exciting areas of contemporary science and engineering - communication, signal processing, data mining, machine learning, pattern recognition, computational neuroscience, bioinformatics, and cryptography.This textbook introduces theory in tandem with applications. Information theory is taught alongside practical communication systems, such as arithmetic coding for data compression and sparse-graph codes for error-correction. A toolbox of inference techniques, including message-passing algorithms, Monte Carlo methods, and variational approximations, are developed alongside applications of these tools to clustering, convolutional codes, independent component analysis, and neural networks.The final part of the book describes the state of the art in error-correcting codes, including low-density parity-check codes, turbo codes, and digital fountain codes -- the twenty-first century standards for satellite communications, disk drives, and data broadcast. Richly illustrated, filled with worked examples and over 400 exercises, some with detailed solutions, David MacKay's groundbreaking book is ideal for self-learning and for undergraduate or graduate courses. Interludes on crosswords, evolution, and sex provide entertainment along the way.In sum, this is a textbook on information, communication, and coding for a new generation of students, and an unparalleled entry point into these subjects for professionals in areas as diverse as computational biology, financial engineering, and machine learning.

Buy NowGet 21% OFF

Click here for more information about Information Theory, Inference and Learning Algorithms

Read More...

7/25/2012

Hibernate: A Developer's Notebook Review

Hibernate: A Developer's Notebook
Average Reviews:

(More customer reviews)
This book is not intended as a comprehensive/blow-by-blow tutorial. It is a part of o'reilly's new 'notebook' series which is intended as a VERY brief intro to a new technology for experienced developers.
This book is for folks who are pretty experienced with Java and databases, and its intention is to provide a very high-level fast-paced into to hibernate.
In my opinion, it does these things well. I've got about 9 years experience with Java, and about 15 years with SQL/databases, and about 15 years commercial development experience. I've never used hibernate, and I decided to use it in a project. I'm in a HUGE hurry, and I needed to get up to speed FAST. This book got me there. In this sense, I think the book succeeds very well.
There are plenty of spots where I needed additional help, and a quick web search or a quick jump out to hibernates reference documentation (hibernate.org) was all that was required.
This book does what it intends. If you need hand-holding, detailed instructions, or in-depth tutorials, find another book. (And as far as I know, there aren't any).
:)

Click Here to see more reviews about: Hibernate: A Developer's Notebook


Do you enjoy writing software, except for the database code? Hibernate:A Developer's Notebook is for you.

Database experts may enjoy fiddling with SQL, but you don't have to--the rest of the application is the fun part. And even database experts dread the tedious plumbing and typographical spaghetti needed to put their SQL into a Java program. Hibernate: A Developers Notebook shows you how to use Hibernate to automate persistence: you write natural Java objects and some simple configuration files, and Hibernate automates all the interaction between your objects and the database.You don't even need to know the database is there, and you can change from one database to another simply by changing a few statements in a configuration file.

Hibernate: A Developer's Notebook walks you through the ins and outs of using Hibernate, from installation and configuration, to complex associations and composite types. Two chapters explore ways to write sophisticated queries, which you can express either through a pure Java API, or with an SQL-inspired, but object-oriented, query language. Don't let that intimidate you though: one of the biggest surprises in working with Hibernate is that for many of the common real-world application scenarios, you don't need an explicit query at all.

If you've needed to add a database backend to your application, don't put it off.It's much more fun than it used to be, and Hibernate: A Developer's Notebook shows you why.

Here's what a few reviewers had to say:

"I'm sitting on an airplane after finishing Hibernate: A Developer's Notebook.It's rare to find a book on a new Java technology that you can get through on a domestic flight.That this notebook effectively and succinctly tackles object-relational mapping makes it, and Hibernate, even more impressive.Many books in this category would need to be checked luggage.With this book, you travel first class." --Mike Clark

"A simple persistence framework deserves a simple book, and this one delivers. The examples are well described and easy to understand, yet sophisticated enough to demonstrate Hibernate in a real-world context. Jim, I'm a new fan."--Bruce Tate

About the new Developer's Notebook Series from O'Reilly: Developer's Notebooks are a new book series covering important new tools for software developers.Developer's Notebooks stress example over explanation and practice over theory. They are about learning by doing; by experimenting with tools and discovering what works."All lab, no lecture," with a thoughtful lab partner to guide the way.


Buy NowGet 28% OFF

Click here for more information about Hibernate: A Developer's Notebook

Read More...

An Introduction to Data Structures and Algorithms (Progress in Theoretical Computer Science) Review

An Introduction to Data Structures and Algorithms (Progress in Theoretical Computer Science)
Average Reviews:

(More customer reviews)
If you have cut your teeth on Donald Knuth's classic three volumes, "The Art of Computer Programming", and you want more detail, at a similar level of complexity, then consider Storer's book.
It delves into lists, recursion, trees, graphs, heaps and sets. Like Knuth, Storer thoughtfully supplies an extensive list of questions at the end of each chapter that will greatly deepen your appreciation of the field if you tackle them. Ok, he doesn't give answers, but think of that as greater incentive on your part to solve them. There are almost 400 questions in the book.
The teaching style is similar to Knuth, in that it has all the rigour needed by an algorithm designer like yourself, without drowning you in epsilon-delta ultra rigour like a pure maths text.
Note that the only code fragments are in pseudocode. This should not be a problem for you. I am assuming you are experienced enough that what you need is understanding of an algorithm, and that manually converting it to code is straightforward and a purely secondary issue.
The take home message is that this is excellent for anyone doing serious programming.

Click Here to see more reviews about: An Introduction to Data Structures and Algorithms (Progress in Theoretical Computer Science)

Data structures and algorithms are presented at the college level in a highly accessible format that presents material with one-page displays in a way that will appeal to both teachers and students. The thirteen chapters cover: Models of Computation, Lists, Induction and Recursion, Trees, Algorithm Design, Hashing, Heaps, Balanced Trees, Sets Over a Small Universe, Graphs, Strings, Discrete Fourier Transform, Parallel Computation. Key features: Complicated concepts are expressed clearly in a single page with minimal notation and without the "clutter" of the syntax of a particular programming language; algorithms are presented with self-explanatory "pseudo-code." * Chapters 1-4 focus on elementary concepts, the exposition unfolding at a slower pace. Sample exercises with solutions are provided. Sections that may be skipped for an introductory course are starred. Requires only some basic mathematics background and some computer programming experience. * Chapters 5-13 progress at a faster pace. The material is suitable for undergraduates or first-year graduates who need only review Chapters 1 -4. * This book may be used for a one-semester introductory course (based on Chapters 1-4 and portions of the chapters on algorithm design, hashing, and graph algorithms) and for a one-semester advanced course that starts at Chapter 5. A year-long course may be based on the entire book. * Sorting, often perceived as rather technical, is not treated as a separate chapter, but is used in many examples (including bubble sort, merge sort, tree sort, heap sort, quick sort, and several parallel algorithms). Also, lower bounds on sorting by comparisons are included with the presentation of heaps in the context of lower bounds for comparison-based structures. * Chapter 13 on parallel models of computation is something of a mini-book itself, and a good way to end a course. Although it is not clear what parallel

Buy NowGet 48% OFF

Click here for more information about An Introduction to Data Structures and Algorithms (Progress in Theoretical Computer Science)

Read More...

7/23/2012

Learning in Graphical Models (Adaptive Computation and Machine Learning) Review

Learning in Graphical Models (Adaptive Computation and Machine Learning)
Average Reviews:

(More customer reviews)
The title of the book is somewhat misleading, in that most of the research papers involve advanced issues concerning one particular graphical model, namely the Bayesian network. For this reason I highly recommend, as a prerequisite to this book, Finn Jensen's "Bayesian Networks and Decision Graphs". Jensen's book is adequate in giving a good introduction and overview of the subject, but not sufficient for calling oneself an "expert" upon successfully digesting it.
To its credit, "Learning in Graphical Models" has several well-written and interesting papers, but the tutorial papers just did not seem enough of an introduction for me to feel comfortable using it as a first source of introduction.
What I find most compelling about Bayesian networks is the fact that they seem both highly modular (which facilitates reusability and network interconnectivity) and can be designed in a semi-rational manner (contrast this with neural-network architectures for which few good algorithms exist for determining size and number of layers). For this reason I imagine they will be important players in future engineering projects that require learning and adaptation.

Click Here to see more reviews about: Learning in Graphical Models (Adaptive Computation and Machine Learning)

Graphical models, a marriage between probability theory and graph theory,provide a natural tool for dealing with two problems that occur throughout appliedmathematics and engineering--uncertainty and complexity. In particular, they play anincreasingly important role in the design and analysis of machine learningalgorithms. Fundamental to the idea of a graphical model is the notion ofmodularity: a complex system is built by combining simpler parts. Probability theoryserves as the glue whereby the parts are combined, ensuring that the system as awhole is consistent and providing ways to interface models to data. Graph theoryprovides both an intuitively appealing interface by which humans can model highlyinteracting sets of variables and a data structure that lends itself naturally tothe design of efficient general-purpose algorithms.This book presents an in-depthexploration of issues related to learning within the graphical model formalism. Fourchapters are tutorial chapters--Robert Cowell on Inference for Bayesian Networks,David MacKay on Monte Carlo Methods, Michael I. Jordan et al. on VariationalMethods, and David Heckerman on Learning with Bayesian Networks. The remainingchapters cover a wide range of topics of current research interest.

Buy NowGet 20% OFF

Click here for more information about Learning in Graphical Models (Adaptive Computation and Machine Learning)

Read More...

7/22/2012

The Practical Performance Analyst Review

The Practical Performance Analyst
Average Reviews:

(More customer reviews)
If understanding and managing computer systems performance is in your job description and you can only buy two books, this is one of the two (the other is Raj Jain's, "The Art of Computer Systems Performance..."). Neil Gunther's book is not just another tome on queueing theory. Immediately useful methods and formulas are presented in the context of real problems. The two chapters on instability in systems and scaling of multiprocessor systems alone make the book worth its price. Readers need to know that there is some math in the book (there is just no escaping it) and that some of the cited vendor products are becoming dated. The Web site associated with the book contains many items of current interest, an errata sheet correcting minor errors in the book, and downloadable programs related to performance evaluation.

Click Here to see more reviews about: The Practical Performance Analyst

see scanned bookblock

Buy NowGet 15% OFF

Click here for more information about The Practical Performance Analyst

Read More...

Bundle of Algorithms in C++, Parts 1-5: Fundamentals, Data Structures, Sorting, Searching, and Graph Algorithms (3rd Edition) (Pts. 1-5) Review

Bundle of Algorithms in C++,  Parts 1-5: Fundamentals, Data Structures, Sorting, Searching, and Graph Algorithms (3rd Edition) (Pts. 1-5)
Average Reviews:

(More customer reviews)
If you're looking for an exhaustive, upto-date reference/textbook for
fundamental, searching and sorting algorithms, then this is one of
the very best available.
Sedgewick has split his popular book into two volumes, with Graph
algorithms being hifted to the second volume. Moreover, many advanced
topics like computational geometry, fft, number theoretic algorithms
etc, which were introduced in the previous edition, seem to be missing
now - so the breadth of coverage seems to have reduced, which is a pity.
However, the depth has increased instead - i doubt that even Knuth
covers more sorting algorithms ! In particular, there are several
recent algorithms and data structures which are treated in greater
detail here than by Knuth. Of course, Knuth analyses all the
algorithms he presents in rigorous and exhaustive detail, which
this book doesn't.
Moreover, the book has many new algorithms and presents the state of the
art in sorting and searching algorithms, giving it a distinct advantage
over the older books.
Sedgewick makes it very clear in the preface that the emphasis is on
the practical importance of the algorithms, so esoteric algorithms which
are important 'only in theory' may find no mention. Also the emphasis is
more on the design of algorithms than on their analysis.
The number of (exercise!!) problems has multiplied manifold in this edition
to become more than most competing textbooks. Problems are graded by
difficulty level to help you choose the ones relevant to your needs.
The exposition is clear and authoritative - Prof. Sedgewick is a leading
authority in the field of algorithms and a student of Donald Knuth.
He has a gift for making difficult concepts seem simple, and the great
illustrations in the book go a long way in explaining the behaviour of
the algorithms.
For the practising professional, this is an ideal reference, since it'll
help you select the best algorithm for your task without bogging you
down with heavy mathematics.
The reasearcher, on the other hand, may benefit by gaining unique insights
from a master of the area, while using other books for the detailed
analysis of algorithms, including prehaps Sedgewick's own book on the
analysis of algorithms(with Flajolet).
A caveat - the code may not be 'ready to run'. It's better not to rely
on this book to provide you with usable code - if that is what you want,
perhaps the books by Drozdek/Weiss/Heileman/Rowe might be better choices.
If you want C code rather than C++, then the C version of this book is
a good choice, since the code provided is of 'K & R' class and therefore
a delight to read.
Of course, if you're looking for a language independent coverage,
then 'Introduction to algorithms' by Cormen,Leiserson and Rivest is
possibly the best book which combines rigor with comprehensive coverage
of the most important algorithms. Look out for the newly released
second edition.
And if you want a more rigorous and equally exhaustive coverage of
sorting and searching, go for Knuth vol.3 - still the authoritative
reference, though it may require more hard work on the reader's part.
Otherwise, invest in this and you won't be disappointed.

Click Here to see more reviews about: Bundle of Algorithms in C++, Parts 1-5: Fundamentals, Data Structures, Sorting, Searching, and Graph Algorithms (3rd Edition) (Pts. 1-5)

Software developers and computer scientists have eagerly awaited this comprehensive revision of Robert Sedgewick's landmark texts on algorithms for C++. Sedgewick has completely revamped all five sections, illuminating today's best algorithms for an exceptionally wide range of tasks. This shrink-wrapped package brings together Algorithms in C++, Third Edition, Parts 1-4 and his new Algorithms in C++, Third Edition, Part 5. Together, these books are the most definitive, up-to-date, and practical algorithms resource available. The first book introduces fundamental concepts associated with algorithms; then covers data structures, sorting, and searching. The second book focuses entirely on graphing algorithms, which are critical for a wide range of applications, including network connectivity, circuit design, scheduling, transaction processing, and resource allocation. Sedgewick focuses on practical applications, giving readers all the information, diagrams, and real (not pseudo-) code they need to confidently implement, debug, and use the algorithms he presents. Together, these books present nearly 2,000 new exercises, hundreds of new figures, and dozens of new programs.

Buy NowGet 23% OFF

Click here for more information about Bundle of Algorithms in C++, Parts 1-5: Fundamentals, Data Structures, Sorting, Searching, and Graph Algorithms (3rd Edition) (Pts. 1-5)

Read More...

7/17/2012

Purely Functional Data Structures Review

Purely Functional Data Structures
Average Reviews:

(More customer reviews)
Okasaki's slim volume is one of the best expositions on implementing data structures & algorithms in a functional language. After taking an introductory course on functional programming, this would be the book which tells you where to go next.
This book doesn't just present a rehash/rewrite of imperative data structures, only written in a functional language. Instead, Okasaki makes sure to emphasize benefits which only functional programming can bring to the table. For example, many functional data structures can compactly represent not just their current state, but all of their past states as well--a feature called "Persistence". Also, functional newbie programmers might be wondering why lazy vs. strict programming is a big deal, and Okasaki shows clearly where data structures can benefit from either being lazy or being strict.
For the advanced reader, Okasaki also presents several powerful techniques for analyzing the runtime of algorithms, including the so-called "Banker's Method" and the "Physicist's Method" for analyzing amortized algorithms.
I hope that Okasaki comes out with a 2nd edition of this book; there is one missing piece in particular which I really wish he would have included: Although he presents an EXTREMELY lucid description of how to implement Red-Black trees in a functional language, he only presented algorithms for insertion and querying. Of course, deletion from a red-black tree is the hardest part, left here, I suppose, as an exercise to the student. If you want to supply this missing piece yourself, check out a paper by Stefan Kars, "Red-black trees with types", J. Functional Programming 11(4):425-432, July, 2001. It presents deletion routines, but you'll still want to read Okasaki's book first, for unless you're very much smarter than me you won't be able to understand Kars' paper until you read Okasaki's exposition of red black trees.
Finally, this book is not just useful for programmers in functional languages; logic programmers, using prolog or a varient, will also find this book very helpful, because most of the techniques (all of the techniques, really, with the exception perhaps of the lazy programming stuff) can be directly applied in a prolog programming setting as well.
After reading this book and implementing some of the data structures for yourself, you'll be amazed at how fast algorithms can run, even when written in a functional language!

Click Here to see more reviews about: Purely Functional Data Structures

Most books on data structures assume an imperative language such as C or C++.However, data structures for these languages do not always translate well to functional languages such as Standard ML, Haskell, or Scheme.This book describes data structures from the point of view of functional languages, with examples, and presents design techniques that allow programmers to develop their own functional data structures.The author includes both classical data structures, such as red-black trees and binomial queues, and a host of new data structures developed exclusively for functional languages.All source code is given in Standard ML and Haskell, and most of the programs are easily adaptable to other functional languages. This handy reference for professional programmers working with functional languages can also be used as a tutorial or for self-study.

Buy NowGet 17% OFF

Click here for more information about Purely Functional Data Structures

Read More...

7/10/2012

Designing Concurrent, Distributed, and Real-Time Applications with UML Review

Designing Concurrent, Distributed, and Real-Time Applications with UML
Average Reviews:

(More customer reviews)
This book provides a practical method to apply the Unified Modeling Language (UML) to design concurrent and distributed software for large systems. While many books have been published to explain the details of the UML notation, this book provides a method, COMET, to approach software design through application of a practical subset of the UML notation. The book contains numerous, extensive case studies and provides pragmatic, useful guidelines to identify distributed subsystems and concurrent tasks from a UML analysis model. The approach described represents a unique and valualbe contribution by the author of this text. Finally, because this book is intended mainly as a text for software design courses, I consulted with a few students who have used this book in a graduate-level software engineering course. All of the students were favorably impressed with the content, clarity, practicality, and detail contained in the book.
Prior to the publication of this text, a software design course based on UML could only be taught using a UML text together with a separate software design text. In this text book, Dr. Gomaa has integrated material from UML and software design in such a form that a software design course can now be taught with this text alone.

Click Here to see more reviews about: Designing Concurrent, Distributed, and Real-Time Applications with UML

In this book, renowned real-time software expert Hassan Gomaa adapts UML to the unique needs of the concurrent, distributed, and real-time applications -- helping developers leverage the powerful flexibility, reliability, and time-to-market benefits associated with UML. Gomaa starts by reviewing the key issues and concepts associated with analysis and design of distributed and real-time applications -- focusing not only on standard object-oriented concepts such as information hiding, classes, and inheritance, but also specialized issues such as finite state machines, concurrent tasks, and real-time scheduling. Next, he introduces the COMET (Concurrent Object Modeling and Architectural Design) Method, a UML-based object-oriented analysis and design method specifically created for concurrent, distributed, and real-time applications. The book presents detailed structuring criteria that assist the designer at every stage of the analysis and design process, and offers exceptional insight into dynamic modeling, concurrency, distributed application design, and performance analysis of real-time designs.Gomaa concludes with several detailed case studies covering a broad range of applications, including systems for banking, e-Commerce, cruise control, factory automation, and more.

Buy NowGet 20% OFF

Click here for more information about Designing Concurrent, Distributed, and Real-Time Applications with UML

Read More...

6/25/2012

Oracle DBA Pocket Guide (Pocket Reference) Review

Oracle DBA Pocket Guide (Pocket Reference)
Average Reviews:

(More customer reviews)
I bought this book on a whim at a bookstore because it claimed to include "quick reference" info on performance. I found that area seriously lacking...
I thought it odd to have sections on installation and planning in here. Hopefully one does not make such decisions with only a pocket guide as a reference. That section could be shortened to a few pages of warnings and a few URLs. The backup and recovery section was great, but it could be shortened up about 5 pages. Same for the security section.
With the extra space, I would put in at least 15 pages on performance tuning.
The data dictionary quick reference is very useful, and if it weren't for that I would probably have given this book away.

Click Here to see more reviews about: Oracle DBA Pocket Guide (Pocket Reference)


The Oracle database is one of the most popular in the world, and for good reason. It's compatible, scalable, portable, and capable of performing incredibly fast. The advantages Oracle holds over its competition come with a price, however--it's a highly complex database that's becoming more complex with every release. And this level of detail, of course, can begin to weigh on database administrators (DBAs).

Fortunately, the Oracle DBA Pocket Guide from O'Reilly is on the case. This handy reference is designed to help administrators make more effective use of their time by presenting a compact summary of DBA tasks in an easy-to-use form.With this book by your side, you'll have instant access to the most important concepts, best practices, tips, and checklists.Key topics include architecture, installation, configuration, tuning, and backup/recovery.Everything that you absolutely must know to do your job well is right there at your fingertips.

Moreover, the Oracle DBA Pocket Guide covers Oracle Database 9i, as well as its latest release, Oracle Database 10g.The first database designed for enterprising grid computing, Oracle Database 10g significantly reduces the cost of managing the IT environment with a simplified install, reduced configuration and management requirements, and automatic performance diagnosis and SQL tuning.

The latest in O'Reilly's line of bestselling Oracle titles, this book is an invaluable companion for any database administrator--new or experienced--interested in reviewing core Oracle concepts at a glance.


Buy Now

Click here for more information about Oracle DBA Pocket Guide (Pocket Reference)

Read More...

6/08/2012

Foundations of Multidimensional and Metric Data Structures (The Morgan Kaufmann Series in Computer Graphics) Review

Foundations of Multidimensional and Metric Data Structures (The Morgan Kaufmann Series in Computer Graphics)
Average Reviews:

(More customer reviews)
A stunning 1000 page encyclopedia of spatial, multidimensional, and metric data structures and algorithms presented in the Knuth tradition. The general coverage is broader than an older, now out of print and expensive: "Design and Analysis of Spatial Data Structures". In a surprise, the new book is not only the size of a telephone directory, but it has double the number of useful pages. 4 extensive chapters cover data structures and algorithms for: points, objects and images, intervals and small rectangles, and the same data types in higher +dimensions. Within each chapter, the algorithms and clearly presented and are accompanied by an extensive use of figures. The algorithms which run from the expected to the exotic are summarized by the table of contents at the publisher's web site. Unexpected algorithms are also covered including: nearest neighbor finding which is useful for clustering applications, image pyramids, and object pyramids or hierarchies such as R-trees.The book has a textbook flavor with exercises at the end of each section where specifics are left for the student; however, solutions and pseudo-code for many of the exercises are in a 300+ page appendix maintaining the book as a useful reference. This book is comprehensive, inexpensive, and in my mind - a must have.

Click Here to see more reviews about: Foundations of Multidimensional and Metric Data Structures (The Morgan Kaufmann Series in Computer Graphics)



Buy NowGet 18% OFF

Click here for more information about Foundations of Multidimensional and Metric Data Structures (The Morgan Kaufmann Series in Computer Graphics)

Read More...

5/30/2012

Database Systems: Design, Implementation, and Management Review

Database Systems: Design, Implementation, and Management
Average Reviews:

(More customer reviews)
I'm a technical person but have very little DB experience and purchased the book because I had to for a college class. I feel the book was simply OK. Some points were made well others I had to read several times. Over all the explanations were not as concise as I would like but in all fairness DB concepts are hard to explain. The overall layout was good however I think there should have been more attention during the intro to familiarize the reader with DB's and the related concepts before delving in to the details of each phase of DB creation.
My only real gripe is that a new revision is published every year and the previous version of the $100 + dollar book becomes worthless. To save money I bought the previous version and found all the material I needed. However for the final exam the instructor of the online class gave us page numbers to use as reference so I was forced to buy the latest version which was the same book with a few new references...
If you are buying this book for reference or if you are buying this because you are taking a face to face class I recommend that you buy the previous version required by the instructor at a greatly reduced cost. You may be able to do this w/ an online class if the professor (or classmates) are flexible and willing to help reconcile the different page numbers.


Click Here to see more reviews about: Database Systems: Design, Implementation, and Management

Database Systems: Design, Implementation, and Management, Eighth Edition, a market-leader for database texts, gives readers a solid foundation in practical database design and implementation. The book provides in-depth coverage of database design, demonstrating that the key to successful database implementation is in proper design of databases to fit within a larger strategic view of the data environment. Updates for the eighth edition include additional Unified Modeling Language coverage, expanded coverage of SQL Server functions, all-new business intelligence coverage, and added coverage of data security. With a strong hands-on component that includes real-world examples and exercises, this book will help students develop database design skills that have valuable and meaningful application in the real world.

Buy NowGet 27% OFF

Click here for more information about Database Systems: Design, Implementation, and Management

Read More...

5/21/2012

Designing Virtual Reality Systems: The Structured Approach Review

Designing Virtual Reality Systems: The Structured Approach
Average Reviews:

(More customer reviews)
This text does not pertain to any new research in the field of virtual reality or virtual environments. Instead, it is meant to be a modern introduction (post VRML) to students new to VR on what building blocks are required to produce a virtual reality system. I review the book in the context of its table of contents:
Chapter 1 "Introduction: Virtual Reality in a Nutshell" is just a broad overview of the field and of this book. It discusses the goals and applications of VR, and also discusses what it considers to be the two pillars of VR: presence and 3D multimodal interaction.
Chapter 2 "Requirements Engineering and Storyboarding" discusses VR from the standpoint of a concrete example: a ship simulator design.
Chapter 3 "Object and Scene Modeling" discusses object modeling, scene construction, object placement, multiple frames of reference, re-expressing coordinate systems, and both functional and behavioral modeling. All of this is done from the standpoint of the ship simulator design that was introduced in chapter two. There is quite a bit about graphics concepts in this chapter.
Chapter 4 "Putting it All Together" pulls together the concepts from chapters 2 and 3 into a system design philosophy, again from the standpoint of the concrete example of the ship simulator design.
Chapter 5 "Performance Estimation and System Tuning" is somewhat mislabeled in my opinion. This chapter discusses some advanced graphics concepts such as tuning with level-of-detail models, presence and special effects, and use of images and texturing.
Chapter 6 "Output Display" is about human optical perception as well as available display hardware. First the human visual system is briefly discussed along with human depth perception and stereoscopy. Next visual display systems are discussed along with haptics - the science of applying touch sensation and control to interaction with computer applications.
Chapter 7 "Sensors and Input Processing" discusses trackers, event generators, and sensor errors and calibration.
Chapter 8 "3D Multimodal Interaction Design" is about fusing symbolic and statistical information from a set of 3D gesture, spoken language, and referential agents. In particular, a structured approach is presented, along with ideas on interfacing, and finally some case studies. Among the case studies are the previously mentioned ship simulator along with immersive authoring, tabletop computing, menu selection and invocation, and whole-body interaction.
Next, there are two short chapters on simulation.
Chapter 9 discusses the basics of collision detection, starting with collision detection of line segments, then moving on to collision among polygonal models, building a bounding volume, and finally collision among bounding volumes.
Chapter 10 introduces physics based motion and collision response. Among the topics mentioned are center of gravity, moment of inertia, linear and rotational kinematics, laws of motion, dynamics, collision response, and deformation. There are quite a few equations shown in this chapter, and although this is just meant as an introduction the material is quite useful.
Chapter 11 "Virtual Characters" is the final chapter and touches on a rather advanced subject. The form of such a character, motion control, and inverse and forward kinematics of such a character are discussed.
Although this is a short book - roughly 230 pages total - it is very useful in that it does not wander through its topics in an academic way, but takes a systems engineering and mathematical approach to building virtual worlds. The use of the ship simulator is very enlightening and binds the book together into a very cohesive and useful volume. The block diagrams and pseudocode are also very helpful. You are going to need other books to build a complete virtual world, but this is an outstanding modern outline of everything that you need to consider. I highly recommend this book as an introductory text to any student wishing to learn the practical issues behind building a virtual reality system.

Click Here to see more reviews about: Designing Virtual Reality Systems: The Structured Approach

Developing and maintaining a VR system is a very difficult task, requiring in-depth knowledge in many disciplines. The difficulty lies in the complexity of having to simultaneously consider many system goals, some of which are conflicting.This book is organized so that it follows a spiral development process for each stage, describing the problem and possible solutions for each stage. Much more hands-on than other introductory books, concrete examples and practical solutions to the technical challenges in building a VR system are provided.Part 1 covers the very basics in building a VR systemand explains various technical issues in object modeling and scene organization. Part 2 deals with 3D multimodal interaction, designing for usable and natural interaction and creating realistic object simulation. Primarily written for first level graduates, advanced undergraduates and IT professionals will also find this a valuable guide.

Buy NowGet 20% OFF

Click here for more information about Designing Virtual Reality Systems: The Structured Approach

Read More...

5/20/2012

Knowledge Representation and the Semantics of Natural Language (Cognitive Technologies) Review

Knowledge Representation and the Semantics of Natural Language (Cognitive Technologies)
Average Reviews:

(More customer reviews)
This book has a wealth of solid information about knowledge representation (KR). It is focused on Multinets, an advanced type of semantic network. The author brings years of experience to this subject. The book deals thoroughly with many aspects of KR such as relationships, categories, generalization, real vs hypothetical, cardinality, and variability, just to name a few. Although the book is focused on Multinets, the concepts should be relevant to other knowledge representation schemes.
Frequent natural language statements clarify the issues under discussion. For example, here are two of the statements on page 49 that illustrate different types of information that can be communicated by "is".
"'A bachelor is an adult unmarried man.' (Relation EQU), 'The cherry is red.' (Relation PROP), . . ."
In other words, the first "is" links equivalent ideas, the second "is" indicates "red" as a property.
The book also contains numerous, well designed, helpful diagrams.
Unfortunately, the jargon is very thick, and difficult to navigate. For example, from page 20: "As already mentioned, the arcs of the semantic network have to be considered as epistemologically and cognitively justified categories which function as fundamental deep semantic relations in the framework of meaning representation." After reading this sentence several times, I think part of what it means is "the arcs of semantic networks should match actual deep semantic relations". But I'm not sure. I frequently find myself reading sentences several times, then moving on, only partly satisfied.
If you can get past the jargon, the book contains a thorough, solidly supported treatment of the knowledge representation of natural language.
Perhaps someone with more prior experience with knowledge representation would find the book more approachable.
Based on the quantity of information, the strong relevance to knowledge representation and the clarifying examples, I give this a generous 4 star rating. However, I'm worried that some readers will find the jargon so impenetrable that the book would lose most of its value to them.

Click Here to see more reviews about: Knowledge Representation and the Semantics of Natural Language (Cognitive Technologies)

The book presents an interdisciplinary approach to knowledge representation and the treatment of semantic phenomena of natural language, which is positioned between artificial intelligence, computational linguistics, and cognitive psychology. The proposed method is based on Multilayered Extended Semantic Networks (MultiNets), which can be used for theoretical investigations into the semantics of natural language, for cognitive modeling, for describing lexical entries in a computational lexicon, and for natural language processing (NLP).Part I deals with fundamental problems of semantic knowledge representation and semantic interpretation of natural language phenomena. Part II provides a systematic description of the representational means of MultiNet, one of the most comprehensive and thoroughly specified collections of relations and functions used in real NLP applications.MultiNet is embedded into a system of software tools comprising a workbench for the knowledge engineer, a semantic interpreter translating natural language expressions into formal meaning structures, and a workbench for the computer lexicographer. The book has been used for courses in artificial intelligence at several universities and is one of the cornerstones for teaching computational linguistics in a virtual electronic laboratory.

Buy NowGet 20% OFF

Click here for more information about Knowledge Representation and the Semantics of Natural Language (Cognitive Technologies)

Read More...

5/19/2012

Probabilistic Graphical Models: Principles and Techniques (Adaptive Computation and Machine Learning series) Review

Probabilistic Graphical Models: Principles and Techniques (Adaptive Computation and Machine Learning series)
Average Reviews:

(More customer reviews)
Stanford professor, Daphne Koller, and her co-author, Professor Nir Friedman, employed graphical models to motivate thoroughgoing explorations of representation, inference and learning in both Bayesian networks and Markov networks. They do their own bidding at the book's web page, [...], by giving readers a panoramic view of the book in an introductory chapter and a Table of Contents. On the same page, there is a link to an extensive Errata file which lists all the known errors and corrections made in subsequent printings of the book - all the corrections had been incorporated into the copy I have. The authors painstakingly provided necessary background materials from both probability theory and graph theory in the second chapter. Furthermore, in an Appendix, more tutorials are offered on information theory, algorithms and combinatorial optimization. This book is an authoritative extension of Professor Judea Pearl's seminal work on developing the Bayesian Networks framework for causal reasoning and decision making under uncertainty. Before this book was published, I sent an e-mail to Professor Koller requesting some clarification of her paper on object-oriented Bayesian networks; she was most generous in writing an elaborate reply with deliberate speed.

Click Here to see more reviews about: Probabilistic Graphical Models: Principles and Techniques (Adaptive Computation and Machine Learning series)

A general framework for constructing and using probabilistic models ofcomplex systems that would enable a computer to use available information for makingdecisions.

Buy NowGet 21% OFF

Click here for more information about Probabilistic Graphical Models: Principles and Techniques (Adaptive Computation and Machine Learning series)

Read More...

5/06/2012

Abstract State Machines: A Method for High-Level System Design and Analysis Review

Abstract State Machines: A Method for High-Level System Design and Analysis
Average Reviews:

(More customer reviews)
This is a well written good about an interesting, sensible formalism. I haven't tried using any of it in my line of work yet, but I'm pretty sure I will. Abstract State Machines (ASMs) are based on guarded, synchronously concurrent state transitions, with state effectively defined as a (finite) set of named, finite relations. The core of the formalism seems very simple and elegant and lends itself to clear, concise models at both high and low levels of abstraction. I believe it is more readily comprehended by practicioners than purely algebraic and / or functional approaches, being firmly rooted in the notion of state, operational abstract execution runs and state changes.
They models can be designed in a modular and composable manner in a natural way. The book gives a clear, rigorous account of it all, is readable and well organized, and positively loaded with helpul examples and references. My only complaint is that fully asynchronous (i.e. distributed) systems seem to get somewhat of a short thrift.
Overall, I am really excited about this stuff, and looking forward to a time when all system development can be undertaken and supported with such elegant, refinable models, as opposed to the hodgepodge scripting-language-centric mess that is the current practice.

Click Here to see more reviews about: Abstract State Machines: A Method for High-Level System Design and Analysis

The systems engineering method proposed in this book, which is based on Abstract State Machines (ASMs), guidesthe development of software and embedded hardware-software systems seamlessly from requirements capture to actual implementation and documentation. The method bridges the gap between the human understanding and formulation of real-world problems and the deployment of their algorithmic solutions by code-executing machines. Within a single conceptual framework it covers design, verification by reasoning techniques, and validation by simulation and testing. ASMs improve current industrial practice by using accurate high-level modeling and by linking the descriptions at the successive stages of system development in an organic and efficiently maintainable chain of rigorous and coherent system models at stepwise-refined abstraction levels. In several industrial projects the ASM method has proven its superiority compared to the popular UML methodology when designing complex parallel or dynamic systems.This book combines the features of a textbook and a handbook: the reader will find detailed explanations, proofs, and exercises as well as numerous examples and real-world case studies. Researchers will find here the most comprehensive description of ASMs available today and professionals will use it as a "modeling handbook for the working software engineer." As a textbook it supports self-study or it can form the basis of a lecture course. The book is complemented by a CD containing the whole book text, additional course material, solutions to exercises, and additional examples. Even more information can be found on the related website maintained by the authors: http://www.di.unipi.it/AsmBook/

Buy NowGet 19% OFF

Click here for more information about Abstract State Machines: A Method for High-Level System Design and Analysis

Read More...

5/03/2012

Linear and Nonlinear Programming (International Series in Operations Research & Management Science) Review

Linear and Nonlinear Programming (International Series in Operations Research and Management Science)
Average Reviews:

(More customer reviews)
I have profitably used the book to apply constrained minimization procedures in the field of computational contact mechanics. I think it is not a secret that quite often books on mathematics are written from matematicians for matematicians. Hence it is quite hard for engineers both to read and to extract valuable information from them. With this respect this book is a shining star. It presents the topics in a very precise but clear and understandable way. Moreover the notation also is the best compromise between coinciseness and clarity. Matematicians, please, look at this book and follow such style; we engineer desperately need to communicate with you.

Click Here to see more reviews about: Linear and Nonlinear Programming (International Series in Operations Research & Management Science)



Buy NowGet 20% OFF

Click here for more information about Linear and Nonlinear Programming (International Series in Operations Research & Management Science)

Read More...

3/08/2012

Object Modeling and User Interface Design: Designing Interactive Systems Review

Object Modeling and User Interface Design: Designing Interactive Systems
Average Reviews:

(More customer reviews)
OM&UID is a book about developing new object-oriented methodologies for interactive software. Nine different methods are presented by an international team of software experts like Larry Constantine and Philippe Kruchten.
All the authors are trying to solve constraints or deficiencies in existing methods. Since these are all new or experimental techniques, each author explains exactly what problem s/he is trying to solve, where the new method might be best used, and how it worked in practice. Most of the sections work through a couple of cases, so you can see how the method works.
A couple of the writers have pointed out how difficult current heavy-weight methodologies are to use. The models generated, unless the modeler is extremely experienced, are usually not correct. What's more, as the first chapter notes, the modelers don't realize that their models are bad. A couple of writers have tried to deal with the problem that business customers can't understand UML-style notation, and don't mentally describe their jobs in terms of classes or windows. That cuts customers out of the system design process at exactly the point where they should be most engaged.
The editor repeats what is generally recognized: that very few people use a methodology as such. Most of us use a grab bag of techniques from a mix of methods, heavily customized to our own needs. Mark van Harmelen's book may be best addressed to those who use mixed methods, because it helps us to see how experienced architects decide which techniques to use in different circumstances and how we can determine whether we were successful.

Click Here to see more reviews about: Object Modeling and User Interface Design: Designing Interactive Systems

Object modeling with UML gives developers powerful tools for building software that meets the requirements of its users. Now, in this book, the field's leading experts extend UML to user interface design -- a breakthrough that will enable the creation of far more usable, productive software systems. This book introduces techniques for integrating today's best methods and modeling approaches from both the object technology and the user interface development communities -- ensuring a stronger focus on the user than ever before. The book's coverage encompasses four richly interconnected sources of user, domain, and system modeling information: participative design, task analysis, scenario-based design, and use case analysis. It also demonstrates exactly how UML object models can be used to record user interface design information -- giving developers practical information for designing and constructing software that responds more fully to user requirements and expectations. With contributions from Larry Constantine and other leading software design experts, this book combines theory, practice, and real world "advice from the trenches."

Buy Now

Click here for more information about Object Modeling and User Interface Design: Designing Interactive Systems

Read More...