Showing posts with label software. Show all posts
Showing posts with label software. Show all posts

Data Structures and Algorithms in C++ Review

Data Structures and Algorithms in C++
Average Reviews:

(More customer reviews)
This is one of the dozens of Data Structures and Algorithms books in the market and till now the worst I've ever seen. I have taken two DSA courses in my undergrad years, and now as a grad, I'm TAing that course.
The theoretical treatment of the book is superficial and too childish. Yet, there's too little practical value. They discuss the unnecessary linked list implementations of trees which is quite confusing for students. I am also amazed that they do not mention finding or removing an element in a BST. And, more importantly there's too little discussion of graphs.
I don't understand those professors trying to bog down students with useless details and complicated C++ codes. Rather, they should give the intuition and the theory behind the data structures and algorithms. Weiss' book is much better than this one. But, even that is obsessed with doing tricky things with C++.
Anyway, to sum up: This book is a garbage. Stay away unless it's required for the course you're taking in case you may need to do homeworks and such.

Click Here to see more reviews about: Data Structures and Algorithms in C++

* Provides a comprehensive introduction to data structures and algorithms, including their design, analysis, and implementation* Each data structure is presented using ADTs and their respective implementations* Helps provide an understanding of the wide spectrum of skills ranging from sound algorithm and data structure design to efficient implementation and coding of these designs in C++Wiley Higher Education

Buy Now

Click here for more information about Data Structures and Algorithms in C++

Read More...

Programming PHP Review

Programming PHP
Average Reviews:

(More customer reviews)
The creator of PHP himself, Rasmus Lerdorf, put together a thorough and enlightening guide to PHP. In this book you will find everything you need to know about PHP from variables to a long list of all the PHP functions and how to use them. I found many features of PHP that I had no idea existed (such as creating PDF files). I use this book as a reference for a PHP course I teach, and its examples have been more than helpful to me in designing lesson plans.
The one caveat of this book is that it is not geared toward brand new web programmers. PHP as a language derives from C, C++ and Perl, and if you are not at least somewhat familiar with these langauges, you can get lost in this book. The authors really want to draw a parallel between PHP and its predecessor languages so that programmers can pick up PHP more easily. I really like the fact they try to do that, and it has helped me enjoy this book more. But on the flip side, it will be more difficult for new programmers to read this book. I really hope O'Reilly comes up with a "Learning PHP" book that will be more for beginning programmers, because PHP is a great language to learn, and it would be nice to have books to appeal to all levels.
In any case, for a book about PHP, you can ask for no better book than one written by the author itself. This book does keep up the tradition of professional, useful O'Reilly programming books, and is worth the time for web programmers to read. Thus I think it earns 5 stars.

Click Here to see more reviews about: Programming PHP


PHP is a simple yet powerful open-source scripting language for creating dynamic web content. The millions of web sites powered by PHP are testament to its popularity and ease of use. PHP is used by both programmers, who appreciate its flexibility and speed, and web designers, who value its accessibility and convenience. Programming PHP is an authoritative guide to PHP 4 and is filled with the unique knowledge of the creator of PHP, Rasmus Lerdorf. This book explains PHP language syntax and programming techniques in a clear and concise manner, with numerous examples that illustrate both correct usage and common idioms. The book also includes style tips and practical programming advice that will help you become not just a PHP programmer, but a good PHP programmer. Programming PHP covers everything you need to know to create effective web applications with PHP. Contents include:

Detailed information on the basics of the PHP language, including data types, variables, operators, and flow control statements

Separate chapters on the fundamental topics of functions, strings, arrays, and objects


Buy Now

Click here for more information about Programming PHP

Read More...

Agile Software Development Review

Agile Software Development
Average Reviews:

(More customer reviews)
Every fifteen years or so, a great book pops up that describes what
projects are really like. There was Brooks, then DeMarco and Lister,
and now there's Cockburn.
Why is there such a gap between these great books? Possibly because
the message they contain isn't the easy-to-digest dictate: "run your
project this way and everything will be fine." Instead these books all
focus on the fundamentals of projects: people and the way they work
together. These books treat people as people, and not replaceable
parts in a process. The books accept people's foibles and
inconsistencies, and work out how to work with them, rather than how
to try to stamp them out. The books ask: how can we help these funky
people work better together to produce great software?
Agile Software Development has some great answers, which makes it a
significant book. It deals with the issue that programming is
essentially communicating. It looks at the success factors of
individuals, and how to help align the project with these. It
discusses practical ways to reduce the latency of communication (do
you know how much each extra minute taken finding things out costs on
a 12 person project? How do you line your walls with information
radiators?) The book mines the metaphor of development as a
cooperative team game, and looks at development organizations as a
community, where good citizenship pays.
So how _do_ you organize all these people, these team players, these
citizens? The answer is with methodologies. But not with something you
buy off-the-shelf. Cockburn argues that teams should work to define,
and then refine, their own methodologies, bringing in standard ones
where they fit. To help the teams, he has a wonderful section
describing what methodologies _are_, and how to build them. This is
good, solid, practical advice. He talks about when it's good to be
light, and when you need to be heavier, when laissez-faire works, and
when you need ceremony to reduce risks. Then, not content with helping
you create a methodology, Cockburn explains how to adapt what you have
to a changing world.
If you work in or with a team developing software, then you owe it to
yourself (and your team) to read this book. You'll come away with a
far clearer understanding of the dynamic at work in your team, and
with lots of ideas for improving it. And that's the whole point.

Click Here to see more reviews about: Agile Software Development

Lightweight methodologies are exploding in popularity because their flexibility is ideal for today's fast-changing development environments. In Agile Software Development, legendary software expert Alistair Cockburn reviews the advantages and disadvantages of lightweight methods, synthesizing the field's key lessons into a simplified approach that allows developers to focus on building quality software rapidly, cost-effectively, and without burnout. Ideal for managers seeking to transcend yesterday's failed approaches, the agile movement views software development as a cooperative game. As players move throughout the game, they use markers and props to inform, remind, and inspire themselves and each other. The goal of the game: to deliver a working software system -- and to use the lessons of each project to build a new, smarter "game" for the next project. For every IT executive and manager, software developer, team leader, team member, and client concerned with building robust, cost-effective software.

Buy Now

Click here for more information about Agile Software Development

Read More...

The World of Music Review

The World of Music
Average Reviews:

(More customer reviews)
The previous editions were actually better. They contained a better variety of music, listening and topics. The new edition has blatant errors... ie page 60, the performer is misidentified as Huddie Ledbetter, it is Taj Mahal. Pat Metheny is misidentified as "Bob Metheny" p. 133. There are more errors and shortcomings but the worst part is the brevity. Can you imagine the only listening examples of American popular music include Ethel Merman, Bob Wills, Ricky Skaggs, Gretchen Wilson, Little Richard, the Allman Bros, and Toni Braxton?
World music topics are arbitrary and spotty. There is no mention of Arabic music, Flamenco, and other important and influential traditions.
Only a passing reference is given to Latin Jazz, Jobim's music has been eliminated from the current edition of CDs even though his Girl from Ipanema is one of the greatest selling jazz records of all time. The French Gypsy Jazz of Django Reinhardt and Stephan Grappelli is not even mentioned.
Overall, a great concept but needs augmentation.

Click Here to see more reviews about: The World of Music

The World of Music is a music appreciation book designed for instructors who want to focus on listening to music as it exists in the real world of their students. Expanding the traditional repertoire used for music study, this popular text begins with American folk, religious, jazz, popular, and ethnic music before introducing some world music and concluding with a thorough overview of Western classical music. The approach captures the essence of each repertoire, and equips students to recognize different styles, appreciate their different functions, and possess a solid foundation for a lifetime of musical appreciation.

Buy Now

Click here for more information about The World of Music

Read More...

Sams Teach Yourself Visual Basic 2008 in 24 Hours: Complete Starter Kit Review

Sams Teach Yourself Visual Basic 2008 in 24 Hours: Complete Starter Kit
Average Reviews:

(More customer reviews)
I love this book! The only programming I had had was Basic back in 1984-85 so obviously I am starting from the beginning. I needed basics (like general definitions, logic of how programming works, and specifics for how the Visual Basic works) so I could understand the programmers I work with. After reading and going through the exercises in this book, I can speak the same language and I've even been able to do automation for my quality assurance testing.
BTW - took me about 2 1/2 weeks to get through it all ;-)

Click Here to see more reviews about: Sams Teach Yourself Visual Basic 2008 in 24 Hours: Complete Starter Kit

In just 24 sessions of one hour or less, you will be up and running with Visual Basic 2008. Using a straightforward, step-by-step approach, each lesson builds upon a real-world foundation forged in both technology and business matters, allowing you to learn the essentials of Visual Basic 2008 from the ground up. Step-by-step instructions carefully walk you through the most common questions, issues, and tasks. The Q&A section, quizzes, and exercises help you build and test your knowledge.By the Way notes present interesting pieces of information. Did You Know? tips offer advice or teach an easier way to do something. Watch Out! cautions advise you about potential problems and help you steer clear of disaster.Learn how to…Use the powerful design environment of Visual Studio 2008

Buy Now

Click here for more information about Sams Teach Yourself Visual Basic 2008 in 24 Hours: Complete Starter Kit

Read More...

Data Structures with C++ Using STL (2nd Edition) Review

Data Structures with C++ Using STL (2nd Edition)
Average Reviews:

(More customer reviews)
The book itself is great and illustrates the core concepts well.
The code examples are grossly out of date (were talking 1990's) and completely ruins the beautiful text by adding confusing, poorly written code examples to reinforce good literature.
If you are buying this to learn data structures as a reference, great.
If you expect usable code examples this is not the book for you.
Highly Microsoft Visual Studio Centric. Not ANSI C++.
My note to the author's / publisher: You need to keep up with the times. This is technology and it moves quickly. Otherwise future-proof your code as much as possible.

Click Here to see more reviews about: Data Structures with C++ Using STL (2nd Edition)

This book uses a modern object-oriented approach to data structures, unified around the notion of the Standard Template Library (STL) container classes. The book presents a systematic development of data structures supported by numerous examples and complete programs. The authors separate the applications of a data structure from its implementation. Includes an applied study of interesting and classical algorithms that illustrate the data structures using only simple mathematical concepts (Big-O notation is introduced intuitively); Many additional figures are integrated into the presentation; ADT (Abstract Data Type) for each data structure—immediately used to solve appropriate problems; Early and accessible introduction to templates and iterators; Use of modern C++ constructs in developing data structures and their applications provides enough language detail to sufficiently understand the constructs.

Buy Now

Click here for more information about Data Structures with C++ Using STL (2nd Edition)

Read More...

Service-Oriented Architecture (SOA): Concepts, Technology, and Design Review

Service-Oriented Architecture (SOA): Concepts, Technology, and Design
Average Reviews:

(More customer reviews)
This book is superb. I have read every SOA book available (up until Apr/06) because it's part of my job as a technology research analyst and all-around techno-geek. From those that I have read and studied, this is the only one I feel compelled to write a review about. AND - because I did have to go through it in such detail I'm going to raid my research notes and share with you a detailed review of not just the book, but each of its chapters.
Chapter 1 - Introduction
Nothing special here, this is just a chapter that introduces the rest of the book. Call it a glorified table of contents if you will. At first I felt like skipping it altogether, but then I did what I'm supposed to do for my job and that is read each and every part. In the end, I'm glad I took the time for two reasons: By reading a summary of each of the chapters I got a good feel for what this book was going to cover and what it wasn't going to cover. Secondly, I liked the author's intro stuff about ideal and not so ideal (real) SOA. Kind of insightful and stinging at the same time. Still, though, this is still just a description of other chapters. It's also a chapter you can get for free at the book's web site.
Chapter 2 - Case Studies
Here the author provides background information for the two companies he uses as case studies. If you're into case studies, then you'll definitely want to read through this. But - I found the subsequent samples pretty easy to follow and I think you could get away with skipping this chapter if you really wanted to.
Chapter 3 - Introducing SOA
Here's where I started getting into the meat of the book. If you think you don't understand what soa is or what the industry's made of it or turned it into then you need to read this chapter. It breaks it all down and builds it all up again in a very systematic manner. Make sure you leave this chapter with an understanding of how primitive and contemporary variations of soa are different because the author uses these terms later.
Chapter4 - The Evolution of SOA
Finally someone who makes a distinction between specification and standard and gets it right. This chapter talks about the soa industry and how vendors are responsible for soa but are also causing problems at the same time. How standards organizations are working for soa but also competing at the same time. Pretty interesting stuff and even though this was the least technical chapter, not once was I bored. It ends by comparing Ssoa with older architectures. I especially like how the author differentiates between soa and "traditional" distributed architecture that uses web services. (hint: rpc has a lot to do with it)
Chapter 5 - Web services and primitive soa
I read the author's first soa book last year and this chapter seemed to repeat a few sections from that. But if I remember correctly it goes into more detail and provides case study examples that the first book didn't have. If you're a web services veteran you can probably skip this one.
Chapter 6 -Web Services and Contemporary SOA (Part I: Activity Management and Composition)
Here he goes up a gear and dives right into that scary thing we've been calling ws-* Everything from transactions to context mgmt to orchestration and so on is covered. I really felt the author did a brilliant job building this chapter up by starting with simple meps and building up to activity management and bpel and so on. He really showed how each adds a layer over the other and how all add layers to soa.
Chapter 7 - Web Services and Contemporary SOA (Part II: Advanced Messaging, Metadata, and Security)
Yup, the rollercoast ride continues here as he gets into addressing, reliable messaging, security and other ws-* specs. All of these are specs I had already heard about and I think this type of coverage is appropriate forwhere soa is going. I forgot to mention that in this chapter and 6 he introduces 'in plain english' sections that are hilarious. They are humorous analogies that compare these complex technologies to analogies he writes about a car wash. Good, fresh writing in the usual dull and dry techno world.
Chapter 8 - Principles of Service-Orientation
Essentially a whole bunch of theory about designing services and then eight specific 'principles' (dos and don'ts) about how to design services the right way for soa. I had to go back and reread this chapter after I finished the book. I sort of glanced thru it at first but then found out that later chapters really use these principles. When I went through it again I actually thought this was pretty important stuff. This really is the next oo. You can get this chapter for free at the book web site too.
Chapter 9 - Service Layers
STudy this if you're a application architect or enterprise architect. It shows what you canh do with services built with service-orientation. The diagrams showing different types of layers combined together are pretty cool.
Chapter 10 - SOA Delivery Strategies
If you're a PM you'll love this chapter. It gets into the different phases in a soa project and how you can reorganize them using 'delivery strategies' depending on your budgets and priorities. I'd pay extra close attention to the pros and cons parts where, after documenting these strategies in abstract, the author points out their true colors.
Chapter 11 + 12 - Service-Oriented Analysis I + II
Don't know where to start when it comes to figuring out your services? Well, the author lays it all out here. He provides a process for systemtically breaking down your business logic and divying it up into services. Chapter 12 is like an instruction manual about service model. Being froma web services background this was all new to me.
Chapter 13 - 16 - Service-Oriented Design I, II, III, IV
Roll up your sleeves man, because here is where you get into the real muck of building web services for an soa. There are a bunch of processes that hash out the nitty gritty of wsdl, xsd, and bpel and show you how to build services for the types of layers set up in ch.9. Tons of code and case study samples and tips for design. This is probably the most valuable part of the book for developers and architects.
Chapter 17- Fundamental WS-* Extensions
I forgot tomention that in chapters 6 and 7 no code samples are given. He only covered ws-* specs conceptually. All of the corresponding code is placed in this chapter. A bit inconvenient if you're a developer who wants to see the code while learning about the spec, but not tragic. The neat thing is he ties the code samples into the case studies. This was my first experience with ws-* in real world tyhpe scenarios.
Chapte r18 - SOA Platforms
The author documents j2ee and .net frameworks here first in total abstract and then about how they support the different parts of soa. This was very interesting because it related a lot of the concepts stuff to actual technology and the let you compare different technologies in how they support soa.
I recommend this book to colleagures and clients and I'm recommending it here. If you have questions about SOA then this book probably has the answers you're looking for. I say that because by the time I finished reading it I ran out of questions myself.


Click Here to see more reviews about: Service-Oriented Architecture (SOA): Concepts, Technology, and Design

This is a comprehensive tutorial that teaches fundamental and advanced SOAdesign principles, supplemented with detailed case studies and technologiesused to implement SOAs in the real world.***We'll have cover endorsements from Tom Glover, who leads IBM's WebServices Standards initiatives; Dave Keogh, Program Manager for Visual StudioEnterprise Tools at Microsoft, and Sameer Tyagi, Senior Staff Engineer, SunMicrosystems. All major software manufacturers and vendors are promotingsupport for SOA. As a result, every major development platform now officiallysupports the creation of service-oriented solutions.Parts I, II, and III cover basic and advanced SOA concepts and theory thatprepare you for Parts IV and V, which provide a series of step-by-step "howto" instructions for building an SOA. Part V further contains coverage of WS-*technologies and SOA platform support provided by J2EE and .NET.

Buy Now

Click here for more information about Service-Oriented Architecture (SOA): Concepts, Technology, and Design

Read More...

Code: The Hidden Language of Computer Hardware and Software Review

Code: The Hidden Language of Computer Hardware and Software
Average Reviews:

(More customer reviews)
I think that this is the best book that I have read all year. In some sense this is the book that I have been looking for for twenty-five years--the book that will enable me to understand how a computer does what it does. And--given the centrality of computers in our age--it has been a long wait. But now it is over. Charles Petzold (1999), Code: The Hidden Language of Computer Hardware and Software does a much better job than anything else I have ever seen in explaining computers--what they really are, and how they really work.
Have you ever wondered just how your computers really work? I mean, really, really work. Not as in "an electrical signal from memory tells the processor the number to be added," but what the electrical signal is, and how it accomplishes the magic of switching on the circuits that add while switching off the other circuits that would do other things with the number. I have. I have wondered this a lot over the past decades.
Yet somehow over the past several decades my hunger for an explanation has never been properly met. I have listened to people explain how two switches wired in series are an "AND"--only if both switches are closed will the lightbulb light. I have listened to people explain how IP is a packet-based communications protocol and TCP is a connection-based protocol yet the connection-based protocal can ride on top of the packet-based protocol. Somehow these explanations did not satisfy. One seemed like answering "how does a car work?" by telling how in the presence of oxygen carbon-hydrogen bonds are broken and carbon dioxide and water are created. The other seemed like anwering "how does a car work" by telling how if you step on the accelerator the car moves forward.
Charles Petzold is different. He has hit the sweet spot exactly. Enough detail to satisfy anyone. Yet the detail is quickly built up as he ascends to higher and higher levels of explanation. It remains satisfying, but it also hangs together in a big picture.
In fact, my only complaint is that the book isn't long enough. It is mostly a hardware book (unless you want to count Morse Code and the interpretation of flashing light bulbs as "software." By my count there are twenty chapters on hardware, and five on software. In my view only five chapters on software--one on ASCII, one on operating systems, one on floating-point arithmetic, one on high-level languages, and one on GUIs--is about ten too few. (Moreover, at one key place in his explanation (but only one) he waves his hands. He argues that it is possible to use the operation codes stored in memory to control which circuits in the processor are active. But he doesn't show how it is done.)
Charles Petzold's explanatory strategy is to start with the telegraph: with how opening and closing a switch can send an electrical signal down a wire. And he wants to build up, step by step, from that point to end with our modern computers. At the end he hopes that the reader can look back--from the graphical user interface to the high-level language software constructions that generate it, from the high-level language software constructions to the machine-language code that underlies it, from the machine-language code to the electrical signals that load, store, and add bits into the computer's processor and into the computer's memory.
But it doesn't stop there. It goes further down into how to construct an accumulator or a memory bank from logic gates. And then it goes down to how to build logic gates--either out of transistors or telegraph relays. And then deeper down, into how the electrons actually move through a transistor or through a relay and a wire.
And at the end I could look back and say, yes, I understand how this machine works in a way that I didn't understand it before. Before I understood electricity and maybe an AND gate, and I understood high level languages. But the whole vast intermediate realm was fuzzy. Now it is much clearer. I can go from the loop back to the conditional jump back to the way that what is stored in memory is fed into the processor back to the circuits that set the program counter back to the logic gates, and finally back to the doped silicon that makes up the circuit.
So I recommend this book to everyone. It is a true joy to read. And I at least could feel my mind expanding as I read it.

Click Here to see more reviews about: Code: The Hidden Language of Computer Hardware and Software


What do flashlights, the British invasion, black cats, and seesaws have to do with computers? In CODE, they show us the ingenious ways we manipulate language and invent new means of communicating with each other. And through CODE, we see how this ingenuity and our very human compulsion to communicate have driven the technological innovations of the past two centuries.

Using everyday objects and familiar language systems such as Braille and Morse code, author Charles Petzold weaves an illuminating narrative for anyone who's ever wondered about the secret inner life of computers and other smart machines.

It's a cleverly illustrated and eminently comprehensible story—and along the way, you'll discover you've gained a real context for understanding today's world of PCs, digital media, and the Internet. No matter what your level of technical savvy, CODE will charm you—and perhaps even awaken the technophile within.


Buy Now

Click here for more information about Code: The Hidden Language of Computer Hardware and Software

Read More...