Showing posts with label programming. Show all posts
Showing posts with label programming. Show all posts

7/29/2012

Designing Effective Database Systems (Addison-Wesley Microsoft Technology Series) Review

Designing Effective Database Systems (Addison-Wesley Microsoft Technology Series)
Average Reviews:

(More customer reviews)
This book gives you a points-to-points look-in on various core aspects ie: component parts & pieces, which earmark & characterizes the design of an effective database system
i'd say, this is a good (first,introductory db design book). it will endow you with the vision or skills to look at/objectively qualify ,the items you need to take into consideration all along the way to designing an effective database system from the beginning of the db design lifecycle to its watershed
This book is...
- Is a good, first birds-eye view of core aspects of the database design terrain from 5,000 feet.
- It's like circling at a high altitude of the database terrain first, whilst still practically clearly seeing the individual trees from the forest.
Its a 319 page read . the detail level is just about right to serve as a quick review of items to consider.
If its sorta your first dip into data & database design , its a good place to start but i'd recommend you take this book, couple it & digest it together with a read of :"Database Design" by Sams; ISBN:0672317583 -(a terrific book!) subsequently after ;
and you'll have a really good,full 20:20 vision of the database system design domain/aspect.
digesting these together gives you a brilliant foundation.
Value: The second book(ie: the Sams book), will patch-up on areas like relationships & give you more meat on all the core checklist of items to objectively consider straight away, if say tomorrow you found yourself commencing with/starting a db design effort. it's a better cookbook.
Riordan's book then would seem a very nice starter/introduction
At this new knowledge point/vantage, you are now equipped with a greater, squarer view of the terrain at some 7,000 feet. ie: at this point, if you were interested in doing the sql-server design exam: 70-229, or the Oracle fundamentals I equivalent: 1Z0-031, everything would make so much more sense re: triggers, sprocs, functions, cursors, Business rules + Constraints, RAID Backup , Indexing, Views, the SQL angle etc. if you pick up an ExamCram2 book + Transcender, Testking or whatever you select as your exam study guide of preference, you'll be able to finally see & understand how things -(aspects of the puzzle), actually all fit together and be able to translate almost effortlessly from conceptual design aspects to the necessary logical design-blueprint , to the physical implementation aspects.
And that which you understand... you won't forget
After digesting the Riordan book followed by the Sams book, you are now ready for intermediate to proficient level. 10,000 to 12,000 feet - design proficiency.
as a 3rd level book , i'd recommend you move on to reading the following 4 (ordered here by: most-entailed to least-entailed):
(1.) Database Modelling Essentials; ISBN:0126445516 ;
Value:(brings you a solid handle on building a database model to support a businesses activities)
(2.) Database Solutions; ISBN:0321173503 ;
Value: (clarity in cruising comfortably between d relational model and a good, solid, logical design...[a great book])
(3.) Database Design for Mere Mortals; ISBN: 0201752840 ;
Value: (great for reviewing Table Relationships -(setting-up joins) and reading the ERD -[Entity Relationship Diagrams])
AND
(4.) Databases Demystified; ISBN:0072253649 ;
Value: (great for stepping you linearly through the database lifecycle again, with good explanations about what you should be sure you are doing & obtaining from each stage/step of the lifecycle)..ie: that which will be expected of you at each step/stage chunk
To cap things up, Read :
- "Beginning Relational database design" ; ISBN:1590594630 ;
Value: (pulls all your data modelling personal resource skills together and reconstitutes them for you by casting you in a role where you practice modelling a complete system from scratch ie: -[from gathering the requirements specification, to the end of the detailed conceptual database design effort for the system]);
And you'll have all the core skills you need to build/design one mean database, enterprise-oriented or otherwise or reverse-engineer one.
if you are already in the thick of a project and are really pressed to find a db design solution -[(logical) + (implementation in SQL code)] right now, maybe consider buying or looking into purchasing the pricey: "Data Model Resource CD_ROM" ;ISBN:0471388289;
Value: it boasts a library of proven: tried and tested Universal Data Models, for all Enterprise types.
So, all you'll need do is adapt or borrow a design solution/model or architecture that applies closely to what you're trying to accomplish modelling for your database project ,and adapt & implement it as a solution for the database system you are designing. it's Magic!
Though i rated d Riordan book 4 stars for the depth of its content matter, the book rates more like a 4.5 for sheer readability & clarity of explanations for such an often notoriously complex technical subject area.
I'd talk about core books that translate to laying-out a solid physical database implementation & tuning for performance, but thats gonna have to wait till maybe a future book review
cheers.
-------

Click Here to see more reviews about: Designing Effective Database Systems (Addison-Wesley Microsoft Technology Series)

"Riordan covers core skills for any developer--database design and development--in a perfect amount of detail. This book should be on every professional developer's reading list."--Duncan Mackenzie, developer, Microsoft (MSDN)"Designing a database is not a trivial subject. Riordan brings experience and clear explanations to a fundamental part of software development."--Patrick Birch, database and technical writing consultant"If you buy only one book on database design, make it this one. Riordan has a talent for explaining technical issues in simple language, without over simplifying."--Brendan Reynolds, developer, Dataset IT Systems and Microsoft Access MVP"A book that will expertly guide you in how to develop a database for a client-- and how to do it right the first time!"--Kenneth D. Snell, Ph.D., ACCESS developer and Microsoft Access MVP "Riordan has produced a unique book that brings together a formal, yet commonsense, approach to relational database design...and then goes further! Many database designers will find immense value in the steps to developing practical data warehouse designs.If you are seeking a framework for designing transactional databases, or want to step out into the world of analytical databases, Riordan's book excels at bridging both worlds."--Paul Irvine, vice president, engineering, Via Training"Riordan takes a complex subject and makes it easy. If you're over your head on a database design project, this book will help bail you out!"--Mike Gunderloy, contributing editor, Application Development Trends"This book covers a wide range of database design and data modeling topics in a well-organized, easy to understand format."--Amy Sticksel, Sticksel Data Systems, Inc."In Designing Effective Database Systems, Riordan's style, wit, and attention to detail are outstanding."--Sandra Daigle, Microsoft Access MVP The Software Developer's Step-by-Step Guide to Database Design World-renowned expert Rebecca M. Riordan has written the definitive database design book for working developers who aren't database experts. No matter how messy or complex your data challenge, Designing Effective Database Systems shows you how to design an effective, high-performance database to solve it.Riordan begins by thoroughly demystifying the principles of relational design, making them accessible to every professional developer.Next, she offers the field's clearest introduction to dimensional database modeling--practical insight for designing today's increasingly important analytical applications. One task at a time, the author illuminates every facet of database analysis and design for both traditional databases and the dimensional databases used for data warehousing, showing how to avoid common architectural pitfalls that complicate development and reduce extensibility. The book concludes with comprehensive, expert guidance on designing databases for maximum usability.This book will teach you to *Understand relational database models, structures, relationships, and data integrity principles *Define database system goals, criteria, scope, and work processes *Construct accurate conceptual models: relationships, entities, domain analysis, and normalization *Build efficient, secure database schema *Master the elements of online analytical processing (OLAP) design: fact tables, dimension tables, snowflaking, and more *Architect and construct easy, efficient interfaces for querying and reporting *Learn from practice examples based on Microsoft's Northwind sample databaseRiordan has helped thousands of professionals master database design and development, earning Microsoft's coveted MVP honor for her exceptional contributions.Nobody is more qualified to help you master database design and apply it in your real-world environment.

Buy NowGet 78% OFF

Click here for more information about Designing Effective Database Systems (Addison-Wesley Microsoft Technology Series)

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/24/2012

An Introduction to Programming with IDL: Interactive Data Language Review

An Introduction to Programming with IDL: Interactive Data Language
Average Reviews:

(More customer reviews)
Nothing is more intimidating to a new user of IDL than to sit down at a computer with an empty command line prompt and a stack of manuals on their desk and be told to write an IDL program. Where to begin!? And the experience is especially frightening to a new user with little or no programming experience in any language, let alone IDL.
Ken Bowman has written an IDL book specifically for this user. It is intended as an introductory computer programming course for the research user with little or no training in any computer language, and it evolved from notes Ken uses in his own undergraduate IDL programming courses. It is meant to get the new IDL user analyzing and plotting data as soon as possible.
It is a narrow path he treads, because it is just as easy to offer too much detail as it is to offer too little information to the beginning user. Ken, for the most part, gets it exactly right in covering a broad selection of topics. I quibble with just two chapters. He sweeps aside the complexity of PostScript output by offering the new user two utility programs he fails to explain in the text, and his theoretical explanation of the FFT function left me gasping for breath and lamenting I hadn't paid closer attention in those long-ago math classes.
This is a book that will get you started, but probably won't answer all your questions when you turn your attention to more difficult research problems. Ken doesn't pretend it is anything other than what it is, however, and provides generous and helpful suggestions for where you can find additional information as you become ready for it. Readers already familiar with another programming language will appreciate this introduction to IDL, but might become frustrated with the slower pace and lack of specific detail on many topics.
The book has an associated web page, where you can find, among other things, the source code for all the programs mentioned in the book. Pay particular attention to the Errata section, especially if you are interested in structures in IDL. A printer glitch removed all the curly brackets from Ken's IDL code in the structure chapter and none of the examples will work as written in the book. A software problem, no doubt. (The example programs for the chapter are correct.) It serves as a reminder to me of how complex a topic software programming can be. This friendly book will be a welcome introduction to the subject for many a potential IDL programmer.

Click Here to see more reviews about: An Introduction to Programming with IDL: Interactive Data Language

In today's information age, scientists and engineers must quickly and efficiently analyze extremely large sets of data. One of the best tools to accomplish this is Interactive Data Language (IDLÂ), a programming and visualization environment that facilitates numerical modeling, data analysis, and image processing.IDL's high-level language and powerful graphics capabilities allow users to write more flexible programs much faster than is possible with other programming languages.An Introduction to Programming with IDL enables students new to programming, as well as those with experience in other programming languages, to rapidly harness IDL's capabilities: fast, interactive performance; array syntax; dynamic data typing; and built-in graphics. Each concept is illustrated with sample code, including many complete short programs. ÂMargin notes throughout the text quickly point readers to the relevant sections of IDL manualsÂEnd-of-chapter summaries and exercises help reinforce learningÂStudents who purchase the book are eligible for a substantial discount on a student version of the IDL software

Buy NowGet 39% OFF

Click here for more information about An Introduction to Programming with IDL: Interactive Data Language

Read More...

7/22/2012

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/21/2012

Data Structures and Algorithms in Java (2nd Edition) Review

Data Structures and Algorithms in Java (2nd Edition)
Average Reviews:

(More customer reviews)
This is an excellent book on data structures and algorithms and would be a great addition to a student's text book. Fortunately Lafore does not dwell on the algorithm analysis as many data structures books do. This is a plus for me, as most texts on the subject get the reader bogged down in the analysis portion of the subject matter. Note: algorithm analysis is a very important subject I just don't believe it should be taught in parallel with data structures to the extent it is. Its easier for me and many others to first learn how to implement data structures and get a feel for their performance then move on to in-depth analysis.
In this book you'll learn the more important data structures without the heavy mathematics many algorithm and data structure books torture readers with. The book is written in very accessible language and the applets really help the inexperienced see the algorithms in action.
As I mentioned this book does not cover algorithm analysis in detail. A step up from this book would be one of Sedgewick's books which provides more detail on the analysis front and some really 'tight' implementations. A good book that focuses on Algorithm Analysis is Intro to Algorithms by Cormen. You better have your math skills up to snuff for the Cormen book however.

Click Here to see more reviews about: Data Structures and Algorithms in Java (2nd Edition)

Data Structures and Algorithms in Java, Second Edition is designed to be easy to read and understand although the topic itself is complicated. Algorithms are the procedures that software programs use to manipulate data structures. Besides clear and simple example programs, the author includes a workshop as a small demonstration program executable on a Web browser. The programs demonstrate in graphical form what data structures look like and how they operate. In the second edition, the program is rewritten to improve operation and clarify the algorithms, the example programs are revised to work with the latest version of the Java JDK, and questions and exercises will be added at the end of each chapter making the book evenmore useful.Educational SupplementSuggested solutions to the programming projects found at the end of each chapter are made available to instructors at recognized educational institutions. This educational supplement can be found at www.prenhall.com, in the Instructor Resource Center.

Buy NowGet 41% OFF

Click here for more information about Data Structures and Algorithms in Java (2nd Edition)

Read More...

7/16/2012

Cloud Application Architectures: Building Applications and Infrastructure in the Cloud (Theory in Practice (O'Reilly)) Review

Cloud Application Architectures: Building Applications and Infrastructure in the Cloud (Theory in Practice (O'Reilly))
Average Reviews:

(More customer reviews)
All it talks about is Amazon's EC2, S3, MapReduce. It does not talk about "Application Architecture". It does not have ideas about how to break up traditional programs into MapReduce paradigm. It should be called Cloud Operations Architecture. If it was named by that title, I'd give it 5 stars. The book itself is not bad, but it will get obsolete very quickly due to its specificity to Amazon.
subtitle should be :Building Applications and Infrastructure in Amazon Cloud

Click Here to see more reviews about: Cloud Application Architectures: Building Applications and Infrastructure in the Cloud (Theory in Practice (O'Reilly))


If you're involved in planning IT infrastructure as a network or system architect, system administrator, or developer, this book will help you adapt your skills to work with these highly scalable, highly redundant infrastructure services. While analysts hotly debate the advantages and risks of cloud computing, IT staff and programmers are left to determine whether and how to put their applications into these virtualized services. Cloud Application Architectures provides answers -- and critical guidance -- on issues of cost, availability, performance, scaling, privacy, and security. With Cloud Application Architectures, you will:



Understand the differences between traditional deployment and cloud computing
Determine whether moving existing applications to the cloud makes technical and business sense
Analyze and compare the long-term costs of cloud services, traditional hosting, and owning dedicated servers
Learn how to build a transactional web application for the cloud or migrate one to it
Understand how the cloud helps you better prepare for disaster recovery
Change your perspective on application scaling

To provide realistic examples of the book's principles in action, the author delves into some of the choices and operations available on Amazon Web Services, and includes high-level summaries of several of the other services available on the market today.Cloud Application Architectures provides best practices that apply to every available cloud service. Learn how to make the transition to the cloud and prepare your web applications to succeed.


Buy NowGet 34% OFF

Click here for more information about Cloud Application Architectures: Building Applications and Infrastructure in the Cloud (Theory in Practice (O'Reilly))

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...

7/09/2012

R in a Nutshell: A Desktop Quick Reference Review

R in a Nutshell: A Desktop Quick Reference
Average Reviews:

(More customer reviews)
'R in a Nutshell' is the essential introductory book on R. Do not try to learn R without it.
I made two attempts to learn R before purchasing this book. In both previous attempts, I had to abort and use another tool to solve my problem because it was taking me too long to accomplish very simple things in R.
The reason R is hard to learn is that its documentation is organized for statisticians that already know R, but have forgotten a detail or two. There are a few other books on learning R, but they are setup like a college course - complete the entire book and THEN you can actually accomplish something.
R in a Nutshell allows you to get working immediately. Simply lookup what you need to do. The firsts thing I did was load a file and make a histogram. I found that stuff in the section on "Loading Data" and the section on charts. In no time I was making stacked area charts for cohorts. Now R is an essential tool for me - and I haven't even taken the time to learn it well! With this book, I don't have to. I can learn as I go. So I actually use R.
Do not R without it.

Click Here to see more reviews about: R in a Nutshell: A Desktop Quick Reference


What people are saying about R in a Nutshell

"I am excited about this book. R in a Nutshell is a great introduction to R, as well as a comprehensive reference for using R in data analytics and visualization. Adler provides 'real world' examples, practical advice, and scripts, making it accessible to anyone working with data, not just professional statisticians." --Martin Schultz, Arthur K. Watson Professor of Computer Science, Yale University

"R in a Nutshell is an ideal book for getting started with R. Newcomers will find the fundamentals for performing statistical analysis and graphics, all illustrated with practical examples. This book is an invaluable reference for anyone who wants to learn what R is and what is can do, even for longtime R users looking for new tips and tricks." --David M. Smith, Editor of the "Revolutions" blog at REvolution Computing

Why learn R? Because it's rapidly becoming the standard for developing statistical software. R in a Nutshell provides a quick and practical way to learn this increasingly popular open source language and environment. You'll not only learn how to program in R, but also how to find the right user-contributed R packages for statistical modeling, visualization, and bioinformatics.

The author introduces you to the R environment, including the R graphical user interface and console, and takes you through the fundamentals of the object-oriented R language. Then, through a variety of practical examples from medicine, business, and sports, you'll learn how you can use this remarkable tool to solve your own data analysis problems.

Understand the basics of the language, including the nature of R objects
Learn how to write R functions and build your own packages
Work with data through visualization, statistical analysis, and other methods
Explore the wealth of packages contributed by the R community
Become familiar with the lattice graphics package for high-level data visualization
Learn about bioinformatics packages provided by Bioconductor


Buy NowGet 20% OFF

Click here for more information about R in a Nutshell: A Desktop Quick Reference

Read More...

6/21/2012

Access Database Design & Programming (3rd Edition) Review

Access Database Design and Programming (3rd Edition)
Average Reviews:

(More customer reviews)
In Access Database Design & Programming, the author uses very mathematical and academic language. The database design part of the book is focused on the mathematical theory of relational databases. The programming part of the book is a reference work to programming with VBA.
All parts of the relational database in Access will be mathematically defined and proven. It will have a name you most probably will find confusing, and far from what you are used to from the Access interface. Apparently the author follows the naming standards established in the academic world to prove the algebra. After all, he is a professor of Mathematics !
In the programming part of the book you will be introduced to the DDL, DML and DCL components included in Access. Also, these components will probably be completely unknown to you, if you have no previous programming experience. Further, the book makes use of DAO as opposed to ADO.
The book is perfect for someone, who has completed courses in Computer Science, Programming and Algebra, or with the equivalent knowledge and a mathematical/academic way of thinking. They will be able to read through the book in a fast pace, and immediately make use of Access at a high level.
If your background is different, I would recommend another approach to database design and programming. For database design, I recommend "Inside Relational Databases" by Whitehorn and Marklyn (ISBN 354076092X). To learn programming I recommend "Learn to Program with VB 6" by John Smiley (ISBN1902745000).
This book is going to split its readers in two groups: The mathematically and academic minded who will love the book for its concise language. And the "grass roots" among the Access users/developers, who will be looking for database samples or VBA code snippets to learn from, and find none.
You will probably ask yourself if you need to know this much theory and detail. But remember, a relational database operates purely on mathematics. It is difficult and tiresome to learn, but your reward will be well worth the effort.

Click Here to see more reviews about: Access Database Design & Programming (3rd Edition)


Access Database Design & Programming takes you behind the details of the Access interface, focusing on thegeneral knowledge necessary for Access power users or developers to create effective database applications. When using software products with graphical interfaces, we frequently focus so much on the interface that we forgetabout the general concepts that allow us to understand and use the software effectively. In particular, this bookfocuses on three areas:
Database design. The book provides an enjoyable, informative overview of database design thatcarefully shows you how to normalize tables to eliminate redundancy without losing data. Queries. The book examines multi-table queries (i.e.,various types of joins) and shows how toimplement them indirectly by using the Access interface or directly by using Access SQL. Programming. The book examines the VBA integrated development environment (IDE). It then goes onto provide an excellent introduction to Data Access Objects (DAO), ActiveX Data Objects (ADO), and ADO Extensions for Data Definition and Security (ADOX). These sections serve as a handy introduction and primer for basicdatabase operations,such as modifying a table under program control, dynamically adding and deleting a record,and repositioning a record pointer. The concluding chapter focuses on common programming problems, such ascomputing running sums and comparing two sets.
Unlike other Access books that take the long, detailed approach to every topic of concern to Access programmers,Access Database Design &Programming instead focuses on the core concepts, enabling programmers to developsolid, effective database applications. This book also serves as a 'second course' in Access that provides arelatively experienced Access user who is new to programming with the frequently overlooked techniques necessaryto develop successfully in the Microsoft Access environment.
Anyone interested in learning Access in depth, rather than just scraping the surface, will enjoy and benefitimmensely from reading this book.


Buy NowGet 35% OFF

Click here for more information about Access Database Design & Programming (3rd Edition)

Read More...

6/17/2012

Developing Software with UML: Object-Oriented Analysis and Design in Practice (2nd Edition) Review

Developing Software with UML: Object-Oriented Analysis and Design in Practice (2nd Edition)
Average Reviews:

(More customer reviews)
Surely this book is not the absolute reference for the UML. Someone seeking for such a book, should check up on: "The Unified Modeling Language User Guide", "The Unified Modeling Language Reference Manual" both by the 3 amigos, and "UML Distilled, Second Ed." by Martin Fowler et al.
I gave 5 stars because, to my opinion, the author has catched the main need of someone who uses the UML for the first time; to design/develop software. Formalizations and abstractions are absolutely necessary in real applications, but really destructing during the first steps simply because anything usefull is interspersed in several chapters. On the other hand, the coverage of both the UML and the OO S/W development in this book is definitely not shallow.
"Developing Software with UML" is perhaps the best choise for beginning with UML. It is well-structured, intuitive and easy.

Click Here to see more reviews about: Developing Software with UML: Object-Oriented Analysis and Design in Practice (2nd Edition)

Practical guide to exploiting the power of Object Technology & UML in your software development process.

Buy NowGet 15% OFF

Click here for more information about Developing Software with UML: Object-Oriented Analysis and Design in Practice (2nd Edition)

Read More...

6/16/2012

Scaling MongoDB Review

Scaling MongoDB
Average Reviews:

(More customer reviews)
Scaling MongoDB is a short book that focuses on how scaling works on the document centered database of the same name.
The book is an enjoyable introduction to scaling MongoDB.
It begins by defining concepts such as sharding or splitting and in how MongoDB splits data between servers.
Step by step the book guide us in how to implement a database cluster, its configuration and administration.
It is so easy that in less than an hour you can have running a cluster in, for example, Amazon EC2 for testing.
It also offers a few tips on how to configure the database depending on the data you're working in.
This book is not a complete manual or an administration guide and it doesn't want to be on, it only provides us an introduction to mongoDB capabilities.
In short, a simple but useful book.

Click Here to see more reviews about: Scaling MongoDB


Create a MongoDB cluster that will to grow to meet the needs of your application. With this short and concise book, you'll get guidelines for setting up and using clusters to store a large volume of data, and learn how to access the data efficiently. In the process, you'll understand how to make your application work with a distributed database system.

Scaling MongoDB will help you:

Set up a MongoDB cluster through sharding
Work with a cluster to query and update data
Operate, monitor, and backup your cluster
Plan your application to deal with outages

By following the advice in this book, you'll be well on your way to building and running an efficient, predictable distributed system using MongoDB.


Buy NowGet 4% OFF

Click here for more information about Scaling MongoDB

Read More...

6/05/2012

Visualizing Data: Exploring and Explaining Data with the Processing Environment Review

Visualizing Data: Exploring and Explaining Data with the Processing Environment
Average Reviews:

(More customer reviews)
This book allowed me to quickly create some simple applications using the processing API. So, in that respect, the book was successful. However, the book falls short in three respects.
1) One would expect a book with the title "Visualizing Data" to be crammed with pictures showing many different data visualizations. However, this book has relatively few. Every colleague of mine who passed by my desk and picked up the book had the exact same reaction.
2) The processing language is touted as a means for people unfamiliar with programming to get up to speed with visualization. However, I would be very surprised if anyone with little programming experience would get much out of this book.
3) Don't expect to use this book as a reference for the processing language. It is basically just a collection of half explained examples. Consider for example the function smooth(). This function appears in almost every example but forget about trying to find an explanation of what the function does in the book.
The book is probably worth buying to get up to speed quickly but plan on spending a significant amount of time sifting through the processing.org website and other online resources before being able to get anything non-trivial done. And if you don't already know Java then don't expect to accomplish anything even modestly complex without a lot of outside help.


Click Here to see more reviews about: Visualizing Data: Exploring and Explaining Data with the Processing Environment


Enormous quantities of data go unused or underused today, simply because people can't visualize the quantities and relationships in it. Using a downloadable programming environment developed by the author, Visualizing Data demonstrates methods for representing data accurately on the Web and elsewhere, complete with user interaction, animation, and more. How do the 3.1 billion A, C, G and T letters of the human genome compare to those of a chimp or a mouse? What do the paths that millions of visitors take through a web site look like? With Visualizing Data, you learn how to answer complex questions like these with thoroughly interactive displays. We're not talking about cookie-cutter charts and graphs. This book teaches you how to design entire interfaces around large, complex data sets with the help of a powerful new design and prototyping tool called "Processing". Used by many researchers and companies to convey specific data in a clear and understandable manner, the Processing beta is available free. With this tool and Visualizing Data as a guide, you'll learn basic visualization principles, how to choose the right kind of display for your purposes, and how to provide interactive features that will bring users to your site over and over. This book teaches you:

The seven stages of visualizing data -- acquire, parse, filter, mine, represent, refine, and interact
How all data problems begin with a question and end with a narrative construct that provides a clear answer without extraneous details
Several example projects with the code to make them work
Positive and negative points of each representation discussed. The focus is on customization so that each one best suits what you want to convey about your data set
The book does not provide ready-made "visualizations" that can be plugged into any data set. Instead, with chapters divided by types of data rather than types of display, you'll learn how each visualization conveys the unique properties of the data it represents -- why the data was collected, what's interesting about it, and what stories it can tell. Visualizing Data teaches you how to answer questions, not simply display information.

Buy NowGet 37% OFF

Click here for more information about Visualizing Data: Exploring and Explaining Data with the Processing Environment

Read More...

6/04/2012

Object-Oriented Discrete-Event Simulation with Java - A Practical Introduction (SERIES IN COMPUTER SYSTEMS (previously: The Plenum Series in Computer (Series in Computer Science) Review

Object-Oriented Discrete-Event Simulation with Java - A Practical Introduction (SERIES IN COMPUTER SYSTEMS (previously: The Plenum Series in Computer (Series in Computer Science)
Average Reviews:

(More customer reviews)
Some of the concepts were new to me and some were not. The old ideas were the ones that I came across in a first Java programming course or in a discrete-event simulation course. Book is easy to read, concise, not a textbook. Useful for someone that has not studied anything about discrete-event simulation.

Click Here to see more reviews about: Object-Oriented Discrete-Event Simulation with Java - A Practical Introduction (SERIES IN COMPUTER SYSTEMS (previously: The Plenum Series in Computer (Series in Computer Science)

This book introduces the application of the Java programminglanguage in discrete-event simulation. In addition, the fundamentalconcepts and practical simulation techniques for modeling differenttypes of systems to study their general behavior and their performanceare introduced. The approaches applied are the process interactionapproach to discrete-event simulation and object-oriented modeling.Java is used as the implementation language and UML as the modelinglanguage. The first offers several advantages compared to C++, themost important being thread handling, graphical user interfaces (GUI),and Web computing. The second language, UML (Unified ModelingLanguage), is the standard notation used today for modeling systems asa collection of classes, class relationships, objects, and objectbehavior. The book concentrates on object-oriented modeling andimplementation aspects of simulation models using Java and practicalsimulation techniques. In addition, the book illustrates the dynamicbehavior of systems using the various simulation models as casestudies.

Buy Now

Click here for more information about Object-Oriented Discrete-Event Simulation with Java - A Practical Introduction (SERIES IN COMPUTER SYSTEMS (previously: The Plenum Series in Computer (Series in Computer Science)

Read More...

2/15/2012

VHDL: Analysis and Modeling of Digital Systems Review

VHDL: Analysis and Modeling of Digital Systems
Average Reviews:

(More customer reviews)
Background info:
I have been an ASIC engineer since 1986. I have designed many ASICs in Verilog and VHDL. I have 7 books on VHDL including Dr. Navabi's text.
Some of the VHDL books out there are more like cookbooks: too many code examples and not enough explanation. Navabi's book is NOT a cookbook.
Further, it is hard to do a direct comparison to other VHDL texts. In a way it would be like comparing apples and oranges. While some VHDL texts try to explain everything about VHDL, other books like Dr. Navabi's explain the more useful parts of VHDL as being used by a digital systems or ASIC designers. While other books are mostly for RTL coders with very little testbench and system level modeling info. In my opinion, test is extremely important as well as modeling at the system level. Many books out there do not do a good job on those aspects. Most books provide very brief explanations of test benches and/or system level modeling.
This book is highly useful for a digital systems design engineer or architect. This book is not only covers coding for RTL synthesis but doing the testbenches, and sytem level modeling as well. This book has a very good balance between all the main uses of the VHDL modeling langauage.
Here is my overview of the chapters :
The first two chapters provides you with a history of modeling languages and the reason VHDL was created. I recommend that you read these chapters, especially if this is your first modeling language. The chapters are not long, but it provides a very good high level overview to modeling, synthesis, and test.
Chapter three gets you up and running quickly by providing simple examples to give you a good introduction to behavioral and structural VHDL.
Chapters 4 though 9 are heart of the VHDL aspect of the book.
Chapter 4 is very important. It describes VHDL inertial and concurrent timing in great detail. In fact, I believe Dr. Navabi's book is the best available in this aspect! It is important to understand for modeling and especially testing purposes. Chapter 5 is on structural VHDL. it is a good place to start since it is the easiest to understand. Chapter 6 introduces procedures, functions, packages, generics, and configurations. I like the way this chapter is written. Other books are not as easy to read as this one. Great examples and its clearly written as is the entire book actually. Chapter 7 digs into the VHDL types, operators, and attributes. Chapter 8 covers guarding and signal resolution. It also provides a good state machine example. Once you get through Chapter 8, pat yourself on the back because you got through the hard parts of VHDL! VHDL is a harder language to learn than Verilog. But for good reason, VHDL is much more powerful and structured than Verilog in my opinion. You can code faster in Verilog, but the code is not typically as readable as VHDL. Most of the VHDL codes I have seen are much more readable. Some of the Verilog code I have seen are downright nasty looking and time consuming to interpret. Chapter 9 starts to put it (chapters 6-8) all together by more thorough examples behavioral modeling: testbenches/harnesses, arbitration/handshaking, etc.
Chapters 10-11 puts it all together with some system examples : cpu, dma, system bus modeling/timing/interfacing, etc. even memory caches! These are not complicated examples but they are real world examples. All of the techniques are still begin used today. If they were more complicated examples the book would need to be much bigger. However, these are great examples that ties everything up. Once you complete chapter 11, you are well on your way! You will have accomplished something!
Don't overlook Chapters 12 (advanced modeling) and the appendices (esp. App. B, the synthesis subset). This additional information puts Navabi's book above other VHDL books in my opinion.
Conclusion:
It is difficult to create a VHDL book to be 'the' book for all types and levels of designers and engineers (architectural, RTL coders, testbench and verification, etc.) But, in my opinion this book comes closest. I highly recommend this book! I have many books on VHDL. This book is valuable to me as a reference and has helped me tremendously - it's a keeper! All the codes work and I only found one insignificant typo. I can not say that about any of my other VHDL books. In fact, I will probably soon be getting rid of some of my VHDL books to make space on my shelves for new books. I'll be keeping Navabi's VHDL book as a permanent reference- for sure! I recommend this book for beginners because I like the way it progresses and delivers the material: in the right order and in the right amount. I recommend this book for moer advanced people as well, I am sure that it has material that is not covered in other VHDL books. And it makes a great reference as well.
P.S.
There are recent additions to VHDL that are not discussed in this book..namely VHDL-AMS, which adds analog extentions. However, it is still very young and most simulators do not support the analog extentions yet.

Click Here to see more reviews about: VHDL: Analysis and Modeling of Digital Systems

The definitive guide to VHDLÑnow updated with the new VHDL93 standard! Here's the new second edition of the authoritative reference engineers need to guide them through the use of VHDL hardware description language in the analysis, simulation, and modeling of complicated microelectronic circuits. The number and depth of its relevant and practical examples and problems is what sets this edition apart from other VHDL texts. It includes extensive new material to bring the guide fully up to date with the new VHDL93 standard, including new chapters on design flow, interfacing, modeling, and timing, as well as appendixes on logic synthesis and description styles.

Buy Now

Click here for more information about VHDL: Analysis and Modeling of Digital Systems

Read More...

2/03/2012

The Object Constraint Language: Precise Modeling With Uml (Addison-Wesley Object Technology Series) Review

The Object Constraint Language: Precise Modeling With Uml (Addison-Wesley Object Technology Series)
Average Reviews:

(More customer reviews)
First, I like this book. I trust about every line of it. It is itself precise or at least as precise as possible. It summarizes things in a concise and complete way. Required prior knowledge is UML (of course). I'd recommend Fowler's beautiful UML distilled and also even more important a solid understanding of design by contract. I recommend the complete book of Bertrand Meyer "Object Oriented Software Construction". Yes I know its many month of reading.
The problem with this OCL book is the following: It is difficult to understand anything not prior understood. However once one has a grasp of understanding this book is really clarifying. So, it requires in many areas more maturity in the field than most of us including me have. So, I would wish a book, which starts of at a somewhat lower level, in a less dry diction.

Click Here to see more reviews about: The Object Constraint Language: Precise Modeling With Uml (Addison-Wesley Object Technology Series)



Buy Now

Click here for more information about The Object Constraint Language: Precise Modeling With Uml (Addison-Wesley Object Technology Series)

Read More...

1/04/2012

Digital Modeling of Material Appearance (The Morgan Kaufmann Series in Computer Graphics) Review

Digital Modeling of Material Appearance (The Morgan Kaufmann Series in Computer Graphics)
Average Reviews:

(More customer reviews)
This is the future of Computer Graphics. The book begins with a solid, foundational overview of light properties and their current forms of implementation. The book then gracefully develops the more advanced concepts and smoothly transitions into digital modeling of material appearance. In this subject of light there is no better compendium of knowledge, especially one that can educate due to its salient command of technical language that never obscures the concept underneath.

Click Here to see more reviews about: Digital Modeling of Material Appearance (The Morgan Kaufmann Series in Computer Graphics)

Computer graphics systems are capable of generating stunningly realistic images of objects that have never physically existed. In order for computers to create these accurately detailed images, digital models of appearance must include robust data to give viewers a credible visual impression of the depicted materials. In particular, digital models demonstrating the nuances of how materials interact with light are essential to this capability. This is the first comprehensive work on the digital modeling of material appearance: it explains how models from physics and engineering are combined with keen observation skills for use in computer graphics rendering.Written by the foremost experts in appearance modeling and rendering, this book is for practitioners who want a general framework for understanding material modeling tools, and also for researchers pursuing the development of new modeling techniques. The text is not a "how to" guide for a particular software system. Instead, it provides a thorough discussion of foundations and detailed coverage of key advances.Practitioners and researchers in applications such as architecture, theater, product development, cultural heritage documentation, visual simulation and training, as well as traditional digital application areas such as feature film, television, and computer games, will benefit from this much needed resource.ABOUT THE AUTHORSJulie Dorsey and Holly Rushmeier are professors in the Computer Science Department at Yale University and co-directors of the Yale Computer Graphics Group. François Sillion is a senior researcher with INRIA (Institut National de Recherche en Informatique et Automatique), and director of its Grenoble RhÃne-Alpes research center. * First comprehensive treatment of the digital modeling of material appearance;* Provides a foundation for modeling appearance, based on the physics of how light interacts with materials, how people perceive appearance, and the implications of rendering appearance on a digital computer;* An invaluable, one-stop resource for practitioners and researchers in a variety of fields dealing with the digital modeling of material appearance.

Buy Now

Click here for more information about Digital Modeling of Material Appearance (The Morgan Kaufmann Series in Computer Graphics)

Read More...